【发布时间】:2020-07-24 12:12:50
【问题描述】:
在一个 Elasticsearch 集群中,我有大约 30 个结构相同的索引。
我需要找出哪些索引会为我的查询返回至少 1 个结果。
结果本身并不重要。我将根据索引的名称做出业务逻辑决策,该索引至少包含 1 个满足搜索条件的文档。
根据输入,搜索可能会返回从 0 到 ~10 000 000 的所有索引命中。搜索将使用不同的输入执行约 50 000 次。
我看到以下解决方案:
- 使用带有滚动功能的搜索 API 并查看所有结果以找出它们来自哪个索引。 这是目前实施的,我正在寻找更快的解决方案。
- 使用计数 API 对每个索引进行计数。这将导致更多的请求。 这会更快吗?
- 是否有其他可能性/API 可用?
【问题讨论】:
-
这可能会对您有所帮助:stackoverflow.com/questions/28472008/…
-
并尝试使用
_search?size=0而不是search_type=count -
@AlwaysSunny 感谢您的链接。之前找不到。
-
欢迎先生。没问题。
标签: elasticsearch elasticsearch-dsl elasticsearch-query