gpt4 book ai didi

python - 将Elasticsearch查询结果划分成大块?

转载 作者:行者123 更新时间:2023-12-03 00:56:22 25 4
gpt4 key购买 nike

我有一个类似的Elasticsearch查询,该查询将产生约25k个结果,那么如何将结果的交付分成多个块,例如每次5000个结果,这样就不会损害服务器内存?

def get_data():
totals = 0
payload = {

"size": 50000,
"query": {
"filtered": {
"filter" : {
"bool": {
"must": [
{"term": {"events.id": "1"}},
{"range": {"score_content_0": {"gte": 60}} },
{"range": {"published_at": { "gte": "2016-12-19T00:00:00", "lte": "2017-04-19T23:59:59"}}},
{"term": {"lang": "en"}}

]
}
}
}
}
}

r = requests.post(RM_URL, json=payload)
results = json.loads(r.content, encoding='utf-8')
totals = results['hits']['total']
myhits = results['hits']['hits']
return myhits

最佳答案

不幸的是,您一次不能获得超过10000个结果。而且您甚至无法分页,因此,如果您真的想获得25k的结果,则需要使用扫描API。

只是为了澄清一下:我在谈论早期版本中的elasticsearch 5.x(也许是2.4)

关于python - 将Elasticsearch查询结果划分成大块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43539503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com