Загрузка данных CSV в Hive с использованием NiFi - PullRequest
0 голосов
/ 16 мая 2019

Я пытаюсь вставить данные CSV в базу данных Hive. для этой цели

я пробовал с

listFile --> FetchFile --> ConvertCSVToAvro --> ConvertAvroToOrc --> PutHDFS

CSV-данные преобразуются в формат ORC, а данные загружаются в HDFS. Помимо данных HDFS я могу создать внешнюю таблицу улья.

Теперь я хочу протестировать с putHiveQL Процессором.

для этого мне нужно преобразовать данные CSV в AVRO в JSON?

Данные ORC не могут быть загружены непосредственно в Hive?

если да, мы должны создать таблицу Hive вручную или она будет создана автоматически?

1 Ответ

1 голос
/ 16 мая 2019

Мы можем создать таблицу Hive в самом потоке NiFi .

ConvertAvroToOrc процессор добавляет атрибут hive.ddl к потоковым файлам, используя этот атрибут, который мы можем создать в Hive.с использованием процессора PutHiveQL.

listFile --> FetchFile --> ConvertCSVToAvro --> ConvertAvroToOrc --> PutHDFS -->
 ReplaceText(Always replace with ${hive.ddl}) --> PutHiveQL

См. this Я подробно объяснил поток NiFi для динамического создания таблиц / разделов в улье.

  • Once ORC данные загружаются в HDFS, затем создают таблицу поверх каталога HDFS.
  • Используя SelectHiveQL для чтения данных из таблицы и на основеoutput format(csv,avro), выбранный в процессоре, приводит к потоковому файлу в этом формате.
...