Какое лучшее решение NOSQL для данных журнала временных рядов

#hbase #time-series #schema #nosql

#hbase #временные ряды #схема #nosql

Вопрос:

Мне нужен совет по выбору решения NOSQL и по разработке схемы для моих данных. Сейчас я рассматриваю Hbase, но если вы считаете, что это не лучший выбор, пожалуйста, дайте мне совет.

У меня около 10 ТБ (немного меньше) данных журнала в текстовом виде. Формат примерно такой.

| key1 | key2 | timestamp | column1 | column2 | column3 | column 4 |

Ниже приведены мои требования.

  1. Мне нужно извлечь данные с помощью {key1, key2}, и результатом будет массив {timestamp, column1} или массив {timestamp, columnN}. размер каждого массива не будет превышать тысячи.
  2. Необходимо извлечь данные с фильтром диапазона дат.
  3. Количество уникальных ключей key1 может превышать миллиард. вот почему размер данных такой большой.
  4. к столбцам 1 и 2 вряд ли можно обращаться вместе.
  5. Размер результирующего массива со временем будет увеличиваться, поэтому мне нужно очистить некоторые старые данные. (значение столбца не будет изменено, но будет удалено по истечении срока действия данных.)

Теперь я считаю, что схема выглядит следующим образом.

rowkey - | key1, key2 |
column family - column1_type, column2_type , ..... , columnN_type
column - key :timestamp, value: columnN_value

У меня нет опыта работы с Hbase. Совет будет очень полезен, спасибо.

Ответ №1:

Доступно существующее решение под названием OpenTSDB, которое обрабатывает данные временных рядов. OpenTSDB — это масштабируемая распределенная база данных временных рядов. Он использует HBase для хранения и извлечения данных временных рядов.