Как загрузить несколько файлов JSON в несколько таблиц улья с правильным отображением с помощью Apache NIFI? - PullRequest
0 голосов
/ 10 апреля 2019

Мне нужно вставить несколько CSV-файлов, основанных на именах таблиц, в соответствующие таблицы кустов, используя apache nifi.данные для table_address, присутствующие в исходном json-файле, должны перейти к table_address в кусте и аналогично для других таблиц.Короче говоря, записи из исходного файла json должны быть разделены на несколько файлов csv в формате tablename.csv и загружены в соответствующие таблицы кустов.

процессоры, которые я использую, используют kafka ---> splitjson ----> definejsonpath ----> updateattribute ----> replacetext ----> putfile

Записи из источникаФайл json, полученный из испытаний kafka Golden gate, должен быть разделен на несколько файлов csv в формате tablename.csv и загружен в соответствующие таблицы кустов с использованием потока apache nifi.

1 Ответ

2 голосов
/ 10 апреля 2019

Вы можете использовать PartitionRecord процессор в NiFi.

  • Настройка служб контроллера чтения записей (json) / Writer (csv)

  • Выходной файл потока будет в csv format и на основе значения partition column вы можете сохранить данные в hive tables dynamically.

Flow:

Consume Kafka --> 
Partition Record (specify partition field) --> 
PutFile (or) PutHiveStreaming (or) PutHDFS(based on the value of partition field)
...