【发布时间】:2018-08-25 12:17:43
【问题描述】:
要获取的数据大小:大约 20,000
问题:在 python 中使用以下命令搜索 Elastic Search 索引数据
但没有得到任何结果。
from pyelasticsearch import ElasticSearch
es_repo = ElasticSearch(settings.ES_INDEX_URL)
search_results = es_repo.search(
query, index=advertiser_name, es_from=_from, size=_size)
如果我给出小于或等于 10,000 的尺寸,它可以正常工作,但不能使用 20,000 请帮我找到一个最佳解决方案。
PS:在深入挖掘 ES 时发现此消息错误:
结果窗口太大,from + size 必须小于或等于:[10000] 但为 [19999]。请参阅滚动 API,以更有效地请求大型数据集。
【问题讨论】:
-
您更喜欢实时使用或分析的解决方案?
-
@Lupanoide 实时使用。
-
出现在错误堆栈中的滚动查询是分析的最佳解决方案,而不是实时的,因为需要更多资源才能运行。请阅读我的回答中提到的es文档的search_after查询页面
-
谢谢,但我不确定实时和分析之间有什么区别。你能帮我理解吗?
-
请在此处阅读elasticsearch开发人员提供的说明discuss.elastic.co/t/scroll-vs-search-api/28294
标签: python elasticsearch pyelasticsearch