我正在尝试使用 elasticsearch-rails 和 elasticsearch-model gems 在 ElasticSearch 的同一级别上执行多个聚合。
在我生成的查询哈希中,我有以下内容 -
def query_hash(params, current_person = nil, manager_id = nil)
aggs = {}
aggs[:home_country_id] = {terms: {field: "home_country_id"}}
aggs[:home_region_id] = {terms: {field: "home_region_id"}}
{
sort: [ { created_at: { order: "desc" } }, id: { order: "desc" } ],
aggs: aggs
}
end
我存储在对象 es_response 中的响应。
当我搜索这两个聚合时,我只能在响应中找到最后一个。
es_response.response["aggregrations"] 只有最新的聚合对象的响应,home_region_id
.
尽管有很多关于嵌套聚合的内容,但我在 ES Reference 上找不到太多关于在同一级别上构建多个聚合的文档。
我怎样才能解决这个问题?
我的ES版本是5.1