如何仅返回弹性搜索dsl中的聚合结果而不是命中

时间:2017-11-03 09:03:35

标签: python elasticsearch elasticsearch-5

我正在使用http://elasticsearch-dsl.readthedocs.io

在python中编写dsl查询

我有以下代码

search.aggs.bucket('per_ts', 'terms', field='ts')\
            .bucket('load_time', 'percentiles', field='total_req', percents=[99])


response = search.execute()

这样可以正常工作但它也会返回hits。但我不想要hits

在curl查询模式中,我可以通过

中的size:0获得我想要的内容
GET /twitter/tweet/_search
{
  "size": 0,
  "aggregations": {
    "my_agg": {
      "terms": {
        "field": "text"
      }
    }
  }
}

我找不到可以在查询dsl中使用size = 0的方法。

1 个答案:

答案 0 :(得分:1)

参考elasticsearch-dsl-py / search.py​​ here

的代码
s = Search().query(...).extra(from_=0, size=25)

此声明应该有效。