我想查询Elasticsearch并打印查询的所有结果。默认最大值为10,000,但我想将此最大值扩展为更大。我正在使用Python。
我正在使用Elasticsearch.helpers.scan。看来可行,但是随后在打印结果的中间我得到了这个错误:
elasticsearch.helpers.ScanError: Scroll request has only succeeded on 66 shards out of 80.
我不确定这到底意味着什么,有人可以解释一下并提供解决方案吗?
此外,如果除了Elasticsearch.helpers.scan之外还有更好/更轻松的模块/ api可以使用,请告诉我!
谢谢!
答案 0 :(得分:1)
将raise_on_error = False传递给扫描功能。
res = scan(es, query=query, scroll='50m', size=1000, raise_on_error=False)
这为我修复了它。
答案 1 :(得分:0)
确实有助于找出有关异常原因的更多信息的方法非常简单 - 只需为您正在使用的 Elasticsearch python 模块打开 async void
日志:
RATING_CHOICES = [(
('poor','Poor'),
('average', 'Average'),
('good', 'Good'),
('verygood', 'Very Good'),
('excellent', 'Excellent')
),]
然后检查您的 DEBUG
调用日志。