elasticsearch - 如何根据日期字段从 Elasticsearch 获取最新数据
问题描述
我实现了一个预定脚本,将日期注入我的 Elasticsearch。该脚本不会检查数据是否已存在于 Elasticsearch 中,因此它会插入重复项。我想要的是获取所有具有最新时间戳字段值(插入日期时间)的事件。
注意:我没有 id 或唯一字段可以帮助我按它分组并将大小设置为 1 以获取最新信息。
那你能不能给一些其他的选择?
解决方案
您可以按最新的可用时间戳进行汇总,并获取顶部可能重复的文档,如下所示:
GET index/_search
{
"size": 0,
"aggs": {
"latest": {
"terms": {
"field": "timestamp",
"order": {
"_key": "desc"
},
"size": 1
},
"aggs": {
"latest_docs": {
"top_hits": {
"size": 100
}
}
}
}
}
}
推荐阅读
- python - 如何计算列表中的数字?
- python - how can i solve this problem of coins from n shop in python?
- reactjs - 如何以 redux-form 发送更改操作?
- javascript - 是否可以在 Matter.js 下添加链接标签?
- python-2.7 - 将菜单栏添加到现有的 MainWindow 类
- python - 我收到一个错误,因为无法识别图像文件中的数据,我也尝试使用 gif、jpeg、png 扩展名
- jenkins - Jenkins 为私有 git 存储库提供错误
- linqpad - 打开时执行 LINQPad 查询
- reactjs - 如何重构此代码?如何使此代码更好?
- matlab - Matlab离散时间傅里叶变换算法