共计 452 个字符,预计需要花费 2 分钟才能阅读完成。
原始数据类似
[
{
"doc_key": 'a',
"startsAt": '2024 年 1 月 29 日',
"status": 'a'
},
{
"doc_key": 'a',
"startsAt": '2024 年 1 月 30 日',
"status": 'b'
}
]
对上面样例 需要返回 doc_key=a, status=b
的记录。
通过翻文档目前我实现的
{
"aggs": {
"unique_doc": {
"terms": {"field": "doc_key", // 每个 doc_key 有多条记录}
},
"aggs": {
"latest": {
"top_hits": {
"size": 1,
"sort": [
{
"@timestamp": {"order": "desc"}
}
]
}
},
"pagination": {
"bucket_sort": {
"size": 10,
"from": 0
}
}
}
}
}
问题: 没有实现最后一步状态过滤。
理想是在 top_hits 中能有个 filter 过滤 status
字段,然后结合bucket selector
过滤 hit count != 0 的桶。
请教各位大佬该怎么做?
正文完