显示所有Elasticsearch聚合结果/桶而不仅仅是10个

我试图列出一个聚合的所有桶,但它似乎只显示前10名。

我的search:

curl -XPOST "http://localhost:9200/imoveis/_search?pretty=1" -d' { "size": 0, "aggregations": { "bairro_count": { "terms": { "field": "bairro.raw" } } } }' 

返回:

 { "took" : 2, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "failed" : 0 }, "hits" : { "total" : 16920, "max_score" : 0.0, "hits" : [ ] }, "aggregations" : { "bairro_count" : { "buckets" : [ { "key" : "Barra da Tijuca", "doc_count" : 5812 }, { "key" : "Centro", "doc_count" : 1757 }, { "key" : "Recreio dos Bandeirantes", "doc_count" : 1027 }, { "key" : "Ipanema", "doc_count" : 927 }, { "key" : "Copacabana", "doc_count" : 842 }, { "key" : "Leblon", "doc_count" : 833 }, { "key" : "Botafogo", "doc_count" : 594 }, { "key" : "Campo Grande", "doc_count" : 456 }, { "key" : "Tijuca", "doc_count" : 361 }, { "key" : "Flamengo", "doc_count" : 328 } ] } } } 

我有这个聚合超过10个键。 在这个例子中,我有145个键,我要为他们每个人计数。 有没有一些分页桶? 我可以得到他们所有的人吗?

我正在使用Elasticsearch 1.1.0

大小参数应该是术语查询示例的参数:

 curl -XPOST "http://localhost:9200/imoveis/_search?pretty=1" -d' { "size": 0, "aggregations": { "bairro_count": { "terms": { "field": "bairro.raw", "size": 0 } } } }' 

正如文档中提到的,仅适用于版本1.1.0以上

编辑

根据@PhaedrusTheGreek评论更新答案。

设置size:0在2.x之前不推荐使用,这是由于群集上存在高基数字段值的内存问题。 你可以在这里阅读更多关于它的github 问题 。

build议在1到2147483647之间明确设定合理的数值。

但BTW,在https://github.com/elasticsearch/elasticsearch/issues/1776

是在6月22日closures的,我的elasticsearch是在那天之前下载和安装的,所以假设你可以得到它,如果有最新版本