Урок за Apache NiFi

⚡ Умно обобщение

Урокът за Apache NiFi обяснява платформата с отворен код за интеграция на данни, предназначена за автоматизиран и надежден поток между системите. LessОбхващат архитектура, процесори, терминология, функции, инсталация, случаи на употреба, предимства, недостатъци и най-добри практики за производствени внедрявания.

  • 🔁 Дизайн, базиран на потока: NiFi използва визуално платно, за да изгражда потоци от данни от конфигурируеми процесори, свързани чрез маршрутизирани опашки.
  • 🏗️ Разпределени Archiтекстура: Уеб сървърът, контролерът на потока и хранилищата се комбинират за мащабируемо и отказоустойчиво движение на данни.
  • Богата библиотека на процесора: Стотици процесори обработват Kafka, MQTT, REST API, бази данни, файлови системи и облачни източници.
  • 🔒 Силна сигурност: TLS, многонаемателското удостоверяване и криптираните хранилища налагат управление на корпоративните данни.
  • 📊 Произход от край до край: Всеки FlowFile е tracпренася се от източника до местоназначението за одит, отстраняване на грешки и съответствие.
  • 🤖 Готовност за AI тръбопровод: Комбинирайте NiFi с крайни точки на LLM и векторни бази данни за работни процеси за генериране, допълнени с извличане на данни.

Урок за Apache NiFi

Резюме на урока за Apache NiFi

Този урок за Apache NiFi обхваща всички основни до напреднали теми от нулата. Ще научите понятия като NiFi дефиниция, история, архитектура, функции, процес на инсталиране, случаи на употреба. Ще научите също защо трябва да използвате apache NiFi и най-добрите практики за стартиране на apache NiFi.

Какво е Apache NiFi?

Apache NiFi е софтуер с отворен код за автоматизиране и управление на потока от данни между системите. Това е мощна и надеждна система за обработка и разпространение на данни. Той предоставя уеб базиран потребителски интерфейс за създаване, наблюдение и контрол на потоци от данни. Той има силно конфигурируем и модифицируем процес на поток от данни за модифициране на данни по време на изпълнение.

Apache NiFi е лесно разширим чрез разработване на персонализирани компоненти.

Защо да използвате Apache NIfi?

Ето причините да използвате Apache Nifi:

  • Позволява ви да извършвате поглъщане на данни, за да изтегляте данни в NiFi от многобройни източници на данни и да създавате поточни файлове
  • Той предлага контрол в реално време, който ви помага да управлявате движението на данни между всеки източник и дестинация
  • Визуализирайте DataFlow на корпоративно ниво
  • Осигурете общи инструменти и разширения
  • Позволява ви да се възползвате от съществуващите библиотеки и Java функционалност на екосистемата
  • Помага на организациите да интегрират Nifi с тяхната съществуваща инфраструктура
  • NiFi е проектиран да се мащабира в клъстери, които предлагат гарантирана доставка на данни
  • Визуализирайте и наблюдавайте производителността, поведението в поток бюлетин, който предлага представа и вградена документация
  • Помага ви да стартирате и спирате компоненти поотделно или на ниво група
  • Помага ви да слушате, извличате, разделяте, обобщавате, маршрутизирате, трансформирате и плъзгате и пускате Dataflow

История на Apache NiFi

  • Разработено в NSA повече от осем години
  • 2014- Беше дарено на софтуера Apache Foundation
  • 2015 - NiFi стана официална част от Apache Project Suite
  • Оттогава на всеки 6-8 седмици Apache NiFi пуска нова актуализация

NiFi Archiтекстура

Apache NiFi има добре обмислена архитектура. След като данните бъдат извлечени от външни източници, те се представят като FlowFile в архитектурата на Apache NiFi.

NiFi Archiтекстура
NiFi Archiтекстура

Ето ключовите компоненти на NiFi архитектурата

