Как структурировать данные вasticsearch для почасовых посетителей - PullRequest
2 голосов
/ 07 июня 2019

Я борюсь с тем, как структурировать мои данные вasticsearch. У меня есть один номер в час.

Так будет примерно так:

2018-01-01T03:00:00 - 280

То есть 280 посетителей за 3 часа ночи. Я запутался в том, как поместить все это в эластичный поиск. Должно ли все это быть в одном индексе и в одном документе как один длинный файл?

Это будет показано на графике в Кибане, если это поможет.

1 Ответ

2 голосов
/ 07 июня 2019

Вы можете создать один индекс с двумя полями: date & count. Пусть тип документа будет _doc.

Чтобы создать индекс и поместить в него документ с _id как 1:

PUT test/_doc/1
{
  "date":"2018-01-01T03:00:00",
  "count": 280
}

Вы можете повторить это, чтобы поместить все данные, которые вы хотите добавить. Например, если данные выглядят примерно так:

[ { "_index" : "test", "_type" : "_doc", "_id" : "1", "_score" : 1.0, "_source" : { "date" : "2018-01-01T03:00:00", "count" : 280 } }, { "_index" : "test", "_type" : "_doc", "_id" : "2", "_score" : 1.0, "_source" : { "date" : "2018-02-01T03:00:00", "count" : 1312 } }, { "_index" : "test", "_type" : "_doc", "_id" : "3", "_score" : 1.0, "_source" : { "date" : "2018-03-01T03:00:00", "count" : 124 } }, { "_index" : "test", "_type" : "_doc", "_id" : "5", "_score" : 1.0, "_source" : { "date" : "2018-05-01T03:00:00", "count" : 34 } }, { "_index" : "test", "_type" : "_doc", "_id" : "7", "_score" : 1.0, "_source" : { "date" : "2018-01-01T03:00:00", "count" : 280 } } ]

Затем вы можете визуализировать счет за месяц, например:

enter image description here

Добавить ведро как:

enter image description here

PS: эластичный поиск имеет date_detection, включенный по умолчанию, поэтому строка даты будет автоматически сохранена как тип даты.

Надеюсь, это поможет.

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