SlideShare une entreprise Scribd logo
1  sur  50
Télécharger pour lire hors ligne
Copyright	
  ©	
  2014	
  Splunk	
  Inc.	
  
Julian	
  Harty	
  
SE,	
  Splunk>	
  
Search	
  Op@miza@on	
  
in	
  500	
  easy	
  steps	
  
	
  
Disclaimer	
  
2	
  
During	
  the	
  course	
  of	
  this	
  presenta@on,	
  we	
  may	
  make	
  forward	
  looking	
  statements	
  regarding	
  future	
  events	
  or	
  the	
  
expected	
  performance	
  of	
  the	
  company.	
  We	
  cau@on	
  you	
  that	
  such	
  statements	
  reflect	
  our	
  current	
  expecta@ons	
  and	
  
es@mates	
  based	
  on	
  factors	
  currently	
  known	
  to	
  us	
  and	
  that	
  actual	
  events	
  or	
  results	
  could	
  differ	
  materially.	
  For	
  
important	
  factors	
  that	
  may	
  cause	
  actual	
  results	
  to	
  differ	
  from	
  those	
  contained	
  in	
  our	
  forward-­‐looking	
  statements,	
  
please	
  review	
  our	
  filings	
  with	
  the	
  SEC.	
  The	
  forward-­‐looking	
  statements	
  made	
  in	
  the	
  this	
  presenta@on	
  are	
  being	
  made	
  as	
  
of	
  the	
  @me	
  and	
  date	
  of	
  its	
  live	
  presenta@on.	
  If	
  reviewed	
  aSer	
  its	
  live	
  presenta@on,	
  this	
  presenta@on	
  may	
  not	
  contain	
  
current	
  or	
  accurate	
  informa@on.	
  We	
  do	
  not	
  assume	
  any	
  obliga@on	
  to	
  update	
  any	
  forward	
  looking	
  statements	
  we	
  may	
  
make.	
  In	
  addi@on,	
  any	
  informa@on	
  about	
  our	
  roadmap	
  outlines	
  our	
  general	
  product	
  direc@on	
  and	
  is	
  subject	
  to	
  change	
  
at	
  any	
  @me	
  without	
  no@ce.	
  It	
  is	
  for	
  informa@onal	
  purposes	
  only	
  and	
  shall	
  not,	
  be	
  incorporated	
  into	
  any	
  contract	
  or	
  
other	
  commitment.	
  Splunk	
  undertakes	
  no	
  obliga@on	
  either	
  to	
  develop	
  the	
  features	
  or	
  func@onality	
  described	
  or	
  to	
  
include	
  any	
  such	
  feature	
  or	
  func@onality	
  in	
  a	
  future	
  release.	
  
Am	
  I	
  in	
  the	
  right	
  Session…	
  
	
  and	
  Who	
  is	
  this	
  guy?	
  
3	
  
Goal	
  of	
  Presenta:on:	
  Search	
  Op:miza:on	
  
•  How	
  the	
  hell	
  do	
  I	
  speed	
  this	
  search	
  up?	
  
	
  	
  
Background	
  of	
  your	
  Presenter:	
  Julian	
  Harty	
  
•  Splunker	
  for	
  2+	
  Years	
  -­‐	
  Variety	
  of	
  installa@ons	
  from	
  10GB	
  
to	
  100TB’s+	
  
•  Ex-­‐Oracle/MySQL	
  DBA	
  (Recovering)	
  
•  Contact	
  info	
  julian@splunk.com	
  	
  
Background	
  –	
  Great	
  to	
  Not	
  So	
  Great	
  
Growth	
  without	
  op@miza@on	
  =	
  subop@mal	
  performance	
  	
  
-­‐>	
  our	
  goal:	
  gejng	
  great	
  performance	
  at	
  scale	
  
4	
  
•  More	
  Data	
  
•  More	
  Users	
  
•  New	
  Searches	
  
	
   •  Even	
  More	
  Data	
  
•  Even	
  More	
  Users	
  
•  Even	
  More	
  Searches…	
  
	
  
Op@miza@on	
  
Steps	
  
	
  
Challenge	
  –	
  Why	
  so	
  slow?	
  	
  
The	
  maturity	
  of	
  a	
  Splunk	
  deployment	
  	
  	
  
5	
  
	
  
	
  
Question?	

Is your environment tuned
correctly?	
  
Question?	

Has your deployment 	

been architected
correctly?	

	

Question?	

Are your searches optimized?	

Solution:	

Architecting And
Designing Your Splunk
Deployment	

- Simeon Yep	

	
  
Solution:	

Jiffy Lube Quick Tune Up For	

Your Splunk Environment	

– Sean Delaney	

Solution:	

Welcome to this session!!!
Agenda:	
  Objec@ves	
  of	
  this	
  Session	
  
6	
  
•  The	
  Basics:	
  	
  
•  Common	
  pinalls	
  -­‐	
  Best	
  prac@ces	
  and	
  what	
  not	
  to	
  do	
  
•  Take	
  away:	
  Basic	
  steps	
  to	
  a	
  beoer	
  search	
  
	
  
•  Beyond	
  the	
  Basics:	
  	
  
•  Search	
  Architecture	
  and	
  Workflow	
  
•  Detailed	
  Search	
  review	
  –	
  using	
  Job	
  inspector	
  search	
  examples	
  
•  Take	
  away:	
  Job	
  Inspector	
  Cheat-­‐Sheet	
  
	
  
•  Q&A	
  
Iden@fying	
  
Poorly	
  Performing	
  
Searches	
  
End	
  User	
  Enquiries	
  
8	
  
SOS	
  –	
  Expensive	
  Searches	
  
Search	
  Ac@vity,	
  Usage	
  Paoerns	
  
-­‐>	
  SOS	
  –>	
  Search	
  -­‐>	
  Search	
  Detail	
  Ac@vity	
  -­‐>	
  Expensive	
  Searches	
  
	
  
9	
  
For	
  Splunk	
  6.2	
  Users	
  –	
  _Introspec@on	
  Index	
  
10	
  
Search	
  Tuning	
  –	
  
The	
  Basics	
  
The	
  Basics:	
  Common	
  Search	
  Behavior	
  
12	
  
>	
  be=selec@ve	
  AND	
  be=specific	
  |	
  …	
  
Narrow	
  @me	
  range	
  
>	
  foo	
  bar	
  
>	
  host=web	
  sourcetype=access*	
  
Use	
  Summary	
  Indexing	
  
Use	
  Report	
  Accel	
  or	
  Summary	
  Indexing	
  
Use	
  Fast/Smart	
  Mode	
  where	
  Possible	
  
Bad	
  Behavior	
   Good	
  Behavior	
  
	
  
Performance	
  	
  
Improvement	
  
Comment	
  
index=xyz	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  10-­‐50%	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Index	
  and	
  default	
  fields	
  
source=www	
  
-­‐24h@h 	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  365x	
  30x	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Limit	
  Time	
  Range	
  
>	
  foo	
  bar	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  30%	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Combine	
  Searches	
  
Fast/Smart 	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  20-­‐50% 	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Fast	
  Mode	
  
A	
  AND	
  C	
  AND	
  D	
  AND	
  E	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  5-­‐50%	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Avoid	
  NOTS	
  
Data	
  Models	
  and	
  Report	
  
Accelera@on	
  
Summary	
  Indexing	
  
	
  
All	
  Time	
  Searches	
  
>*	
  
>	
  foo	
  |	
  search	
  bar	
  
Verbose	
  Mode	
  
Use	
  Intelligently	
  
Use	
  Sparingly	
  
	
  
1000%	
  
1000%	
  
Searches	
  over	
  	
  
large	
  datasets	
  
	
  
Searches	
  over	
  long	
  periods	
  
	
  
A	
  NOT	
  B	
  
	
  
The	
  Basics:	
  Common	
  Op@miza@on	
  Mistakes	
  
13	
  
