Details
-
Improvement
-
Resolution: Unresolved
-
Major
-
4.5.1, 4.6.0, 5.0.0
-
None
Description
We have seen examples of customers using queries that are technically correct, but make very inefficient use of indexes. For example, using an index that is too coarse, meaning that a lot of results are returned to the Query Engine, that it then has to process (filter/sort) further. This can result in the Query Engine using significant amounts of memory, affecting performance.
It would be useful if there was a way for the customer to know when this was happening. At the moment the only method I'm aware of is to check the Indexer stats in Completed Requests.
We could at the very least improve documentation, or provide a guide or blog post on the subject.
Perhaps a metric could be developed, based on the number of results returned by the Indexer, compared to the number of results eventually returned from the Query Engine. Maybe this could then be incorporated in to the Query Workbench so that this could be flagged up during prototyping ?