Підручник з 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 розроблено для масштабування в кластерах, які пропонують гарантовану доставку даних
  • Візуалізуйте та відстежуйте продуктивність, поведінку в бюлетені потоку, який пропонує розуміння та вбудовану документацію
  • Допомагає запускати та зупиняти компоненти окремо або на рівні групи
  • Це допомагає вам прослуховувати, отримувати, розділяти, агрегувати, маршрутизувати, перетворювати та перетягувати потік даних

Історія 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 Опис
FlowFile FlowFile — це вихідні дані з приєднаною до них метаінформацією. Це дозволяє обробляти не тільки CSV або інші дані на основі записів, але також зображення, відео, аудіо або будь-які інші двійкові дані.
Процесор Flowfile Виконує роботу, яка є будівельним блоком потоку даних у NiFi.
Контролер потоку Веде облік того, як підключаються процеси. Він керує потоками та їх виділеннями, які використовують усі процеси.
веб-сервер Веб-сервер містить команди та API NiFi на основі HTTP.
Розширення Існує багато типів розширень NiFi, які працюють і виконуються в JVM.
Connection Діє як зв’язок між процесорами, які містять чергу, і зв’язками, які впливають на те, куди маршрутизуються дані.
Зворотний тиск Зупиніть перевантаження системи, контролюючи кількість або розмір даних файлів потоку, які можна зберігати в черзі.
Група процесів Група процесів - це набір процесів і їх зв'язків, який приймає і відправляє дані за допомогою портів.
Репозиторій Flowfile У репозиторії FlowFile NiFi відстежує стан інформації про певний 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:

Промисловість Використання
Страхування
  • Аналіз ризиків і андеррайтингу
  • Аналітика претензій
  • Страхування на основі використання
  • Розробка нового вироби
Охорона здоров'я
  • Один вид пацієнта
  • Моніторинг життєво важливих показників у реальному часі
  • Оптимізація ЕМВ
  • Оптимізація ланцюга поставок
телекомунікація
  • Поодинокий погляд замовника
  • CDR аналіз
  • Динамічний розподіл пропускної здатності
Manufacturing
  • Профілактичне обслуговування
  • Оптимізація ланцюга поставок
  • Контроль якості
Нафтогазова промисловість
  • Моніторинг у реальному часі
  • Єдиний вид на Operaції
  • Прогнозне обслуговування
  • Archive & Analytics
  • Класифікація неструктурованих даних
Фінансові послуги
  • Анти-відмивання грошей
  • Шахрайство - виявлення
  • Управління ризиками

Найкращі практики Запуск Apache NiFi

  • Ідеально підходить для розділення тестових/розробних/виробничих середовищ у NiFi
  • Ви повинні розділити свій потік на групи процесів
  • Використовуйте правила імен, коментарі та мітки
  • Розділіть свої проекти на три частини: прийом, тестування та моніторинг
  • Використовуйте унікальні імена для змінних

Недолік Nifi

  • Потрібен точний контроль безпеки та відповідності
  • Під час роботи з Apache NiFi вам потрібно дуже добре знати базову систему
  • Необхідно підтримувати ланцюжок зберігання даних
  • Транспорт / обмін повідомленнями може виявитися недостатнім
  • Потреби в доступі до даних перевищують доступні ресурси для транспортування
  • Не всі дані створюються однаково
  • SSL і авторизації на рівні теми може бути недостатньо

Підсумки

  • Apache NiFi — це програмне забезпечення з відкритим кодом для автоматизації та керування потоком даних між системами
  • NiFi розроблено для масштабування в кластерах, які пропонують гарантовану доставку даних
  • Nifi розроблявся в NSA більше восьми років
  • Після отримання даних із зовнішніх джерел вони представлені як FlowFile всередині архітектури Apache NiFi.
  • FlowFile, процесор, контролер, веб-сервер, підключення, зворотний тиск, репозиторій є важливими компонентами архітектури NiFi
  • Мова експресії NiFi підтримує будь-який пристрій, який працює Java
  • Ви можете легко встановити NiFi на AWS
  • NiFi використовується в різних галузях, таких як охорона здоров'я, страхування, телекомунікації, виробництво, фінанси, нафтогаз та ін.
  • Як найкраща практика, організуйте свої проекти на три частини: прийом, тестування та моніторинг