•  Summary	
  indexing	
  is	
  Awesome!	
  
–  Ini@al	
  reac@on	
  -­‐	
  Summarize	
  EVERYTHING!!!	
  
ê  Summarizing	
  too	
  much	
  data	
  negates	
  the	
  point	
  
	
  
•  Report	
  Accelerate	
  =	
  Turbo	
  buoon	
  
–  Ini@al	
  reac@on	
  -­‐	
  Report	
  Accelerate	
  EVERYTHING!!!	
  
ê  Too	
  many	
  searches	
  =	
  skipped	
  search	
  issues	
  
	
   •  Data	
  Models	
  are	
  the	
  answer!	
  
–  Ini@al	
  reac@on	
  –	
  everything	
  can	
  be	
  included!	
  
ê  Convoluted	
  data	
  models	
  can	
  increase	
  workload	
  	
  
	
  
OK,	
  But	
  How	
  can	
  
you	
  enforce	
  these	
  
recommenda@ons?	
  
How	
  do	
  you	
  enforce	
  Best	
  Prac@ces?	
  
15	
  
Architect	
  Perspec:ve:	
  
•  User	
  educa@on	
  –	
  Best	
  Prac@ces	
  for	
  Users	
  	
  
	
  
Admin	
  Perspec:ve:	
  
Restric@ng	
  User	
  Controls:	
  Pulling	
  in	
  the	
  reins	
  
•  Restric@ng	
  Role	
  Capabili@es	
  
•  Limit	
  index	
  
•  Limit	
  search	
  terms	
  
•  Limit	
  search	
  @me	
  range	
  
•  Limi@ng	
  Power	
  user	
  role	
  
•  Restrict	
  Number	
  of	
  RT+	
  Concurrent	
  Searches	
  
	
  
How	
  do	
  you	
  enforce	
  Best	
  Prac@ces?	
  
16	
  
Admin	
  Perspec:ve:	
  
•  Time	
  range	
  defaults	
  (ui-­‐prefs.conf)	
  
•  Time	
  range	
  Web	
  dropdown	
  op@ons	
  (Times.conf)	
  
	
  
OK	
  Now	
  More	
  
advanced	
  
Op@miza@on:	
  Lets	
  
start	
  with	
  -­‐	
  the	
  
skinny	
  on	
  How	
  
Search	
  Works…	
  
How	
  Search	
  Works	
  –	
  Physical	
  Perspec@ve	
  
18	
  
	
  	
  
db_lt_et_4	
  
db_lt_et_2	
  
	
  	
  
db_lt_et_1	
  
db_lt_et_3	
  
.tsidx	
  
Sources.data	
  
SourceTypes.data	
  
Hosts.data	
  
.gz	
  
.gz	
  
.gz	
  
.gz	
  
.gz	
  
.gz	
  
.gz	
  
.gz	
  
db_1290057665_1289504696_1	
  history	
  
_internal	
  
main	
  
How	
  Search	
  Works	
  -­‐	
  Logically	
  
Search	
  Query	
  Structure	
  
Parse,	
  Fetch,	
  Summarize,	
  Display	
  
19	
  
Index=mydata	
  |	
  eval	
  loc=long+lat+alt	
  |	
  stats	
  count	
  
retrieve	
  events	
   filter/transform/map	
  
Splunk	
  Distributed	
  Search	
  
20	
  
4	
  Steps	
  to	
  a	
  Splunk	
  Search:	
  
Parse,	
  Fetch,	
  Summarize,	
  Display	
  
" StreamingCommand:	
  Applies	
  a	
  
transforma@on	
  to	
  search	
  results	
  
as	
  they	
  travel	
  through	
  the	
  
processing	
  pipeline.	
  Eval	
  rex	
  
where…	
  
" Repor:ngCommand:	
  Processes	
  
search	
  results	
  and	
  generates	
  a	
  
repor@ng	
  data	
  structure.	
  
Examples:	
  stats,	
  top,	
  and	
  
@mechart…	
  
Types	
  of	
  Searches	
  
21	
  
•  Dense	
  
–  Low	
  cardinality	
  
–  Example:	
  sourcetype=access	
  method=GET	
  
•  Sparse	
  
–  High	
  cardinality	
  
–  Example:	
  sourcetype=access	
  method=GET	
  ac@on=purchase	
  
•  Super	
  Sparse	
  (or	
  Needle	
  in	
  a	
  Haystack)	
  
–  Very	
  high	
  cardinality	
  
–  Example:	
  sourcetype=cisco:asa	
  ac@on=denied	
  src=10.2.3.11	
  
•  Rare	
  	
  
–  Use	
  Case:	
  user	
  behavior	
  tracking	
  
–  Example:	
  sourcetype=magicsource	
  |	
  rare	
  
	
  
Dense	
  
Super	
  
Sparse	
  
Sparse	
  
Dense	
  Searches	
  (>10%	
  matching	
  results)	
  
(scanCount	
  vs	
  eventCount	
  in	
  Job	
  Inspector)	
  
22	
  
Challenge:	
  
•  CPU	
  and	
  I/O-­‐bound	
  
–  Ini@al	
  spike	
  in	
  CPU	
  due	
  to	
  decompression	
  	
  
	
  of	
  raw	
  events.	
  	
  
–  Retrieval	
  rate:	
  50K	
  events	
  per	
  second	
  per	
  server	
  
Solu:on:	
  
•  Divide	
  and	
  conquer	
  
–  Distribute	
  search	
  to	
  an	
  indexing	
  cluster	
  
–  Parallel	
  compute	
  and	
  merge	
  results	
  
•  Report	
  Accelera@on	
  or	
  use	
  of	
  Summaries	
  –	
  divide	
  and	
  Conquer	
  
–  Report	
  on	
  summarized	
  data	
  vs.	
  raw	
  data	
  
>	
  sourcetype=access_combined	
  method=GET	
  
Sparse	
  Searches	
  
23	
  
Challenge:	
  
•  CPU-­‐bound	
  
–  Dominant	
  cost	
  is	
  uncompressing	
  *.gz	
  raw	
  data	
  files	
  
–  Some@mes	
  need	
  to	
  read	
  far	
  into	
  a	
  file	
  to	
  retrieve	
  a	
  few	
  events	
  
Solu:on:	
  
•  Avoid	
  cherry	
  picking	
  
–  Be	
  selec@ve	
  about	
  exclusions	
  (avoid	
  “NOT foo”	
  or	
  “field!=value”)	
  
–  Leverage	
  indexed	
  fields	
  
•  Filter	
  using	
  whole	
  terms	
  
–  Instead	
  of	
  	
  > sourcetype=access_combined clientip=192.168.11.*!
–  Use	
  	
  > sourcetype=access_combined clientip=TERM(192.168.11.2)!
>	
  sourcetype=access_combined	
  status=404	
  
Super	
  Sparse	
  Searches	
  
24	
  
•  “Needle	
  in	
  Haystack”	
  	
  
•  Very	
  I/O	
  intensive	
  
•  May	
  take	
  up	
  to	
  2	
  Seconds	
  	
  
	
  to	
  parse	
  each	
  bucket	
  
>	
  sourcetype=access_combined	
  status=404	
  10.2.1	
  
Rare	
  Term	
  Searches	
  
25	
  
•  Bloom	
  Filters*	
  
–  Bloom	
  filters	
  stored	
  in	
  each	
  bucket	
  
–  50-­‐buckets	
  processed	
  per	
  second	
  
–  I/Os	
  reduced	
  as	
  buckets	
  are	
  excluded	
  from	
  100-­‐200	
  to	
  just	
  a	
  few	
  
–  50-­‐100x	
  faster	
  than	
  Super	
  Sparse	
  searches	
  on	
  conven@onal	
  storage,	
  
>1000x	
  faster	
  on	
  SSD	
  (Due	
  to	
  random	
  reads)	
  
>	
  sourcetype=access_combined	
  sessionID=1234	
  
