我正在构建的索引中的字段会定期附加到。我希望能够查询elasticsearch来计算当前项目的数量。是否可以查询数组字段的长度?我可以写一些东西来带回田地并计算物品,但其中一些有大量的条目,所以我正在寻找在ES中完成的东西。
答案 0 :(得分:0)
这是我推荐的。在_uid上执行术语聚合。然后对数组字段中的所有字段执行另一个聚合,并对doc_counts进行求和。
但是这样的操作实际上取决于您需要查询的记录数,否则这可能是一项昂贵的操作。
你有另一个选择是将数组元素的数量存储为另一个字段并直接查询它,并且考虑到你已经在文档中存储了大数组,这个大小的整数字段似乎是公平的交易 - 关闭。如果您需要计数来过滤记录,我建议使用脚本过滤器,如here
所述