Nifi компонент Descriptйон
FlowFile FlowFile са оригинални данни с прикачена към тях метаинформация. Позволява ви да обработвате не само CSV или други данни, базирани на записи, но и снимки, видеоклипове, аудио или други двоични данни.
Flowfile процесор Извършва работата, която действа като градивен елемент на потока от данни в NiFi.
Контролер на потока Поддържа запис за това как процесите са свързани. Той управлява нишките и техните разпределения, които всички процеси използват.
Web Server Уеб сървърът хоства базираните на HTTP команди и API на NiFi.
Разширение Има много видове NiFi разширения, които работят и се изпълняват в JVM.
Връзка Действа като връзка между процесори, които съдържат опашка и връзка(и), която влияе къде се маршрутизират данните.
Обратно налягане Спрете системата да бъде претоварена, като контролирате количеството или размера на данните на файловете с поток, които могат да се съхраняват в опашката.
Група процеси Група процеси е набор от процеси и техните връзки, който получава и изпраща данни с помощта на портове.
Хранилище на Flowfile В хранилището на FlowFile, NiFi съхранява track на състоянието на това какви подробности има за даден FlowFile, който е активен в потока.
Хранилище на съдържание Хранилището на съдържанието е област, където съществуват действителните байтове съдържание на даден FlowFile.
Произходно хранилище Хранилището за произход е област, където се събират всички данни за събития за произход.

Функции на Apache NiFi

  • NiFi поддържа буфериране на всички данни в опашка и предлага възможност за обратно налягане, тъй като тези опашки могат да достигнат определени граници
  • NiFi позволява настройка на една или повече схеми за приоритизиране
  • Осигурява процесори за връзка за много източници на данни
  • Поддържа всяко устройство, което работи Java
  • Идеален за места с ограничена свързаност
  • Поддръжка за отстраняване на проблеми и оптимизиране на потока
  • Предлага базирано на роли удостоверяване/упълномощаване
  • Позволява изтегляне, ��ъзстановяване и възпроизвеждане на отделни файлове
  • Изградете вашите процесори, услуги за контролер и много други
  • Осигурете криптиране на съдържание, комуникация по защитени протоколи
  • Позволява бързо развитие и ефективно тестване
  • Позволява разработването на прости еднофункционални компоненти, които могат да се използват повторно и комбинират, за да се направят по-сложни потоци
  • Позволява изолиране на зареждащия клас за по-лесно управление на зависимостите

Как да инсталирате Apache NiFi

По-долу е даден процес стъпка по стъпка за инсталиране на Apache NiFi

Стъпка 1) Отиди връзката,

и щракнете върху „Продължете да се абонирате“

Инсталирайте Apache NiFi

Стъпка 2) На следващата страница,

Кликнете върху „Приемам условията“

Инсталирайте Apache NiFi

Стъпка 3) Ще видите тази страница,

Благодарим ви, че се абонирахте за този продукт! Ние обработваме вашата заявка.

Инсталирайте Apache NiFi

Стъпка 4) Обновете страницата след 5 минути.

Кликнете върху „Напред към конфигурацията“

Инсталирайте Apache NiFi

Стъпка 5) На следващата страница,

Запазете настройките по подразбиране и щракнете върху „Продължете към стартиране“

Инсталирайте Apache NiFi

Стъпка 6) На следващата страница,

Кликнете върху Стартиране. Може да се наложи да създадете ключ

Инсталирайте Apache NiFi

Стъпка 7) Ще видите това съобщение за успех.

честито! Екземпляр на този софтуер е успешно внедрен на EC2!

Инсталирайте Apache NiFi

Стъпка 8) Забележка,

Идентификаторът на екземпляра и публичният DNS на екземпляра EC2

Инсталирайте Apache NiFi

Стъпка 9) В групата за сигурност,

Добавете правило за целия трафик към входящ и изходящ

Инсталирайте Apache NiFi

Стъпка 10) За достъп до Nifi,

просто използвайте URL

http://publicdns:8080/nifi