*	
  A	
  Bloom	
  filter	
  is	
  a	
  data	
  structure	
  designed	
  to	
  tell	
  
you	
  whether	
  or	
  not	
  an	
  element	
  is	
  present	
  in	
  a	
  set	
  
How	
  can	
  I	
  determine	
  if	
  my	
  search	
  is	
  Dense	
  or	
  Sparse?	
  
Use	
  Job	
  Inspector…	
  
26	
  
Component	
   Descrip:on	
  
	
  
scanCount	
   The	
  number	
  of	
  events	
  that	
  are	
  scanned	
  or	
  read	
  off	
  disk.	
  	
  
eventCount	
   Number	
  of	
  events	
  that	
  are	
  returned	
  to	
  base	
  search	
  
•  For	
  dense	
  searches	
  scanCount	
  ~=	
  eventCount.	
  
•  For	
  sparse	
  searches,	
  scanCount	
  >>	
  eventCount.	
  
>	
  sourcetype=access_combined	
  
status=404	
  81.11.191.113	
  
Job	
  Inspector	
  
Review	
  
Measuring	
  Search	
  
Using	
  the	
  Splunk	
  Search	
  Inspector 	
  	
  
28	
  Copyright*©*2011,*Splunk*Inc.* Listen*to
*
Using*the*Search*Inspector*
3*
Timings*from*distributed*
Remote*timeline*
Timings*from*the*search*
command.*
Timings	
  from	
  
distributed	
  peers	
  
Timings	
  from	
  
the	
  search	
  command	
  
*
Using*the*Search*Inspector*
Timings*from*distributed*p
Remote*timeline*
Timings*from*the*search*
command.*
Key	
  Metrics:	
  
•  Comple@on	
  Time	
  
•  Number	
  of	
  Events	
  
Scanned	
  
•  Search	
  SID	
  
	
  
Job	
  Inspector	
  
Job	
  Inspector	
  Walkthrough	
  –	
  Search	
  Command	
  
29	
  
Rawdata:	
  	
  
Improving	
  I/O	
  and	
  CPU	
  load	
  
	
  
KV:	
  	
  
Are	
  field	
  extrac@ons	
  efficient	
  
	
  
Lookups:	
  	
  
Used	
  appropriately	
  
Autolookups	
  causing	
  issues	
  
	
  
Typer:	
  
Inefficient	
  Evenoypes	
  
	
  
Alias:	
  
Cascading	
  alias	
  
	
  
Reading	
  Job	
  Inspector	
  -­‐	
  	
  Search.Index	
  
30	
  
Search.index	
  =	
  
Time	
  to	
  parse	
  and	
  read	
  the	
  tsidx	
  files	
  to	
  
determine	
  where	
  to	
  read	
  in	
  rawdata	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
•  Improving	
  I/O	
  
Reading	
  Job	
  Inspector	
  -­‐	
  	
  search.rawdata	
  
31	
  
Search.rawdata	
  =	
  	
  
Time	
  to	
  read	
  actual	
  events	
  from	
  
rawdata	
  files	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
•  Filtering	
  as	
  much	
  as	
  possible	
  
•  Add	
  Peers	
  
•  Alloca@ng	
  more	
  CPU,	
  improving	
  I/O	
  
	
  
	
  
Reading	
  Job	
  Inspector	
  -­‐	
  	
  search.kv	
  
32	
  
Search.KV=	
  
Time	
  taken	
  to	
  apply	
  field	
  extrac@ons	
  
to	
  events	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
Regex	
  op@miza@ons	
  
•  Avoid	
  greedy	
  operators	
  .*?	
  
•  Use	
  of	
  Anchors	
  ^	
  $	
  
•  Non	
  Capturing	
  groups	
  for	
  repeats	
  
	
  
	
  
	
  
	
  
Reading	
  Job	
  Inspector	
  -­‐	
  	
  search.lookups	
  
33	
  
Search.lookups	
  =	
  	
  
Time	
  to	
  apply	
  lookups	
  to	
  search	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
•  Use	
  Appropriately	
  (at	
  end	
  of	
  search)	
  
•  Autolookups	
  maybe	
  causing	
  issues	
  
	
  
	
  
Reading	
  Job	
  Inspector	
  -­‐	
  	
  search.typer	
  and	
  tags	
  
34	
  
Search.typer	
  =	
  	
  
Time	
  to	
  apply	
  event	
  types	
  to	
  the	
  
search	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
•  Use	
  Appropriately	
  
•  Removed	
  unused	
  tags	
  and	
  
evenoypes	
  
	
  
	
  
Job	
  Inspector	
  Walkthrough	
  –	
  Distributed	
  Search	
  
35	
  
Dispatch.createProviderQueue	
  
Time	
  to	
  establish	
  connec@on	
  with	
  peers	
  
	
  
Dispatch.fetch	
  
Time	
  spent	
  wai@ng	
  to	
  fetch	
  events	
  
	
  
Dispatch.evaluate	
  
The	
  @me	
  spent	
  parsing	
  the	
  search	
  and	
  
sejng	
  up	
  the	
  data	
  structures	
  needed	
  to	
  run	
  
the	
  search.	
  	
  
	
  
How	
  do	
  you	
  op:mize	
  this?	
  
•  Improving	
  Peer	
  conduc@vity	
  
•  Improve	
  Bundle	
  replica@on	
  
•  Faster	
  storage	
  
	
  
Job	
  Inspector	
  Walkthrough	
  –	
  Distributed	
  Search	
  
36	
  
Dispatch.stream.remote	
  
Time	
  to	
  retrieve	
  events	
  from	
  each	
  remove	
  
peer	
  
	
  
Issue:	
  
1.  Unequal	
  Indexer	
  performance	
  
•  Either	
  Hardware	
  mismatch	
  
•  Uneven	
  distribu@on	
  of	
  indexes	
  
2.  AutoLB	
  issues	
  
	
  
Job	
  Inspector	
  Conclusions:	
  
Search	
  Command	
  Summary	
  
37	
  
Component	
   Descrip:on	
  
	
  
index	
   look	
  in	
  tsidx	
  files	
  for	
  where	
  to	
  read	
  in	
  rawdata	
  
rawdata	
   read	
  actual	
  events	
  from	
  rawdata	
  files	
  
kv	
   apply	
  fields	
  to	
  the	
  events	
  
filter	
   filter	
  out	
  events	
  that	
  don’t	
  match	
  (e.g.,	
  fields,	
  phrases)	
  
alias	
   rename	
  fields	
  according	
  to	
  props.conf	
  
lookups	
   create	
  new	
  fields	
  based	
  on	
  exis@ng	
  field	
  values	
  
typer	
   assign	
  evenoypes	
  to	
  events	
  
tags	
   assign	
  tags	
  to	
  events	
  
Job	
  Inspector	
  Conclusion:	
  
Distributed	
  Search	
  Summary	
  
38	
  
Metric	
   Descrip:on	
  
	
  
Area	
  to	
  review	
  
createProvider
Queue	
  	
  
The	
  @me	
  to	
  connect	
  to	
  all	
  search	
  
peers.	
  	
   Peer	
  conduc@vity	
  
fetch	
  	
   The	
  @me	
  spent	
  wai@ng	
  for	
  or	
  
fetching	
  events	
  from	
  search	
  peers.	
  	
   Faster	
  Storage	
  
stream.remote	
  	
   The	
  @me	
  spent	
  execu@ng	
  the	
  
remote	
  search	
  in	
  a	
  distributed	
  
search	
  environment,	
  aggregated	
  
across	
  all	
  peers.	
  
evaluate	
   The	
  @me	
  spent	
  parsing	
  the	
  search	
  
and	
  sejng	
  up	
  the	
  data	
  structures	
  
needed	
  to	
  run	
  the	
  search.	
  	
  
Possible	
  bundle	
  issues	
  
Addi@onal	
  Key	
  Logfiles	
  related	
  to	
  search	
  
