Elasticsearch:最大长值聚合

时间:2015-02-03 09:27:15

标签: java elasticsearch max long-integer aggregation

我将64位Twitter-ID存储在Elasticsearch文档的长字段中:

"tweetId": {
  "type": "long"
}

我想使用Max aggregation来获取最大ID。不幸的是我只得到Double值(f.ex。5.6253962514387763E17)而不是我的Long Id而且我丢失了最后的数字。

是否可以获得具有完全精度的Long字段的最大值?

我正在使用Elasticsearch 1.4.2和Java客户端。

1 个答案:

答案 0 :(得分:0)

与评论中的建议相似,不应使用max,而应将top_hitssorting一起使用。

唯一的区别是您应该保留字段long,而不是像建议的那样将其更改为string

{
  "size": 0,
  "aggs": {
    "last_crawl_id_item": {
      "top_hits": {
        "size": 1,
        "sort": [
          {
            "id": "desc"
          }
        ]
      }
    }
  }
}