Как запустить шаблон Nifi как часть потока приема ЦТ

У нас есть шаблон nifi, который используется для извлечения данных из реляционной базы данных SQL Server и приема каждой строки таблиц как документов в Marklogic. Теперь мы хотим добавить DH в микс и запустить шаблон nifi как часть потоков приема для заполнения промежуточной БД. Каков рекомендуемый подход для вызова шаблона nifi как части потока приема? Есть ли какой-либо другой рекомендуемый подход для извлечения данных из реляционной БД и их загрузки в Marklogic во время потока приема?

Спасибо за любую помощь.


person user7222287    schedule 07.04.2021    source источник


Ответы (2)


Самая простая интеграция здесь - запустить поток NiFi и использовать процессор PutMarkLogic для записи данных в ML - этот процессор можно найти в соединителе MarkLogic-NiFi по адресу https://github.com/marklogic/nifi/выпускает. Вы можете настроить PutMarkLogic с преобразованием REST. Вы захотите использовать преобразование mlRunIngest, описанное по адресу https://docs.marklogic.com/datahub/5.4/tools/rest/rest-extensions.html, чтобы вы могли ссылаться на конфигурацию шага приема при записи данных в ML.

person rjrudin    schedule 07.04.2021
comment
Привет, rjrudin, большое спасибо за ответ! Итак, чтобы запустить поток NiFi, нам нужно запустить его вне потока DH? у нас есть поток NiFi, уже записывающий в ML, так в чем будет разница в том, что процессор put будет вызывать преобразование REST, а не писать напрямую? это источник данных? - person user7222287; 07.04.2021
comment
Если у вас уже есть поток NiFi, который записывает в ML с помощью PutMarkLogic или PutMarkLogicRecord, вы должны настроить этот процессор PutMarkLogic для использования преобразования DHF mlRunIngest REST, которое будет применять шаг приема DHF к данным, которые вы пишете. В этом сценарии вы не запускаете поток DHF через Gradle или клиентский JAR; вы ссылаетесь на шаг приема через свой поток NiFi. - person rjrudin; 08.04.2021
comment
Обратите внимание, что преобразование REST mlRunIngest запускает только начальный этап потока, и ожидается, что это будет этап приема. - person grtjn; 10.04.2021

Сообщество NiFi обычно рекомендует заменять шаблоны на NiFi Registry, в котором есть элементы управления версиями и развертыванием. встроенные, которые намного более доступны, чем шаблоны. И шаблоны, и потоки с управлением версиями можно автоматизировать с помощью конечных точек REST в NiFi и реестре, при этом переменные рекомендуется устанавливать с помощью контекстов параметров. Вы можете использовать для этого свой собственный клиент или использовать мой клиент Python NiPyAPI.

person Chaffelson    schedule 07.04.2021