В нашия случай става

http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/

Потребител: администратор

Парола: Идентификационен номер на екземпляр

Инсталирайте Apache NiFi

Стъпка 11) ще видиш,

Начален екран на NiFi

Инсталирайте Apache NiFi

Случаи на използване на Nifi

По-долу е даден списък на случаите на използване на Apache NiFi:

Индустрия употреба
Застраховка
  • Анализ на риска и подписването
  • Анализ на искове
  • Застраховка въз основа на употребата
  • Разработка на нов продукт
Здравеопазване
  • Единичен изглед на пациента
  • Наблюдение на жизнените показатели в реално време
  • EMR оптимизация
  • Оптимизация на веригата за доставки
телекомуникация
  • Единичен изглед на клиента
  • CDR анализ
  • Динамично разпределение на честотната лента
производство
  • Превантивна поддръжка
  • Оптимизация на веригата за доставки
  • Контрол на качеството
Петролна и газова промишленост
  • Мониторинг в реално време
  • Единичен изглед на OperaАЦИ
  • Прогнозна поддръжка
  • Archive & Анализи
  • Класификация на неструктурирани данни
Финансови услуги
  • Против прането на пари
  • Откриване на измами
  • Управление на риска - данни

Най-добри практики Изпълнение на Apache NiFi

  • Идеален за разделяне на среди за тестване/разработване/производство в NiFi
  • Трябва да разделите потока си на групи процеси
  • Използвайте конвенция за именуване, използвайте коментари и етикети
  • Организирайте проектите си в три части: приемане, тестване и наблюдение
  • Използвайте уникални имена за променлива

Недостатък на Nifi

  • Нуждаете се от прецизен контрол за сигурност и съответствие
  • Трябва да познавате много добре основната система, докато работите с Apache NiFi
  • Трябва да поддържате верига за съхранение на данните
  • Транспортът / Съобщенията може да не са достатъчни
  • Нуждите за достъп до данни надхвърлят наличните ресурси за транспортиране
  • Не всички данни се създават еднакво
  • SSL и оторизацията на ниво тема може да не са достатъчни

Въпроси и Отговори

NiFi предоставя визуален поток от данни с нисък код, с вградено маршрутизиране и трансформация. Kafka е гръбнак на съобщенията; Airflow оркестрира пакетни задачи. NiFi често премества данни между Kafka и низходящи дестинации.

Да. NiFi приема стрийминг данни, извиква крайни точки на модели и насочва прогнозите към хранилище. С Kafka, MiNiFi и векторни бази данни, той изгражда цялостни работни процеси за генериране на данни с изкуствен интелект и подобрено извличане.

Инструментите с изкуствен интелект предлагат вериги от процесори, генерират фрагменти от език за изрази и обясняват модели на потоци. Те ускоряват разработката и помагат на начинаещите да разберат конфигурацията и логиката на маршрутизацията на NiFi.

FlowFile представлява данни, които се движат през NiFi. Той съдържа съдържание плюс атрибути като метаданни, произход и информация за маршрутизация, които процесорите използват за вземане на решения в рамките на поток от данни.

NiFi поддържа TLS, многонаемателно удостоверяване, LDAP, Kerberos, OIDC и криптирани хранилища. Политиките, базирани на роли, ограничават кой може да преглежда, променя или управлява специфични потоци от данни.

NiFi се мащабира хоризонтално с клъстери, вертикално чрез добавяне на ядра и чрез опашки за обратно налягане. MiNiFi агентите на периферията предават данни в централен NiFi клъстер.

NiFi е пълноценен сървър с богат уеб интерфейс за проектиране на потоци от данни. MiNiFi е лек агент, който работи на периферията и препраща данни към NiFi.

Начинаещите изграждат първия си поток за дни. Овладяването на клъстеризацията, сигурността, персонализираните процесори и настройването на висока производителност отнема от два до четири месеца опит в производствени проекти.

Обобщете тази публикация с: