2017-03-17 28 views
0

我试图在elasticsearch中获得所有不同的字段值,但我只得到10个桶。elasticsearch不同的查询只返回10个桶

设置我的查询是这样的:

GET /sdpjmx/kafkajmx/_search 
{ 
"size": 0, 
"aggs" : { 
    "topics" : { 
     "terms" : { "field" : "kafka_topic" } 
    } 
}} 

甚至与size设置为0,我仍然只能得到10回。

结果在此:

{ 
    "took": 11, 
    "timed_out": false, 
    "_shards": { 
    "total": 3, 
    "successful": 3, 
    "failed": 0 
    }, 
    "hits": { 
    "total": 948380, 
    "max_score": 0, 
    "hits": [] 
    }, 
    "aggregations": { 
    "topics": { 
     "doc_count_error_upper_bound": 3597, 
     "sum_other_doc_count": 886819, 
     "buckets": [ 
     { 
      "key": "__consumer_offsets", 
      "doc_count": 10777 
     }, 
     { 
      "key": "EVENT_ONE", 
      "doc_count": 4367 
     }, 
     { 
      "key": "ERROR_AUTH", 
      "doc_count": 4365 
     }, 
     { 
      "key": "topic zds", 
      "doc_count": 4364 
     }, 
     { 
      "key": "topicabs", 
      "doc_count": 4360 
     }, 
     { 
      "key": "dynamictopic1", 
      "doc_count": 3827 
     }, 
     { 
      "key": "connect-a", 
      "doc_count": 3824 
     }, 
     { 
      "key": "topic12", 
      "doc_count": 3820 
     }, 
     { 
      "key": "service_qa", 
      "doc_count": 3820 
     }, 
     { 
      "key": "topic ad", 
      "doc_count": 3819 
     } 
     ] 
    } 
    } 
} 

回答

1

尝试添加条款聚集内部尺寸参数:

GET /sdpjmx/kafkajmx/_search { "size": 0, "aggs" : { "topics" : { "terms" : { "field" : "kafka_topic", "size": 1000 } } } }

1
GET /sdpjmx/kafkajmx/_search 
{ 
"size": 0, //<-- This size is for query results and not agg results 
"aggs" : { 
    "topics" : { 
     "terms" : { "field" : "kafka_topic" }, 
     "size" : 0 //<-- it will return all aggregation terms 
    } 
}}