我是Elastic Search的新手,想知道我在玩聚合时遇到的问题。 我有一个IP细节索引,我想获得不同IP地址的数量。为此,我首先使用以下查询的术语聚合:
GET /myIndex/_search
{
"size": 0,
"aggs": {
"ip": {
"terms": {
"size": 0,
"field": "sender"
}
}
}
}
此查询返回了59082个存储桶,这意味着59082个不同的IP地址。
然后我使用以下查询的基数聚合:
GET /myIndex/_search
{
"size": 0,
"aggs" : {
"ip" : {
"cardinality" : {
"field" : "sender"
}
}
}
}
这个返回了58837个不同的IP地址。
我想知道我是否在查询上做错了,或者这是弹性搜索的内部问题(可能是精度损失,因为所有分片都以聚合的形式返回顶级结果?)
谢谢!