39	
  
Search	
  log:	
  
"   Stored	
  in	
  $SPLUNK_HOME/var/run/splunk/dispatch/	
  
"   Detailed	
  analysis	
  of	
  every	
  step	
  taken	
  by	
  the	
  search	
  	
  
"   Search	
  ‘stack	
  trace’	
  
What	
  is	
  the	
  best	
  
search	
  command	
  to	
  
use?	
  
Stats	
  vs	
  Transac@on	
  
41	
  
Search	
  Goal:	
  compute	
  sta@s@cs	
  on	
  the	
  dura@on	
  of	
  web	
  session	
  
(JSESSIONID=unique	
  iden@fier):	
  
	
  
	
  
>	
  |	
  stats	
  range(_@me)	
  as	
  dura@on	
  by	
  JSESSIONID	
  
|	
  chart	
  count	
  by	
  dura@on	
  span=log2	
  	
  
>	
  sourcetype=access_combined	
  |	
  transac@on	
  
JSESSIONID	
  |	
  chart	
  count	
  by	
  dura@on	
  
span=log2	
  
Not	
  so	
  Great:	
  
Much	
  BeUer:	
  
Dedup	
  vs	
  Latest	
  
42	
  
Search	
  Goal:	
  Return	
  latest	
  cart	
  ac@on	
  for	
  each	
  web	
  site	
  customer	
  
	
  
	
  
>	
  sourcetype=access*	
  |	
  stats	
  latest(clien@p)	
  by	
  
ac@on	
  
>	
  sourcetype=access*|	
  dedup	
  clien@p	
  sortby	
  -­‐
_@me	
  |table	
  clien@p,	
  ac@on	
  
Not	
  so	
  Great:	
  
Much	
  BeUer:	
  
Note:	
  dedup	
  can't	
  be	
  
used	
  with	
  report	
  
accelera@on	
  
Joins	
  and	
  Subsearches	
  
43	
  
Search	
  Goal:	
  Return	
  latest	
  JESSIONID	
  across	
  two	
  sourcetypes	
  
	
  
	
  
>	
  (sourcetype="access_combined")	
  OR	
  
(sourcetype="applogs")	
  |	
  stats	
  latest(*)	
  as	
  *	
  by	
  
JSESSIONID	
  
>	
  sourcetype="access_combined"	
  |	
  join	
  type="inner"	
  
JSESSIONID	
  [search	
  sourcetype="applogs"	
  |	
  dedup	
  
JSESSIONID	
  |	
  table	
  JSESSIONID,	
  clien@p,	
  othervalue]	
  
Not	
  so	
  Great:	
  
Much	
  BeUer:	
  
Wrap-­‐up	
  
In	
  Closing…	
  
45	
  
1.  Implemen@ng	
  Architecture	
  best	
  prac@ces	
  for	
  performance	
  at	
  scale	
  
•  With	
  search	
  behavior	
  in	
  mind…	
  
2.  Implemen@ng	
  User	
  Onboarding	
  Best	
  Prac@ces	
  
•  Basic	
  op@miza@on	
  steps	
  
3.  Periodic	
  Performance	
  Review	
  	
  
•  Applying	
  accelera@on	
  technologies	
  where	
  appropriate	
  
•  Removing	
  unused	
  searches	
  
	
  
4.  Review	
  addi@onal	
  sides	
  for	
  
•  Search	
  flow	
  detail	
  
•  Op@mizing	
  Splunk	
  Web	
  
	
  
And	
  By	
  the	
  way…	
  
46	
  
Other	
  Sessions	
  to	
  look	
  out	
  for:	
  
•  How	
  to	
  Actually	
  Use	
  Splunk	
  Data	
  Models	
  -­‐	
  David	
  Clawson	
  
	
   	
  Presented	
  on	
  Tuesday	
  –	
  Check	
  out	
  the	
  session	
  notes	
  
	
  
•  Jiffy	
  Lube	
  Tune-­‐Up	
  for	
  your	
  Splunk	
  Deployment	
  -­‐	
  Sean	
  Delaney	
  
	
  Presented	
  on	
  Tuesday	
  –	
  Check	
  out	
  the	
  session	
  notes	
  
	
  
•  ArchitecCng	
  and	
  Sizing	
  your	
  Splunk	
  Environment	
  -­‐	
  Simeon	
  Yep	
  
	
   	
  2:15-­‐3:15	
  Today	
  
	
  
•  Splunk	
  Search	
  AcceleraCon	
  Technologies	
  –	
  Gerald	
  Kanapathy 	
  
	
  10:30-­‐11:30	
  Tomorrow	
  
	
  
My	
  Contact	
  informa:on:	
  
julian@splunk.com	
  @julian_Harty	
  
	
  
THANK	
  YOU	
  
Take	
  Away:	
  Basic	
  Steps	
  to	
  a	
  beoer	
  search	
  
48	
  
•  Avoid	
  use	
  of	
  *	
  where	
  ever	
  possible.	
  
•  Avoid	
  the	
  use	
  of	
  All	
  Time.	
  
•  Avoid	
  subsearches	
  searches.	
  
•  Incorporate	
  the	
  use	
  default	
  fields	
  (source,	
  sourcetype,	
  host)	
  as	
  
well	
  as	
  specific	
  indexes	
  to	
  every	
  search	
  (where	
  possible).	
  
•  Use	
  Fast	
  or	
  Smart	
  mode	
  where	
  possible	
  avoid	
  ‘Verbose’	
  mode.	
  
•  Use	
  Report	
  Accelera@on	
  Sparingly	
  (and	
  Strategically)	
  on	
  reports	
  
on	
  large	
  datasets.	
  
•  Use	
  Summary	
  Indexing	
  when	
  building	
  reports	
  over	
  @me	
  spans	
  
beyond	
  target	
  index	
  reten@on.	
  
•  Use	
  Job	
  Inspector	
  and	
  Search	
  inspector	
  to	
  get	
  more	
  info	
  (hold	
  on	
  
for	
  more	
  details!!!)	
  
A	
  few	
  notes	
  on	
  how	
  to	
  op@mize	
  Splunk	
  Web	
  	
  
49	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  |	
  fields	
  
Change	
  
Segmenta@on	
  
Use	
  Fast	
  Mode	
  Collapse	
  
Timeline	
  
Search	
  flow	
  –	
  Local	
  and	
  Distributed	
  
50	
  
Key	
  Files:	
  
•  Info	
  
•  Status	
  
•  Results	
  
•  Preview	
  
Key	
  Flow:	
  
1.  Find	
  which	
  Bundle	
  to	
  use	
  
2.  Find	
  Buckets	
  to	
  use	
  (@me	
  range)	
  
3.  LISPY	
  TSIDX	
  search	
  	
  
4.  Process	
  +	
  Summarizes	
  Events	
  
hop://wiki.splunk.com/Community:HowDistSearchWorks	
  
	
  

Contenu connexe

Tendances

Tendances (20)

Splunk conf2014 - Lesser Known Commands in Splunk Search Processing Language ...
Splunk conf2014 - Lesser Known Commands in Splunk Search Processing Language ...Splunk conf2014 - Lesser Known Commands in Splunk Search Processing Language ...
Splunk conf2014 - Lesser Known Commands in Splunk Search Processing Language ...
 
Strata sf - Amundsen presentation
Strata sf - Amundsen presentationStrata sf - Amundsen presentation
Strata sf - Amundsen presentation
 
Deep Dive into the New Features of Apache Spark 3.0
Deep Dive into the New Features of Apache Spark 3.0Deep Dive into the New Features of Apache Spark 3.0
Deep Dive into the New Features of Apache Spark 3.0
 
Best Practices for Splunk Deployments
Best Practices for Splunk DeploymentsBest Practices for Splunk Deployments
Best Practices for Splunk Deployments
 
