-
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
Change terms aggregation default execution mode for tsdb #101619
Conversation
An tsdb backing index when current time is before index.time_series.end_time will receive a lot of writes. Building global ordinals doesn't make sense, because it is expensive and the next search can't reuse it. This change changes the default execution mode for tsdb backing indices where this is the case. The default will then be MAP instead of GLOBAL_ORDINALS. This should improve query latency.
Hi @martijnvg, I've created a changelog YAML for you. |
Pinging @elastic/es-analytics-geo (Team:Analytics) |
As discussed today, it would be nice to have another execution mode that maps values to bucket ordinals like the |
I updated the PR to the suggested change, but instead implemented it as a
The trend looks like that the all the last 15 minute searches benefit from this change. While the last 24 hours searches don't benefit from this change and actually report a worse query latency with this change. I suspect having a heuristic is estimate to match with X percent of the documents would make be helpful here. I will rerun the rally track when the track's data set is regenerated. |
Pinging @elastic/es-analytical-engine (Team:Analytics) |
An tsdb backing index when current time is before index.time_series.end_time will receive a lot of writes. Building global ordinals doesn't make sense, because it is expensive and the next search can't reuse it.
This change changes the default execution mode for tsdb backing indices where this is the case. The default will then be MAP instead of GLOBAL_ORDINALS.
This should improve query latency.