Skip to content
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

Try next replica shard when slow request found in search action #82164

Open
easyice opened this issue Dec 31, 2021 · 3 comments
Open

Try next replica shard when slow request found in search action #82164

easyice opened this issue Dec 31, 2021 · 3 comments
Labels
>enhancement :Search Foundations/Search Catch all for Search Foundations Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch

Comments

@easyice
Copy link
Contributor

easyice commented Dec 31, 2021

When searching the shards, some shards may return very slowly, it causes the query to take a long time, it perhaps the data node query queue was suddenly full, or JVM GC, or something like that, This causes to query burrs, a simple query should return within 1 second, but it took 4 second or more. This usually happens with a high query QPS.

Although we have ARS, but he can't solve the issue , on the contrary, we can try the next shard replica when most of the shard requests have already been returned, and the running time of the slow request is greater than a certain threshold, then use the first result to call onShardResult . many other systems have similar mechanisms

I implemented this idea, and test it in the our cluster, found that query latency is significantly reduced, the picture below is a comparison of before and after this mechanism is enabled

image

@easyice easyice added >enhancement needs:triage Requires assignment of a team area label labels Dec 31, 2021
@not-napoleon not-napoleon added :Distributed Indexing/Distributed A catch all label for anything in the Distributed Area. Please avoid if you can. and removed needs:triage Requires assignment of a team area label labels Jan 6, 2022
@elasticmachine elasticmachine added the Team:Distributed Meta label for distributed team (obsolete) label Jan 6, 2022
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-distributed (Team:Distributed)

@DaveCTurner DaveCTurner added :Search/Search Search-related issues that do not fall into other categories and removed :Distributed Indexing/Distributed A catch all label for anything in the Distributed Area. Please avoid if you can. Team:Distributed Meta label for distributed team (obsolete) labels Jul 28, 2022
@elasticsearchmachine elasticsearchmachine added the Team:Search Meta label for search team label Jul 28, 2022
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search (Team:Search)

@javanna javanna added :Search Foundations/Search Catch all for Search Foundations and removed :Search/Search Search-related issues that do not fall into other categories labels Jul 17, 2024
@elasticsearchmachine elasticsearchmachine added Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch and removed Team:Search Meta label for search team labels Jul 17, 2024
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search-foundations (Team:Search Foundations)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
>enhancement :Search Foundations/Search Catch all for Search Foundations Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch
Projects
None yet
Development

No branches or pull requests

6 participants