Elastic Search Query количество новых и вернувшихся пользователей - PullRequest
0 голосов
/ 31 октября 2019

Учитывая временной интервал, я хочу знать, сколько пользователей являются новыми пользователями и сколько пользователей возвращают пользователей.

Мое сопоставление индекса поиска Elastic содержит поле user_id, event_time и т. Д.

например, учитывая запись (user_id: jack, event_time: 2019-10-31 00: 00: 00: 000). Если user_id не существует в течение последних 2 недель (с 2019-10-17 по 00: 00: 00: 000 до 2019-10-31 по 00: 00: 00: 000), то мы рассматриваем запись с user_id 'jack'новый пользовательВ противном случае он считается возвращающимся пользователем.

Мне было интересно, поддерживает ли Elastic Search такой запрос, который может подсказать количество новых и возвращающихся пользователей?

Заранее спасибо!

1 Ответ

0 голосов
/ 31 октября 2019

Я думаю, вы могли бы использовать для этого агрегирование диапазона.

{
  "aggs": {
    "activity": {
      "range": {
        "field": "event_time",
        "ranges": [
          { "to": "now-2w/d" },
          { "from": "now-2w/d" }
        ]
      }
    }
  }
}

Это должно пройти по всему вашему индексу и создать два сегмента на основе времени события. Один для всего, что старше двух недель, другой для всего, что новее двух недель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...