-
Notifications
You must be signed in to change notification settings - Fork 25k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable query phase parallelism by default #101230
Enable query phase parallelism by default #101230
Conversation
Inter-segment search concurrency is enabled only in the DFS phase so far, and affects knn searches. This commit enables it by default for the query phase too.
Pinging @elastic/es-search (Team:Search) |
Hi @javanna, I've created a changelog YAML for you. Note that since this PR is labelled |
Hi @javanna, I've updated the changelog YAML for you. Note that since this PR is labelled |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 lgtm
Thanks for this @javanna ! Would be informative to see benchmarks similar to opensearch-project/OpenSearch#1500 (comment) |
The way multiple slices execute when sorting by field is not optimized and can lead to a slowdown. We will dig deeper and potentially re-enable once we have addressed that. When sorting by _doc or _shard_doc, and potentially by _timestamp, there will be no gain with inter-segment concurrency. Relates to elastic#101230
The way multiple slices execute when sorting by field is not optimized and can lead to a slowdown. We will dig deeper and potentially re-enable once we have addressed that. When sorting by _doc or _shard_doc, and potentially by _timestamp, there will be no gain with inter-segment concurrency. Relates to #101230
Our nightly benchmarks results are publicly accessible. There's quite some different workloads, but many of them currently forge merge indices which makes search not parallelizable against them. An example of the effect of concurrency is here: https://elasticsearch-benchmarks.elastic.co/index.html#tracks/nyc-taxis/nightly/default/30d . You see it especially in the date histogram visualizations. Where there is no improvement it's because terms aggregation is used which currently does not support concurrency, but we are working on. |
Inter-segment search concurrency is enabled only in the DFS phase so far, and affects knn searches. This commit enables it by default for the query phase too.
Note that terms aggregations currently disable parallelism. We are planning on removing this restriction soon.
Closes #80693