Python Elasticsearch:如何在查询中包含`search_type = count`?

时间:2015-11-20 15:35:13

标签: python elasticsearch

我有一个运行许多ElasticSearch聚合的Python脚本,例如:

client = Elasticsearch(...)
q =  {"aggs": {"my_name":{"terms": "field", "fieldname"}}}
res = client.search(index = "indexname*", doc_type = "doc_type", body = q)

但是这会返回搜索查询(匹配我认为的所有内容)res["hits"]和聚合结果res["aggregations"]

我想要运行的是以下

的Python等价物
GET /index*/doc_type/_search?search_type=count

{"aggs": {"my_name":{"terms": "field", "fieldname"}}}

在使用Python Elasticsearch时,如何确保包含?search_type=count

我一般都想知道这一点,但我目前看到的原因是我偶尔会遇到因运行查询时超时或数据大小而导致的错误。我怀疑如果我只能要求计算,那么我会避免这些。

2 个答案:

答案 0 :(得分:11)

普遍的共识是不再使用$('#calendar').fullCalendar({ events: [ { title: 'My Event', start: '2015-11-20', description: 'This is a cool event' } // more events here ], eventRender: function(event, element) { element.qtip({ content: event.description }); } }); ,因为它是been deprecated in 2.0。相反,您应该只使用search_type=count

size: 0

答案 1 :(得分:1)

Here是搜索文档

试试这个

res = client.search(index = "indexname*", doc_type = "doc_type", body = q, search_type='count')

如果您使用ES 2.x

,请查看@Val的答案