在ElasticSearch中,我有一个包含30 GB新闻故事的索引。我想在文本中按时间顺序返回包含特定名称的故事。我只想要前100个故事。
ElasticSearch似乎通过将每个故事过滤到匹配的那些故事来解决这个问题,然后对这些结果进行排序并返回前100个。这会使用相当大量的资源来过滤每一个故事。
我可以先让ElasticSearch排序,然后按顺序过滤,直到达到最大值(100)。假设这将是每个碎片100,但最后一步将是每个碎片100,将它们全部排序,并取得该结果集的前100。至少在我看来,这应该使用更少的资源。