Let's say I have a index named test (15 shards and 1 replica) consisting of 10 million docs. Each of the document has a category assigned to it. Let's name the categories as C1, C2, C3...Cn. Consider C1 is assigned to more than 60% of documents.
For my search queries, whenever there is a filter for Category=C1, the response time is quite high (4-7s). The reason is obvious that it has to search across all 15 shards, compute, collate almost 6 million docs and then return top x (say 30) results. Searches for all other category filters have normal and acceptable response time (<100 ms).
What can be best trick to cut down slow queries in case of categories like C1.