Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
Our queries are mostly bounded to a mailbox or an user. We can easily
limit the number of ElasticSearch nodes involved in a given query by
grouping the underlying documents on the same node using a routingKey.
Without routing key, each shard needs to execute the query. The coordinator
needs also to be waiting for the slowest shard.
Using the routing key unlocks significant throughput enhancement (proportional
to the number of shard) and also a possible high percentile latencies enhancement. This allows to be more lineary scalable.
However a data reindex is needed.