Kibana查询结果_count& _search api

时间:2018-06-10 10:57:38

标签: java elasticsearch kibana elastic-stack

在执行_count api时,我正在kibana查询下执行count:45。但是如果我在同一个索引上使用_search api执行相同的查询,我只会获得10个文档而不是45个文档

请找到以下kibana查询

GET documents_test2/_count
{
    "query": {
        "query_string" : {
            "default_field" : "*",
            "query" : "40011"
        }
    }
}

对于上述Kibana查询,我的count:45

响应低于响应
{
  "count": 45,
  "_shards": {
    "total": 5,
    "successful": 5,
    "skipped": 0,
    "failed": 0
  }
}

但是如果我使用_search api而不是_count执行以下查询,我只会获得10个响应

GET documents_test2/_search
{
    "query": {
        "query_string" : {
            "default_field" : "*",
            "query" : "40011"
        }
    }
}

1 个答案:

答案 0 :(得分:1)

这是因为,当您使用" _search " ,它使用" 尺寸" param返回no。相关文件。因为你没有在这里传递那个参数,所以传递了默认值,即10 。因此只返回10份文件。

Pass"尺寸" param值返回所需的文档数量。

GET documents_test2/_search
{
   "size" : 45,
   "query": {
     "query_string" : {
        "default_field" : "*",
        "query" : "40011"
    }
}

您还可以查看" 来自" param从弹性搜索中获取分页结果(滑动窗口)。 例如如果你想获得页面大小为10的第三页文档,你可以通过"尺寸" :10,"来自" :20(即pagesize X(pageno。 - 1)= 10 *(3-1)= 10 X 2 = 20

查看https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html了解详情。