文章目录
- 查询
- 查询结果结构
- hits
- es 查询
查询
es.search(index='')
或者es.search(index='',query={'query':{'match_all':{}}})
返回该索引下的所有数据,这里有个size参数,通常是10,也就是返回的查询个数为10,查询会在多个分片都查询size个结果,会影响集群性能,所以最大值通常为10000,如果想要获取量级比较大的数据,建议使用scoll接口,python可以查看scan
scollscan【Elasticsearch】常见问题汇总
查询结果结构
以下包含一次查询获得的结果结构
空搜索
hits
返回结果中最重要的部分是hits
,它包含 total 字段来表示匹配到的文档总数,并且一个 hits 数组包含所查询结果的前十个文档。
在 hits 数组中每个结果包含文档的_index
、 _type
、 _id
,加上_source
字段。这意味着我们可以直接从返回的搜索结果中使用整个文档。这不像其他的搜索引擎,仅仅返回文档的ID,需要你单独去获取文档。
每个结果还有一个 _score
,它衡量了文档与查询的匹配程度。默认情况下,首先返回最相关的文档结果,就是说,返回的文档是按照 _score
降序排列的。在这个例子中,我们没有指定任何查询,故所有的文档具有相同的相关性,因此对所有的结果而言 1 是中性的_score
。
max_score
值是与查询所匹配文档的_score
的最大值。
es 查询
python 使用 elasticsearch 常用方法(检索)