我正在使用elasticsearch-dsl Python库连接到elasticsearch并执行聚合操作。
我遵循以下代码。
我遵循以下代码。
search.aggs.bucket('per_date', 'terms', field='date')\
.bucket('response_time_percentile', 'percentiles', field='total_time',
percents=percentiles, hdr={"number_of_significant_value_digits": 1})
response = search.execute()
这个方法可以正常工作,但是只返回了response.aggregations.per_ts.buckets
的10个结果。
我想要所有的结果。
我尝试了一个解决方案,使用了size=0
,就像这个问题中提到的那样。
search.aggs.bucket('per_ts', 'terms', field='ts', size=0)\
.bucket('response_time_percentile', 'percentiles', field='total_time',
percents=percentiles, hdr={"number_of_significant_value_digits": 1})
response = search.execute()
但是这会导致错误
TransportError(400, u'parsing_exception', u'[terms] failed to parse field [size]')