Как сохранить таблицу улья в NiFi DistributedMapCache - PullRequest
0 голосов
/ 24 мая 2018

Я хочу сохранить свою таблицу улья / MySQL в NiFi DistributedMapCache.Может кто-нибудь, пожалуйста, помогите мне с примером?

Или, пожалуйста, поправьте меня, если мы не можем кэшировать таблицу улья в любом случае в кеше NiFi.

Спасибо

1 Ответ

0 голосов
/ 25 мая 2018

Вы можете использовать SelectHiveQL процессор для извлечения данных из таблицы Hive и формата вывода как CSV и включения заголовка как false . *Процессор 1009 *

SplitText для разделения каждой строки как отдельного файла потока.

Примечание если размер вашего файла потока большой, то вам нужноиспользуйте серии процессоров разделения текста последовательно для разделения потокового файла на каждую строку отдельно

ExtractText процессор для извлечения атрибута ключа из содержимого потокового файла.

PutDistributedMapCache процессор

Настроить / включить DistributedMapCacheClientService, DistributedMapCacheServer служба контроллера.

Добавитьсвойство идентификатора записи кэша в качестве вашего извлеченного атрибута из процессора ExtractText.

Вам необходимо изменить максимальный размер записи кэша в зависимости от размера файла потока.

Чтобы извлечь кэшированные данные, вы можетеse FetchDistributedMapCache процессор, и нам нужно использовать то же самое точное значение для идентификатора, который мы кэшировали в PutDistributedMapCache

enter image description here

Точно так же, если вы хотите загрузить данные из внешних источников , поскольку у нас будут данные в формате Avro, используйте ConvertRecord процессор для преобразования Avro ->Формат CSV затем загружает данные в распределенный кеш.

Однако не рекомендуется загружать все данные в distribmapcache для огромных наборов данных, так как вы также можете использовать процессор lookuprecord.

...