如何根据日期字段从elasticsearch获取最新数据

ca1c2owp  于 2021-06-14  发布在  ElasticSearch
关注(0)|答案(1)|浏览(538)

我实现了一个计划脚本,将日期注入到elasticsearch中。脚本不会检查数据是否已经存在于elasticsearch中,因此会插入重复项。我想要的是获取所有具有最新时间戳字段值(insertion datetime)的事件。
注意:我没有id或唯一字段可以帮助我按id分组并将大小设置为1以获取最新的。
你能给我一些其他的选择吗?

mm5n2pyu

mm5n2pyu1#

您可以按最新的可用时间戳进行聚合,并获得最上面的、可能重复的文档,如:

GET index/_search
{
  "size": 0,
  "aggs": {
    "latest": {
      "terms": {
        "field": "timestamp",
        "order": {
          "_key": "desc"
        },
        "size": 1
      },
      "aggs": {
        "latest_docs": {
          "top_hits": {
            "size": 100
          }
        }
      }
    }
  }
}

相关问题