Elasticsearch 6.2.0不支持大小参数-始终返回10个文档

hiz5n14c  于 2023-03-17  发布在  ElasticSearch
关注(0)|答案(1)|浏览(130)

我正在使用Elasticsearch 6.2.0 Python客户端查询Amazon Opensearch 1.1索引,对于一个特定的搜索词,如果它有超过1000个匹配项,无论我在Python中将“size”参数设置为什么值,都会返回10个匹配的文档,但是,当我使用curl查询索引时,如果我指定大小为30,我(正确地)得到30个匹配的文档。
这是我的疑问:

query_term = "diabetes"

body = {
    'from' : 0, 'size' : 30,
    'query': {
        'bool': {
            'must': {
                'match': { 'term': query_term }
            },
            'filter': {
                'term': { 'type': "concept" }
            }
        }
    },
}

response = self.es.search(body=body)

知道我哪里做错了吗?

xjreopfe

xjreopfe1#

最有可能的情况是,您在json主体中提供的大小被搜索API设置的默认大小值(10)覆盖:https://elasticsearch-py.readthedocs.io/en/v8.6.2/api.html#elasticsearch.client.EqlClient.search
尝试

response = self.es.search(body=body, size=30)

相关问题