es查询限制10000,使用scroll

报错:

TransportError(500, 'search_phase_execution_exception', 'Result window is too large, from + size must be less than or equal to: 10000 but was 10010. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the index.max_result_window index level setting.')

原因:

这个错误提示意味着你正在尝试从Elasticsearch中检索大量的数据,但是你的请求超过了Elasticsearch的默认结果窗口大小限制。默认情况下,Elasticsearch的结果窗口大小限制为10000,这意味着你一次最多只能检索10000个文档。

为了解决这个问题,你可以使用Elasticsearch的scroll API来检索大量的数据。scroll

API允许你在多个请求之间保持搜索上下文,以便你可以逐步检索大量的数据,而不会超出默认结果窗口大小的限制。

另外,你也可以通过更改Elasticsearch的索引级别设置来增加结果窗口大小限制。你可以通过设置"index.max_result_window"参数来调整结果窗口大小限制。但是,这种方法并不推荐,因为它可能会导致Elasticsearch性能下降,特别是在处理大量数据时。

总之,建议你使用scroll API来检索大量的数据,以避免超出默认结果窗口大小限制。

原代码:

python 复制代码
def main():
for i in range(0, int(allapge(index) / 10) + 2):
	try:
        res = es_yt.search(index=index, body=search_body(i))
        list_es = res['hits']['hits']
        s = helpers.bulk(es_ebscn, list_es)
        print('已完成', i)
        print(s)
    except Exception as e:
        print(e)

使用scroll 新代码:

python 复制代码
def main():
    scroll_time = '2m'  # 滚动查询的保持时间
    page_size = 1000  # 每个滚动请求返回的文档数

    res = es_yt.search(index=index, body=search_body(0), scroll=scroll_time, size=page_size)
    scroll_id = res['_scroll_id']
    scroll_size = res['hits']['total']
    print('scroll_size', scroll_size)

    while (scroll_size > 0):

        list_es = res['hits']['hits']
        print(list_es[0:1])
        if list_es:
            s = helpers.bulk(es_ebscn, list_es)
            print('scroll_size', scroll_size)
            print(s)
            res = es_yt.scroll(scroll_id=scroll_id, scroll=scroll_time)
        else:
            print('结束')
            break

    es_yt.clear_scroll(scroll_id=scroll_id)
相关推荐
小袁拒绝摆烂2 小时前
Jenkins部署经验
运维·jenkins
姜穆澜2 小时前
OneID 从 0 到 1 完整生产案例(四)
大数据
OsDepK2 小时前
项目快速Git至仓库(完整版)
大数据·git·elasticsearch·搜索引擎
合米AI SOP系统3 小时前
传统产线如何快速上马落地 AI 防错?合米科技 AI SOP 7天即可上线。
大数据·人工智能·科技
思录Echo3 小时前
什么决定具身智能的最终走向?多技术路线与落地现实辨析
大数据·人工智能
xiaohaiAIgeo3 小时前
【2026年】AI监控加行为分析守护实验室安全
大数据·人工智能·科普知识
林墨聊AIGC4 小时前
动漫AI视频创作工具在哪找到的?2026年最新动漫AI视频平台与软件指南
大数据·人工智能·ai作画·aigc·音视频
故七月5 小时前
告别 AI 时代品牌 “隐身”:万域智瞰 AI‑GEO,构建品牌大模型时代营销新基建
大数据·人工智能
数字孪生视频孪生7 小时前
三维实时重构异构底座 核工危化无感定位跨境轨迹一屏统揽
大数据·运维·人工智能·重构·架构
腾讯云大数据7 小时前
腾讯云AI Native数据平台功能发布合集【8月】
大数据·人工智能·云计算·腾讯云