Задать вопрос
@immelnikoff
Изучаю БД

Может ли Grafana напрямую слать запросы в табличку на hdfs и рисовать временной ряд?

На hdfs есть табличка (обычно дергаю из неё данные в hive). Необходимо периодически выполнять sql-запрос к этой табличке и добавлять результат к графику временного ряда в Grafana.
Встают 2 вопроса:
1) Может ли Grafana напрямую работать с hdfs? Интуиция мне подсказывает, что нужен какой-то посредник, который будет хранить данные рассчитанного временного ряда.
2) Что обычно используют в качестве посредника между hdfs и Grafana? Логика подсказывает, что для расчёта и вывода временных рядов нужна какая-нибудь TSDB, например, Prometheus. А можно ли использовать отдельную табличку на hdfs для этих целей?
  • Вопрос задан
  • 77 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 3
Grafana только отправляет запросы к какой-то третьей системе и рисует. Она не отвечает за хранение временного ряда.
Сейчас погуглил - везде для мониторинга состояния hadoop кластера использую Prometheus.
В вашем случае я бы так и попробовал - пихать данные из этой таблички в prometheus
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev
software engineer
Поищите плагин для hdfs

Штатно есть плагин для постгреса, можно делать запросы в него напрямую.
Есть плагин для монго, но только в ентерпрайз версии (платный), бесплатный опенсорсный плагин для монги совсем плохой, вплоть до нерабочести.
Вместе с графаной обычно идет influxdb, можно в нее данные накидывать.

про hdfs надо гуглить, вдруг есть плагин.
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
А можно ли использовать отдельную табличку на hdfs для этих целей?

На самом деле вопрос звучит неправильно. HDFS это просто биг-датавская файловая система
и ей безразлично таблички на ней лижат или вообще какие-то рандомные файлы.

Для стриминга информации действительно подходит связка Graphana + Prometeus + InfluxDb.
Но тут дальше непонятно какой-такой посредник тебе нужен. Такие посредники существуют
для Kafka/Cassandra и они называются коннекторы. Они льют информацию из очереди
в таблички и наоборот (там есть правда условие). Но опять-же твою постановку надо грумить
очень глубоко вплоть до объемов данных и лагов и условий чтобы понять что на самом деле надо.

На hdfs есть табличка (обычно дергаю из неё данные в hive).

По роду постановки - это очень близко к микро-батчингу или стримингу. Но я пока не вижу
какой стек ты используешь. Обычно к стримингу ближе идут Spark/Databricks/Flink/Storm.
У них хотя-бы существует терминология стриминга. Вот а hive - это точно не про стриминг.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы