ES权威指南[官方文档学习笔记]-50 The empty search

es:http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/empty-search.html

下一篇:http://my.oschina.net/qiangzigege/blog/264572

内容

1 最基本的搜索形式是空搜索,没有任何限制,仅仅是简单返回集群里的所有索引的所有文档。

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,包含符合条件的文档总数。包含前10个,也就是只返回前面10个。

每个结果包含_index,_type,_id.还有_source字段。
这意味着整个文档立即可用。
不像其它搜索引擎只返回文档ID,需要你再次去拿到文档。


每个文档还包含有一个_score, 这个是相关性score,

默认情况下,总是返回相关度更高的文档,也就是说,按照_score逆序排列。

在这种情况下,我们不指定任何查询条件,所以所有的文档都是相关的,
max_score是最高分数。


took
这个字段告诉我们整个搜索花费了多少毫秒。

shards
这个字段告诉我们,此次查询涉及的分片的总数
多少成功,多少失败,
我们在正常条件下不期望分片失败,但是它还是可能发生的,
如果我们丢失了主分片和从分片,搜索就不会成功。


在这种条件下,es会报告说分片失败了,但是仍然从剩下的分片里搜索。

timeout
这个字段告诉我们查询是否超时,默认,搜索不会超时,
如果超时时间很重要,你可以指定超时时间,

GET /_search?timeout=10ms
这样es就会返回给 在超时时间之内搜到的文档。


 

你可能感兴趣的:(elasticsearch)