Optimising Geospatial Queries with Dynamic File Pruning
Optimising Geospatial Queries with Dynamic File PruningOptimising Geospatial Queries with Dynamic File Pruning
Optimising Geospatial Queries with Dynamic File Pruning
 
The Power of SPL
The Power of SPLThe Power of SPL
The Power of SPL
 
Speed Up Uber's Presto with Alluxio
Speed Up Uber's Presto with AlluxioSpeed Up Uber's Presto with Alluxio
Speed Up Uber's Presto with Alluxio
 
What’s New in the Upcoming Apache Spark 3.0
What’s New in the Upcoming Apache Spark 3.0What’s New in the Upcoming Apache Spark 3.0
What’s New in the Upcoming Apache Spark 3.0
 
Building Robust ETL Pipelines with Apache Spark
Building Robust ETL Pipelines with Apache SparkBuilding Robust ETL Pipelines with Apache Spark
Building Robust ETL Pipelines with Apache Spark
 
Airflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conferenceAirflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conference
 
Data catalog
Data catalogData catalog
Data catalog
 
Choosing an HDFS data storage format- Avro vs. Parquet and more - StampedeCon...
Choosing an HDFS data storage format- Avro vs. Parquet and more - StampedeCon...Choosing an HDFS data storage format- Avro vs. Parquet and more - StampedeCon...
Choosing an HDFS data storage format- Avro vs. Parquet and more - StampedeCon...
 
Top 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark ApplicationsTop 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark Applications
 
Apache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the CoversApache Iceberg: An Architectural Look Under the Covers
Apache Iceberg: An Architectural Look Under the Covers
 
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in SparkSpark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
 
What is New with Apache Spark Performance Monitoring in Spark 3.0
What is New with Apache Spark Performance Monitoring in Spark 3.0What is New with Apache Spark Performance Monitoring in Spark 3.0
What is New with Apache Spark Performance Monitoring in Spark 3.0
 
Improving Python and Spark Performance and Interoperability: Spark Summit Eas...
Improving Python and Spark Performance and Interoperability: Spark Summit Eas...Improving Python and Spark Performance and Interoperability: Spark Summit Eas...
Improving Python and Spark Performance and Interoperability: Spark Summit Eas...
 
The Past, Present and Future of Big Data @LinkedIn
The Past, Present and Future of Big Data @LinkedInThe Past, Present and Future of Big Data @LinkedIn
The Past, Present and Future of Big Data @LinkedIn
 
Dynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache SparkDynamic Partition Pruning in Apache Spark
Dynamic Partition Pruning in Apache Spark
 
Disrupting Data Discovery
Disrupting Data DiscoveryDisrupting Data Discovery
Disrupting Data Discovery
 

En vedette

SplunkLive! Zürich 2016 - Use Case Swisscom
SplunkLive! Zürich 2016 - Use Case SwisscomSplunkLive! Zürich 2016 - Use Case Swisscom
SplunkLive! Zürich 2016 - Use Case Swisscom
Splunk
 
SplunkLive 2011 Beginners Session
SplunkLive 2011 Beginners SessionSplunkLive 2011 Beginners Session
SplunkLive 2011 Beginners Session
Splunk
 
SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2
Splunk
 

En vedette (20)

Conf2014_SplunkSecurityNinjutsu
Conf2014_SplunkSecurityNinjutsuConf2014_SplunkSecurityNinjutsu
Conf2014_SplunkSecurityNinjutsu
 
SplunkSummit 2015 - A Quick Guide to Search Optimization
SplunkSummit 2015 - A Quick Guide to Search OptimizationSplunkSummit 2015 - A Quick Guide to Search Optimization
SplunkSummit 2015 - A Quick Guide to Search Optimization
 
Splunk conf2014 - Curating User Experience
Splunk conf2014 - Curating User ExperienceSplunk conf2014 - Curating User Experience
Splunk conf2014 - Curating User Experience
 
Exploring Splunk
Exploring SplunkExploring Splunk
Exploring Splunk
 
Cisco UCS and Splunk Workshop
Cisco UCS and Splunk WorkshopCisco UCS and Splunk Workshop
Cisco UCS and Splunk Workshop
 
SplunkLive! Zürich 2016 - Use Case Swisscom
SplunkLive! Zürich 2016 - Use Case SwisscomSplunkLive! Zürich 2016 - Use Case Swisscom
SplunkLive! Zürich 2016 - Use Case Swisscom
 
Data Onboarding
Data Onboarding Data Onboarding
Data Onboarding
 
Taking Splunk to the Next Level – Architecture
Taking Splunk to the Next Level – ArchitectureTaking Splunk to the Next Level – Architecture
Taking Splunk to the Next Level – Architecture
 
SplunkLive 2011 Beginners Session
SplunkLive 2011 Beginners SessionSplunkLive 2011 Beginners Session
SplunkLive 2011 Beginners Session
 
Splunk conf2014 - Operationalizing Advanced Threat Defense
Splunk conf2014 - Operationalizing Advanced Threat DefenseSplunk conf2014 - Operationalizing Advanced Threat Defense
Splunk conf2014 - Operationalizing Advanced Threat Defense
 
Design, Build and Map IT and Business Services in Splunk
Design, Build and Map IT and Business Services in SplunkDesign, Build and Map IT and Business Services in Splunk
Design, Build and Map IT and Business Services in Splunk
 
IT Service Intelligence Hands On
IT Service Intelligence Hands OnIT Service Intelligence Hands On
IT Service Intelligence Hands On
 
Splunk for DevOps - Faster Insights - Better Code
Splunk for DevOps - Faster Insights - Better CodeSplunk for DevOps - Faster Insights - Better Code
Splunk for DevOps - Faster Insights - Better Code
 
Using Splunk for Information Security
Using Splunk for Information SecurityUsing Splunk for Information Security
Using Splunk for Information Security
 
SplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use CaseSplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use Case
 
SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2
 
Getting Started With Splunk It Service Intelligence
Getting Started With Splunk It Service IntelligenceGetting Started With Splunk It Service Intelligence
Getting Started With Splunk It Service Intelligence
 
CHIME Lead Forum - Seattle 2015
CHIME Lead Forum - Seattle 2015CHIME Lead Forum - Seattle 2015
CHIME Lead Forum - Seattle 2015
 
SplunkLive Sydney Enterprise Security & User Behaviour Analytics
SplunkLive Sydney Enterprise Security & User Behaviour AnalyticsSplunkLive Sydney Enterprise Security & User Behaviour Analytics
SplunkLive Sydney Enterprise Security & User Behaviour Analytics
 
SplunkSummit 2015 - Security Ninjitsu
SplunkSummit 2015 - Security NinjitsuSplunkSummit 2015 - Security Ninjitsu
SplunkSummit 2015 - Security Ninjitsu
 

Similaire à Conf2014_SplunkSearchOptimization

SplunkLive! Hunk Technical Deep Dive
SplunkLive! Hunk Technical Deep DiveSplunkLive! Hunk Technical Deep Dive
SplunkLive! Hunk Technical Deep Dive
Splunk
 
SplunkLive! Advanced Session
SplunkLive! Advanced SessionSplunkLive! Advanced Session
SplunkLive! Advanced Session
Splunk
 
Managing and Troubleshooting SharePoint 2013 Search
Managing and Troubleshooting SharePoint 2013 SearchManaging and Troubleshooting SharePoint 2013 Search
Managing and Troubleshooting SharePoint 2013 Search
Agnes Molnar
 

Similaire à Conf2014_SplunkSearchOptimization (20)

Avoid Growing Pains: Scale Your App for the Enterprise (October 14, 2014)
Avoid Growing Pains: Scale Your App for the Enterprise (October 14, 2014)Avoid Growing Pains: Scale Your App for the Enterprise (October 14, 2014)
Avoid Growing Pains: Scale Your App for the Enterprise (October 14, 2014)
 
