根据brand字段进行分组。可能会出现5%的错误率。
GET /tvs/sales/_search
{
"size":0,
"aggs":{
"group_by_sold_date":{
"date_histogram": {
"field": "sold_date",
"interval": "month"
},
"aggs":{
"distinct_brand_cnt":{
"cardinality": {
"field": "brand"
}
}
}
}
}
}
优化方案,设置precision_threshold的值,如果个数在100以为,能保证100%的准确率,设置的值越大,占用的内存则越大。
GET /tvs/sales/_search
{
"size":0,
"aggs":{
"distinct_brand_cnt":{
"cardinality":{
"field":"brand",
"precision_threshold": 100
}
}
}
}