ES搜索结果中各个字段介绍

空搜索
搜索API的最基础的形式是没有指定任何查询的空搜索,它简单地返回集群中所有索引下的所有文档:

GET /_search

返回的结果(为了界面简洁编辑过的)像这样:

{"hits" : {"total" :       14,"hits" : [{"_index":   "us","_type":    "tweet","_id":      "7","_score":   1,"_source": {"date":    "2014-09-17","name":    "John Smith","tweet":   "The Query DSL is really powerful and flexible","user_id": 2}},... 9 RESULTS REMOVED ...],"max_score" :   1},"took" :           4,"_shards" : {"failed" :      0,"successful" :  10,"total" :       10},"timed_out" :      false
}

hits

返回结果中最重要的部分是 hits ,它包含 total 字段来表示匹配到的文档总数,并且一个 hits 数组包含所查询结果的前十个文档。

在 hits 数组中每个结果包含文档的 _index 、 _type 、 _id ,加上 _source 字段。这意味着我们可以直接从返回的搜索结果中使用整个文档。这不像其他的搜索引擎,仅仅返回文档的ID,需要你单独去获取文档。

每个结果还有一个 _score ,它衡量了文档与查询的匹配程度。默认情况下,首先返回最相关的文档结果,就是说,返回的文档是按照 _score 降序排列的。在这个例子中,我们没有指定任何查询,故所有的文档具有相同的相关性,因此对所有的结果而言 1 是中性的 _score 。

max_score 值是与查询所匹配文档的 _score 的最大值。

took

took 值告诉我们执行整个搜索请求耗费了多少毫秒。

shard

_shards 部分告诉我们在查询中参与分片的总数,以及这些分片成功了多少个失败了多少个。正常情况下我们不希望分片失败,但是分片失败是可能发生的。如果我们遭遇到一种灾难级别的故障,在这个故障中丢失了相同分片的原始数据和副本,那么对这个分片将没有可用副本来对搜索请求作出响应。假若这样,Elasticsearch 将报告这个分片是失败的,但是会继续返回剩余分片的结果。

timeout

timed_out 值告诉我们查询是否超时。默认情况下,搜索请求不会超时。如果低响应时间比完成结果更重要,你可以指定 timeout 为 10 或者 10ms(10毫秒),或者 1s(1秒):

GET /_search?timeout=10ms

在请求超时之前,Elasticsearch 将会返回已经成功从每个分片获取的结果。

应当注意的是 timeout 不是停止执行查询,它仅仅是告知正在协调的节点返回到目前为止收集的结果并且关闭连接。在后台,其他的分片可能仍在执行查询即使是结果已经被发送了。

使用超时是因为 SLA(服务等级协议)对你是很重要的,而不是因为想去中止长时间运行的查询。

【ES】ES搜索结果中各个字段介绍,hits,took,timeout相关推荐

  1. ES搜索结果中各个字段介绍,hits,took,timeout

    ES搜索结果中各个字段介绍 空搜索 搜索API的最基础的形式是没有指定任何查询的空搜索,它简单地返回集群中所有索引下的所有文档: GET /_search 返回的结果(为了界面简洁编辑过的)像这样: ...

  2. ES中搜索结果各属性说明介绍,以及搜索中的timeout机制讲解(来自学习资料,34节)

    1.属性说明和介绍 执行命令: GET /test_index/test_type/_search?timeout=1s 运行后的结果如下: {"took": 4,"ti ...

  3. #研发解决方案介绍#基于ES的搜索+筛选+排序解决方案

    郑昀 基于胡耀华和王超的设计文档 最后更新于2014/12/3 关键词:ElasticSearch.Lucene.solr.搜索.facet.高可用.可伸缩.mongodb.SearchHub.商品中 ...

  4. ES _source字段介绍——json文档,去掉的话无法更新部分文档,最重要的是无法reindex...

    摘自:https://es.xiaoleilu.com/070_Index_Mgmt/31_Metadata_source.html The _source field stores the JSON ...

  5. ES修改mapping中的字段名称

    前言 我们都知道,在ES中一旦声明了字段名称,就不能对字段名称进行修改了.只能新增字段,不能删除.修改已经声明的mapping字段. 那么,如果我们需要修改mapping中的字段名称,需要怎么操作呢? ...

  6. ES中删除索引中某个字段

    ES中无法直接增删索引中的字段,只能能够覆盖,即重建新的索引 例:删除索引my_index中的source字段 先将source字段中的数据删除 否则后面reindex时,索引中会自动增加source ...

  7. 极兔一面:10亿级ES海量搜索狂飙10倍,该怎么办?

    背景说明: ES高性能全文索引,如果不会用,或者没有用过,在面试中,会非常吃亏. 所以ES的实操和底层原理,大家要好好准备. 另外,ES调优是一个非常.非常核心的面试知识点,大家要非常重视. 在40岁 ...

  8. ElasticSearch学习系列(一)关于ES数据库的和核心倒排索引的介绍

    关于ES数据库的和核心倒排索引的介绍 一.Elasticsearch概述 简介 关于全文检索引擎 关系型数据库的全文检索功能缺点 全文检索的应用场景 Elasticsearch 应用案例 二.Elas ...

  9. ES 全文搜索与数据分析引擎

    ES 它是一个 分布式的 全文搜索与数据分析引擎. 与关系型数据库对比: 一个ES集群可以包含多个索引(数据库),每个索引又包含了很多类型(表),类型中包含了很多文档(行),每个文档使用 JSON 格 ...

最新文章

  1. 剑指offer:面试题15. 二进制中1的个数
  2. 北大教授张大庆:无线感知,让你变老也优雅
  3. Markdown = PPT ?这个工具给力!
  4. html实现全选 反选,jquery实现全选、不选、反选的两种方法
  5. 数据结构与算法分析资源总结
  6. .NET 6 的 docker 镜像可以有多小
  7. 电商独立站-谷歌SEO指标
  8. 运行Eclipse出错:Failed to load the JNI shared library
  9. 用C语言解决狼羊白菜过河的思路,基于visual Studio2013解决C语言竞赛题之1079狼羊过河...
  10. make[1]: *** [storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/all] 错误 2 解决方法...
  11. 手机号归属地数据库;根据手机号查找对应的归属地;
  12. Electron技术架构
  13. 2021-01-13事件对象
  14. 广东工业大学计算机学院张静,广东工业大学文件.doc
  15. oel+oracle,OEL7.6安装Oracle Database 19C(VERSION 19.3.0.0)
  16. 嘟嘟噜~~~第一次写博,纪念一下
  17. Mac每次打开PPT都会出现End窗口
  18. 有意思的shell命令行提示符
  19. 第一章 数据资产的定义
  20. Spring/SpringBoot学习中遇到的问题记录(2):java.lang.ClassNotFoundException:org.apache.jsp.WEB_002dINF.views.xx

热门文章

  1. 2021.05.20最少数量的箭引爆气球
  2. Matlab App Designer 中表格的操作
  3. 地方政府不愿房价下跌 救市或化解房地产调控
  4. python由大到小排序_Python选择从小到大的排序,python
  5. Race Condition(资源竞争) 解决方案总结
  6. Nativefier把网页打包成exe
  7. 小西的快乐乘法表(想不到怎么做到同时输入两个数,并同时输出两张乘法表,求助)
  8. [需求管理-4]:需求分析全过程:需求分析+资源评估+项目计划
  9. 佳佳GIS学习笔记2
  10. 超短激光与金属材料相互作用的Comsol双温模型(激光烧蚀)