SPUnite17 IT Pros Guide to Managing SharePoint Search
SPUnite17 IT Pros Guide to Managing SharePoint SearchSPUnite17 IT Pros Guide to Managing SharePoint Search
SPUnite17 IT Pros Guide to Managing SharePoint Search
 
Hypothesis-Driven Development & How to Fail-Fast Hacking Growth
Hypothesis-Driven Development & How to Fail-Fast Hacking GrowthHypothesis-Driven Development & How to Fail-Fast Hacking Growth
Hypothesis-Driven Development & How to Fail-Fast Hacking Growth
 
Power of Splunk Search Processing Language (SPL) ...
Power of Splunk Search Processing Language (SPL)                             ...Power of Splunk Search Processing Language (SPL)                             ...
Power of Splunk Search Processing Language (SPL) ...
 
Splunk Webinar: Mit Splunk SPL Maschinendaten durchsuchen, transformieren und...
Splunk Webinar: Mit Splunk SPL Maschinendaten durchsuchen, transformieren und...Splunk Webinar: Mit Splunk SPL Maschinendaten durchsuchen, transformieren und...
Splunk Webinar: Mit Splunk SPL Maschinendaten durchsuchen, transformieren und...
 
Process Wind Tunnel in Insurance
Process Wind Tunnel in InsuranceProcess Wind Tunnel in Insurance
Process Wind Tunnel in Insurance
 
Large Data Management Strategies
Large Data Management StrategiesLarge Data Management Strategies
Large Data Management Strategies
 
Performance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and ApexPerformance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and Apex
 
Replicating One Billion Records with Minimal API Usage
Replicating One Billion Records with Minimal API UsageReplicating One Billion Records with Minimal API Usage
Replicating One Billion Records with Minimal API Usage
 
Splunk for Machine Learning and Analytics
Splunk for Machine Learning and AnalyticsSplunk for Machine Learning and Analytics
Splunk for Machine Learning and Analytics
 
Just the Job: Employing Solr for Recruitment Search -Charlie Hull
Just the Job: Employing Solr for Recruitment Search -Charlie Hull Just the Job: Employing Solr for Recruitment Search -Charlie Hull
Just the Job: Employing Solr for Recruitment Search -Charlie Hull
 
SplunkLive! Hunk Technical Deep Dive
SplunkLive! Hunk Technical Deep DiveSplunkLive! Hunk Technical Deep Dive
SplunkLive! Hunk Technical Deep Dive
 
Splunk live! ninjas_break-out
Splunk live! ninjas_break-outSplunk live! ninjas_break-out
Splunk live! ninjas_break-out
 
Fast Data Overview for Data Science Maryland Meetup
Fast Data Overview for Data Science Maryland MeetupFast Data Overview for Data Science Maryland Meetup
Fast Data Overview for Data Science Maryland Meetup
 
Power of SPL Breakout Session
Power of SPL Breakout SessionPower of SPL Breakout Session
Power of SPL Breakout Session
 
SplunkLive! Advanced Session
SplunkLive! Advanced SessionSplunkLive! Advanced Session
SplunkLive! Advanced Session
 
Managing and Troubleshooting SharePoint 2013 Search
Managing and Troubleshooting SharePoint 2013 SearchManaging and Troubleshooting SharePoint 2013 Search
Managing and Troubleshooting SharePoint 2013 Search
 
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
 
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
Webcast slides for "Low Risk and High Reward in App Decomm with InfoArchive a...
 
Power of SPL Breakout Session
Power of SPL Breakout SessionPower of SPL Breakout Session
Power of SPL Breakout Session
 

Plus de Splunk

Plus de Splunk (20)

.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
 
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
 
.conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica).conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica)
 
.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank International.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank International
 
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett .conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
 
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär).conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
 
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu....conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
 
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever....conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
 
.conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex).conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex)
 
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
 
Splunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11ySplunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11y
 
Splunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go KölnSplunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go Köln
 
Splunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go KölnSplunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go Köln
 
Data foundations building success, at city scale – Imperial College London
 Data foundations building success, at city scale – Imperial College London Data foundations building success, at city scale – Imperial College London
Data foundations building success, at city scale – Imperial College London
 
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
 
SOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security WebinarSOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security Webinar
 
.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session
 
.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - Keynote.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - Keynote
 
.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform Session.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform Session
 
