如何使用聚合从elasticsearch中的对象数组中获取具有不同值的对象键?

时间:2016-04-19 12:45:16

标签: elasticsearch aggregation

我有以下文件的产品集合(索引):

{ name : 'test1',
   attributes : [ {name :"color" , value : 'red'}, {name  : 'size' , value : 's'}, {name  : 'type' , value : 'simple'}]
}

{ name : 'test2',
    attributes : [{name  : 'size' , value : 'm'}]
}

{ name : 'test3',
    attributes : [ {name :"color" , value : 'green'},  {name  : 'size' , value : 's'}]
}

{ name : 'test4',
    attributes : [ {name :"color" , value : 'red'}]
}

如何使用弹性搜索聚合获得如下输出? 输出:

{
    attributes : {
        color : [ {value : 'red', count : 2}, {value : 'green', count : 1} ],
        size : [ { value : 's', count : 2}, {value : 'm', count : 1}],
        type : [ {value : 'simple', count : 1}]
    }

}

0 个答案:

没有答案