我正在使用Elasticsearch 2.3,对于用户访问我的网站的每个网页,我都会生成一条包含用户 session ID和当前时间戳的记录,因此我几乎没有相同 session ID但时间戳不同的记录。
我正在尝试使用用户记录中的唯一 session ID创建date_histogram

创建没有唯一性的直方图很容易:

{
    "aggs" : {
        "users_sessions" : {
            "date_histogram" : {
                "field" : "date",
                "interval" : "1h"
            }
        }
    }
}

但是,是否可以使用具有唯一值的日期直方图(例如,每个唯一 session ID的首次出现)?

最佳答案

试试这个

{
  "size": 0,
  "aggs": {
    "users_sessions": {
      "date_histogram": {
        "field": "date",
        "interval": "1h",
        "min_doc_count": 0
      },
        "aggs": {
        "3": {
          "cardinality": {
            "field": "session_id"
          }
        }
      }
    }
  }
}
cardinality参数每小时获取唯一的 session ID。

关于elasticsearch - 唯一值的日期直方图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39206978/

10-10 17:42
查看更多