我想为一组订单显示最常订购的产品对。我的搜索索引的缩写版本看起来像这样:
{
"_type" : "order",
"_id" : "10",
"_score" : 1.0,
"_source" : {
...
"product_ids" : [
1, 2
]
...
}
},
{
"_type" : "order",
"_id" : "11",
"_score" : 1.0,
"_source" : {
...
"product_ids" : [
1, 2, 3
]
...
}
}
鉴于我的搜索索引包含一组订单,每个订单都包含一个product_ids
字段,其中包含订单中的产品ID数组,是否可以将Elasticsearch聚合放在一起,该聚合将返回:
我一直在阅读文档,而且我不确定邻接矩阵是否适合此问题。我目前的预感是编写一个脚本基数查询,在查询文档中对product_ids
进行排序和加入,以获得与#2一致的结果,因为#1似乎可能涉及过多的产品ID排列是合理的高效。