Skip to main content

Tune for search speed

Instead or at the same time as you might want to tune for High load, you might want to tune for fast searches.

Spider being designed for both, with CQRS pattern, there is no contradiction in targeting both at once :-)
To tune for searches, you may:

  • Optimize indices and Elasticsearch for searches
    • Most is already done
  • Add read replicas
  • Use progressive loading

Optimize indices and Elasticsearch for searches

operations indices are time based.

As soon as the write index reaches the rollover delay, the index is:

  • merged into 1 shard
  • merged into 1 segment
  • change as read only

All this makes it already optimized for searches.

You may tune the rollover setting to have big enough indices, while not too big. A few GBs.

Add read replicas

Indices replicas may improve searches throughput as a queries on the same data can be run in many hosts.
If you have many users doing analysis, you might try increasing replica settings:

operations:
replicas: 2

UI tips for smoother UX

Use progressive loading

Spider UI offers the feature of progressive loading of big aggregations: timeline and map.
Activate it to avoid timeouts when requesting big datasets.

ProgressiveLoading.png

Hide map

When loading big datasets, the map may be overloading the user browser.
Best is to hide it.