ES报错Result window is too large问题处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES报错Result window is too large问题处理相关的知识,希望对你有一定的参考价值。

我在使用Elasticsearch进行search查询的过程中,出现了Result window is too large问题。
这里简单做一个报错复现:

In [1]: import requests

In [2]: requests.get(‘http://127.0.0.1:9200/cmdb-now/_search?page=1&size=10000000‘).json()
Out[2]:
{
    u‘error‘: {
        u‘failed_shards‘: [
            {
                u‘index‘: u‘cmdb-now‘,
                u‘node‘: u‘ldeZMZRAR6uZpAiIr5QxBQ‘,
                u‘reason‘: {
                    u‘reason‘: u‘Result window is too large, from + size must be less than or equal to: [10000] but was [10000000]. 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 parameter.‘,
                    u‘type‘: u‘query_phase_execution_exception‘
                },
                u‘shard‘: 0
            }
        ],
        u‘grouped‘: True,
        u‘phase‘: u‘query‘,
        u‘reason‘: u‘all shards failed‘,
        u‘root_cause‘: [
            {
                u‘reason‘: u‘Result window is too large, from + size must be less than or equal to: [10000] but was [10000000]. 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 parameter.‘,    
                u‘type‘: u‘query_phase_execution_exception‘
            }
        ],
        u‘type‘: u‘search_phase_execution_exception‘
    },
    u‘status‘: 500
}

从上面的报错信息,可以看到ES提示我结果窗口太大了,目前最大值为10000,而我却要求给我10000000。并且在后面也提到了要求我修改index.max_result_window参数来增大结果窗口大小。

我google了修改方法,命令如下:

curl -XPUT http://127.0.0.1:9200/cmdb-now/_settings -d ‘{ "index" : { "max_result_window" : 100000000}}‘

需要注意的是,cmdb-now这里是我ES索引的名字,因此你需要它替换成你对应的索引名称进行修改。
有关官方针对index的相关配置介绍,可以点击这里进行查看。

本文出自 “Not Only Linux” 博客,请务必保留此出处http://nolinux.blog.51cto.com/4824967/1786656

以上是关于ES报错Result window is too large问题处理的主要内容,如果未能解决你的问题,请参考以下文章

ES-Result window is too large

xshell 输入w 命令后报错 66 column window is too narrow

xshell 输入w 命令后报错 68 column window is too narrow

hive报错: Specified key was too long; max key length is 767 bytes

kibana页面报错Data too large

Specified key was too long; max key length is 767 bytes