Дата гистограмма уникальных значений

Я использую Elasticsearch 2.3, и для каждой веб-страницы, которую пользователь посещает на моем веб-сайте, я создаю запись с идентификатором сеанса пользователя и текущей отметкой времени.
Поэтому у меня есть несколько записей с одинаковым идентификатором сеанса, но с другой отметкой времени.
Я Я пытаюсь создать date_histogram с уникальными идентификаторами сеансов из записей пользователей.

Создать гистограмму без уникальности легко:

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

Но возможно ли иметь такую ​​гистограмму дат с уникальными значениями (например, с первым появлением каждого уникального идентификатора сеанса)?


person ItayD    schedule 29.08.2016    source источник


Ответы (1)


Попробуй это

{
  "size": 0,
  "aggs": {
    "users_sessions": {
      "date_histogram": {
        "field": "date",
        "interval": "1h",
        "min_doc_count": 0
      },
        "aggs": {
        "3": {
          "cardinality": {
            "field": "session_id"
          }
        }
      }
    }
  }
}

Параметр cardinality получает уникальные идентификаторы сеансов в час.

person Kenan Duman    schedule 29.05.2018