I have an index that contains 30 GB worth of news stories. I want to return the stories that contain a particular name in their text, sorted chronologically. I only want the first 100 stories.
ElasticSearch seems to approach this problem by filtering every story to just those that match, then sorting those results and returning the top 100. This uses a reasonably large amount of resources to filter every single one. Can I get ElasticSearch to instead sort first, and then filter in order until it reaches the maximum (100). Granted that this would be 100 per shard, but then the final step would be to take each shard's 100, sort them all together, and take the top 100 of that result set. This should, at least in my mind, use significantly less resources, as it would only need to go through maybe 5000 or 10000 items to find a match, as opposed to the entirety of the index. *(Cross-posted from http://stackoverflow.com/questions/22467585/sort-before-filters-in-elasticsearch <http://stackoverflow.com/questions/22467585/sort-before-filters-in-elasticsearch>, because I didn't get an answer there for 2 days.)* -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/176b2d65-25af-4416-8cc3-0b82b71ad311%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