.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security Session.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security Session
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Dernier (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Conf2014_SplunkSearchOptimization

  • 1. Copyright  ©  2014  Splunk  Inc.   Julian  Harty   SE,  Splunk>   Search  Op@miza@on   in  500  easy  steps    
  • 2. Disclaimer   2   During  the  course  of  this  presenta@on,  we  may  make  forward  looking  statements  regarding  future  events  or  the   expected  performance  of  the  company.  We  cau@on  you  that  such  statements  reflect  our  current  expecta@ons  and   es@mates  based  on  factors  currently  known  to  us  and  that  actual  events  or  results  could  differ  materially.  For   important  factors  that  may  cause  actual  results  to  differ  from  those  contained  in  our  forward-­‐looking  statements,   please  review  our  filings  with  the  SEC.  The  forward-­‐looking  statements  made  in  the  this  presenta@on  are  being  made  as   of  the  @me  and  date  of  its  live  presenta@on.  If  reviewed  aSer  its  live  presenta@on,  this  presenta@on  may  not  contain   current  or  accurate  informa@on.  We  do  not  assume  any  obliga@on  to  update  any  forward  looking  statements  we  may   make.  In  addi@on,  any  informa@on  about  our  roadmap  outlines  our  general  product  direc@on  and  is  subject  to  change   at  any  @me  without  no@ce.  It  is  for  informa@onal  purposes  only  and  shall  not,  be  incorporated  into  any  contract  or   other  commitment.  Splunk  undertakes  no  obliga@on  either  to  develop  the  features  or  func@onality  described  or  to   include  any  such  feature  or  func@onality  in  a  future  release.  
  • 3. Am  I  in  the  right  Session…    and  Who  is  this  guy?   3   Goal  of  Presenta:on:  Search  Op:miza:on   •  How  the  hell  do  I  speed  this  search  up?       Background  of  your  Presenter:  Julian  Harty   •  Splunker  for  2+  Years  -­‐  Variety  of  installa@ons  from  10GB   to  100TB’s+   •  Ex-­‐Oracle/MySQL  DBA  (Recovering)   •  Contact  info  julian@splunk.com    
  • 4. Background  –  Great  to  Not  So  Great   Growth  without  op@miza@on  =  subop@mal  performance     -­‐>  our  goal:  gejng  great  performance  at  scale   4   •  More  Data   •  More  Users   •  New  Searches     •  Even  More  Data   •  Even  More  Users   •  Even  More  Searches…     Op@miza@on   Steps    
  • 5. Challenge  –  Why  so  slow?     The  maturity  of  a  Splunk  deployment       5       Question? Is your environment tuned correctly?   Question? Has your deployment been architected correctly? Question? Are your searches optimized? Solution: Architecting And Designing Your Splunk Deployment - Simeon Yep   Solution: Jiffy Lube Quick Tune Up For Your Splunk Environment – Sean Delaney Solution: Welcome to this session!!!
  • 6. Agenda:  Objec@ves  of  this  Session   6   •  The  Basics:     •  Common  pinalls  -­‐  Best  prac@ces  and  what  not  to  do   •  Take  away:  Basic  steps  to  a  beoer  search     •  Beyond  the  Basics:     •  Search  Architecture  and  Workflow   •  Detailed  Search  review  –  using  Job  inspector  search  examples   •  Take  away:  Job  Inspector  Cheat-­‐Sheet     •  Q&A  
  • 9. SOS  –  Expensive  Searches   Search  Ac@vity,  Usage  Paoerns   -­‐>  SOS  –>  Search  -­‐>  Search  Detail  Ac@vity  -­‐>  Expensive  Searches     9  
  • 10. For  Splunk  6.2  Users  –  _Introspec@on  Index   10  
  • 11. Search  Tuning  –   The  Basics  
  • 12. The  Basics:  Common  Search  Behavior   12   >  be=selec@ve  AND  be=specific  |  …   Narrow  @me  range   >  foo  bar   >  host=web  sourcetype=access*   Use  Summary  Indexing   Use  Report  Accel  or  Summary  Indexing   Use  Fast/Smart  Mode  where  Possible   Bad  Behavior   Good  Behavior     Performance     Improvement   Comment   index=xyz                                  10-­‐50%                                      Index  and  default  fields   source=www   -­‐24h@h                                  365x  30x                                  Limit  Time  Range   >  foo  bar                                  30%                                                  Combine  Searches   Fast/Smart                                20-­‐50%                          Fast  Mode   A  AND  C  AND  D  AND  E                    5-­‐50%                                            Avoid  NOTS   Data  Models  and  Report   Accelera@on   Summary  Indexing     All  Time  Searches   >*   >  foo  |  search  bar   Verbose  Mode   Use  Intelligently   Use  Sparingly     1000%   1000%   Searches  over     large  datasets     Searches  over  long  periods     A  NOT  B    
  • 13. The  Basics:  Common  Op@miza@on  Mistakes   13   •  Summary  indexing  is  Awesome!   –  Ini@al  reac@on  -­‐  Summarize  EVERYTHING!!!   ê  Summarizing  too  much  data  negates  the  point     •  Report  Accelerate  =  Turbo  buoon   –  Ini@al  reac@on  -­‐  Report  Accelerate  EVERYTHING!!!   ê  Too  many  searches  =  skipped  search  issues     •  Data  Models  are  the  answer!   –  Ini@al  reac@on  –  everything  can  be  included!   ê  Convoluted  data  models  can  increase  workload      
  • 14. OK,  But  How  can   you  enforce  these   recommenda@ons?  
  • 15. How  do  you  enforce  Best  Prac@ces?   15   Architect  Perspec:ve:   •  User  educa@on  –  Best  Prac@ces  for  Users       Admin  Perspec:ve:   Restric@ng  User  Controls:  Pulling  in  the  reins   •  Restric@ng  Role  Capabili@es   •  Limit  index   •  Limit  search  terms   •  Limit  search  @me  range   •  Limi@ng  Power  user  role   •  Restrict  Number  of  RT+  Concurrent  Searches    
  • 16. How  do  you  enforce  Best  Prac@ces?   16   Admin  Perspec:ve:   •  Time  range  defaults  (ui-­‐prefs.conf)   •  Time  range  Web  dropdown  op@ons  (Times.conf)    
  • 17. OK  Now  More   advanced   Op@miza@on:  Lets   start  with  -­‐  the   skinny  on  How   Search  Works…  
  • 18. How  Search  Works  –  Physical  Perspec@ve   18       db_lt_et_4   db_lt_et_2       db_lt_et_1   db_lt_et_3   .tsidx   Sources.data   SourceTypes.data   Hosts.data   .gz   .gz   .gz   .gz   .gz   .gz   .gz   .gz   db_1290057665_1289504696_1  history   _internal   main  
  • 19. How  Search  Works  -­‐  Logically   Search  Query  Structure   Parse,  Fetch,  Summarize,  Display   19   Index=mydata  |  eval  loc=long+lat+alt  |  stats  count   retrieve  events   filter/transform/map  
  • 20. Splunk  Distributed  Search   20   4  Steps  to  a  Splunk  Search:   Parse,  Fetch,  Summarize,  Display   " StreamingCommand:  Applies  a   transforma@on  to  search  results   as  they  travel  through  the   processing  pipeline.  Eval  rex   where…   " Repor:ngCommand:  Processes   search  results  and  generates  a   repor@ng  data  structure.   Examples:  stats,  top,  and   @mechart…  
  • 21. Types  of  Searches   21   •  Dense   –  Low  cardinality   –  Example:  sourcetype=access  method=GET   •  Sparse   –  High  cardinality   –  Example:  sourcetype=access  method=GET  ac@on=purchase   •  Super  Sparse  (or  Needle  in  a  Haystack)   –  Very  high  cardinality   –  Example:  sourcetype=cisco:asa  ac@on=denied  src=10.2.3.11   •  Rare     –  Use  Case:  user  behavior  tracking   –  Example:  sourcetype=magicsource  |  rare     Dense   Super   Sparse   Sparse  
  • 22. Dense  Searches  (>10%  matching  results)   (scanCount  vs  eventCount  in  Job  Inspector)   22   Challenge:   •  CPU  and  I/O-­‐bound   –  Ini@al  spike  in  CPU  due  to  decompression      of  raw  events.     –  Retrieval  rate:  50K  events  per  second  per  server   Solu:on:   •  Divide  and  conquer   –  Distribute  search  to  an  indexing  cluster   –  Parallel  compute  and  merge  results   •  Report  Accelera@on  or  use  of  Summaries  –  divide  and  Conquer   –  Report  on  summarized  data  vs.  raw  data   >  sourcetype=access_combined  method=GET  
  • 23. Sparse  Searches   23   Challenge:   •  CPU-­‐bound   –  Dominant  cost  is  uncompressing  *.gz  raw  data  files   –  Some@mes  need  to  read  far  into  a  file  to  retrieve  a  few  events   Solu:on:   •  Avoid  cherry  picking   –  Be  selec@ve  about  exclusions  (avoid  “NOT foo”  or  “field!=value”)   –  Leverage  indexed  fields   •  Filter  using  whole  terms   –  Instead  of    > sourcetype=access_combined clientip=192.168.11.*! –  Use    > sourcetype=access_combined clientip=TERM(192.168.11.2)! >  sourcetype=access_combined  status=404  
  • 24. Super  Sparse  Searches   24   •  “Needle  in  Haystack”     •  Very  I/O  intensive   •  May  take  up  to  2  Seconds      to  parse  each  bucket   >  sourcetype=access_combined  status=404  10.2.1  
  • 25. Rare  Term  Searches   25   •  Bloom  Filters*   –  Bloom  filters  stored  in  each  bucket   –  50-­‐buckets  processed  per  second   –  I/Os  reduced  as  buckets  are  excluded  from  100-­‐200  to  just  a  few   –  50-­‐100x  faster  than  Super  Sparse  searches  on  conven@onal  storage,   >1000x  faster  on  SSD  (Due  to  random  reads)   >  sourcetype=access_combined  sessionID=1234   *  A  Bloom  filter  is  a  data  structure  designed  to  tell   you  whether  or  not  an  element  is  present  in  a  set  
  • 26. How  can  I  determine  if  my  search  is  Dense  or  Sparse?   Use  Job  Inspector…   26   Component   Descrip:on     scanCount   The  number  of  events  that  are  scanned  or  read  off  disk.     eventCount   Number  of  events  that  are  returned  to  base  search   •  For  dense  searches  scanCount  ~=  eventCount.   •  For  sparse  searches,  scanCount  >>  eventCount.   >  sourcetype=access_combined   status=404  81.11.191.113  
  • 28. Measuring  Search   Using  the  Splunk  Search  Inspector     28  Copyright*©*2011,*Splunk*Inc.* Listen*to * Using*the*Search*Inspector* 3* Timings*from*distributed* Remote*timeline* Timings*from*the*search* command.* Timings  from   distributed  peers   Timings  from   the  search  command   * Using*the*Search*Inspector* Timings*from*distributed*p Remote*timeline* Timings*from*the*search* command.* Key  Metrics:   •  Comple@on  Time   •  Number  of  Events   Scanned   •  Search  SID     Job  Inspector  
  • 29. Job  Inspector  Walkthrough  –  Search  Command   29   Rawdata:     Improving  I/O  and  CPU  load     KV:     Are  field  extrac@ons  efficient     Lookups:     Used  appropriately   Autolookups  causing  issues     Typer:   Inefficient  Evenoypes     Alias:   Cascading  alias    
  • 30. Reading  Job  Inspector  -­‐    Search.Index   30   Search.index  =   Time  to  parse  and  read  the  tsidx  files  to   determine  where  to  read  in  rawdata     How  do  you  op:mize  this?   •  Improving  I/O  
  • 31. Reading  Job  Inspector  -­‐    search.rawdata   31   Search.rawdata  =     Time  to  read  actual  events  from   rawdata  files     How  do  you  op:mize  this?   •  Filtering  as  much  as  possible   •  Add  Peers   •  Alloca@ng  more  CPU,  improving  I/O      
  • 32. Reading  Job  Inspector  -­‐    search.kv   32   Search.KV=   Time  taken  to  apply  field  extrac@ons   to  events     How  do  you  op:mize  this?   Regex  op@miza@ons   •  Avoid  greedy  operators  .*?   •  Use  of  Anchors  ^  $   •  Non  Capturing  groups  for  repeats          
  • 33. Reading  Job  Inspector  -­‐    search.lookups   33   Search.lookups  =     Time  to  apply  lookups  to  search     How  do  you  op:mize  this?   •  Use  Appropriately  (at  end  of  search)   •  Autolookups  maybe  causing  issues      
  • 34. Reading  Job  Inspector  -­‐    search.typer  and  tags   34   Search.typer  =     Time  to  apply  event  types  to  the   search     How  do  you  op:mize  this?   •  Use  Appropriately   •  Removed  unused  tags  and   evenoypes      
  • 35. Job  Inspector  Walkthrough  –  Distributed  Search   35   Dispatch.createProviderQueue   Time  to  establish  connec@on  with  peers     Dispatch.fetch   Time  spent  wai@ng  to  fetch  events     Dispatch.evaluate   The  @me  spent  parsing  the  search  and   sejng  up  the  data  structures  needed  to  run   the  search.       How  do  you  op:mize  this?   •  Improving  Peer  conduc@vity   •  Improve  Bundle  replica@on   •  Faster  storage    
  • 36. Job  Inspector  Walkthrough  –  Distributed  Search   36   Dispatch.stream.remote   Time  to  retrieve  events  from  each  remove   peer     Issue:   1.  Unequal  Indexer  performance   •  Either  Hardware  mismatch   •  Uneven  distribu@on  of  indexes   2.  AutoLB  issues    
  • 37. Job  Inspector  Conclusions:   Search  Command  Summary   37   Component   Descrip:on     index   look  in  tsidx  files  for  where  to  read  in  rawdata   rawdata   read  actual  events  from  rawdata  files   kv   apply  fields  to  the  events   filter   filter  out  events  that  don’t  match  (e.g.,  fields,  phrases)   alias   rename  fields  according  to  props.conf   lookups   create  new  fields  based  on  exis@ng  field  values   typer   assign  evenoypes  to  events   tags   assign  tags  to  events  
  • 38. Job  Inspector  Conclusion:   Distributed  Search  Summary   38   Metric   Descrip:on     Area  to  review   createProvider Queue     The  @me  to  connect  to  all  search   peers.     Peer  conduc@vity   fetch     The  @me  spent  wai@ng  for  or   fetching  events  from  search  peers.     Faster  Storage   stream.remote     The  @me  spent  execu@ng  the   remote  search  in  a  distributed   search  environment,  aggregated   across  all  peers.   evaluate   The  @me  spent  parsing  the  search   and  sejng  up  the  data  structures   needed  to  run  the  search.     Possible  bundle  issues  
  • 39. Addi@onal  Key  Logfiles  related  to  search   39   Search  log:   "   Stored  in  $SPLUNK_HOME/var/run/splunk/dispatch/   "   Detailed  analysis  of  every  step  taken  by  the  search     "   Search  ‘stack  trace’  
  • 40. What  is  the  best   search  command  to   use?  
  • 41. Stats  vs  Transac@on   41   Search  Goal:  compute  sta@s@cs  on  the  dura@on  of  web  session   (JSESSIONID=unique  iden@fier):       >  |  stats  range(_@me)  as  dura@on  by  JSESSIONID   |  chart  count  by  dura@on  span=log2     >  sourcetype=access_combined  |  transac@on   JSESSIONID  |  chart  count  by  dura@on   span=log2   Not  so  Great:   Much  BeUer:  
  • 42. Dedup  vs  Latest   42   Search  Goal:  Return  latest  cart  ac@on  for  each  web  site  customer       >  sourcetype=access*  |  stats  latest(clien@p)  by   ac@on   >  sourcetype=access*|  dedup  clien@p  sortby  -­‐ _@me  |table  clien@p,  ac@on   Not  so  Great:   Much  BeUer:   Note:  dedup  can't  be   used  with  report   accelera@on  
  • 43. Joins  and  Subsearches   43   Search  Goal:  Return  latest  JESSIONID  across  two  sourcetypes       >  (sourcetype="access_combined")  OR   (sourcetype="applogs")  |  stats  latest(*)  as  *  by   JSESSIONID   >  sourcetype="access_combined"  |  join  type="inner"   JSESSIONID  [search  sourcetype="applogs"  |  dedup   JSESSIONID  |  table  JSESSIONID,  clien@p,  othervalue]   Not  so  Great:   Much  BeUer:  
  • 45. In  Closing…   45   1.  Implemen@ng  Architecture  best  prac@ces  for  performance  at  scale   •  With  search  behavior  in  mind…   2.  Implemen@ng  User  Onboarding  Best  Prac@ces   •  Basic  op@miza@on  steps   3.  Periodic  Performance  Review     •  Applying  accelera@on  technologies  where  appropriate   •  Removing  unused  searches     4.  Review  addi@onal  sides  for   •  Search  flow  detail   •  Op@mizing  Splunk  Web    
  • 46. And  By  the  way…   46   Other  Sessions  to  look  out  for:   •  How  to  Actually  Use  Splunk  Data  Models  -­‐  David  Clawson      Presented  on  Tuesday  –  Check  out  the  session  notes     •  Jiffy  Lube  Tune-­‐Up  for  your  Splunk  Deployment  -­‐  Sean  Delaney    Presented  on  Tuesday  –  Check  out  the  session  notes     •  ArchitecCng  and  Sizing  your  Splunk  Environment  -­‐  Simeon  Yep      2:15-­‐3:15  Today     •  Splunk  Search  AcceleraCon  Technologies  –  Gerald  Kanapathy    10:30-­‐11:30  Tomorrow     My  Contact  informa:on:   julian@splunk.com  @julian_Harty    
  • 48. Take  Away:  Basic  Steps  to  a  beoer  search   48   •  Avoid  use  of  *  where  ever  possible.   •  Avoid  the  use  of  All  Time.   •  Avoid  subsearches  searches.   •  Incorporate  the  use  default  fields  (source,  sourcetype,  host)  as   well  as  specific  indexes  to  every  search  (where  possible).   •  Use  Fast  or  Smart  mode  where  possible  avoid  ‘Verbose’  mode.   •  Use  Report  Accelera@on  Sparingly  (and  Strategically)  on  reports   on  large  datasets.   •  Use  Summary  Indexing  when  building  reports  over  @me  spans   beyond  target  index  reten@on.   •  Use  Job  Inspector  and  Search  inspector  to  get  more  info  (hold  on   for  more  details!!!)  
  • 49. A  few  notes  on  how  to  op@mize  Splunk  Web     49                                                                    |  fields   Change   Segmenta@on   Use  Fast  Mode  Collapse   Timeline  
  • 50. Search  flow  –  Local  and  Distributed   50   Key  Files:   •  Info   •  Status   •  Results   •  Preview   Key  Flow:   1.  Find  which  Bundle  to  use   2.  Find  Buckets  to  use  (@me  range)   3.  LISPY  TSIDX  search     4.  Process  +  Summarizes  Events   hop://wiki.splunk.com/Community:HowDistSearchWorks