Підручник з 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
Компонент 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) Перейдіть до посилання,
і натисніть «Продовжити підписку»
Крок 2) На наступній сторінці,
Натисніть «Прийняти умови»
Крок 3) Ви побачите цю сторінку,
Дякуємо за підписку на цей продукт! Ми обробляємо ваш запит.
Крок 4) Оновіть сторінку через 5 хвилин.
Натисніть «Продовжити до налаштування»
Крок 5) На наступній сторінці,
Залиште налаштування за замовчуванням і натисніть «Продовжити до запуску»
Крок 6) На наступній сторінці,
Натисніть Запустити. Можливо, вам знадобиться створити ключ
Крок 7) Ви побачите це повідомлення про успіх.
Щиро вітаю! Екземпляр цього програмного забезпечення успішно розгорнуто на EC2!
Крок 8) Примітка,
Ідентифікатор екземпляра та загальнодоступний DNS екземпляра EC2
Крок 9) У групі безпеки,
Додайте правило всього трафіку для вхідного та вихідного
Крок 10) Щоб отримати доступ до Nifi,
просто використовуйте URL-адресу
http://publicdns:8080/nifi
У нашому випадку це робиться
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
користувач: адмін
Пароль: ідентифікатор екземпляра
Крок 11) Ти побачиш,
Домашній екран NiFi
Випадки використання Nifi
Нижче наведено список випадків використання Apache NiFi:
Промисловість | Використання |
---|---|
Страхування |
|
Охорона здоров'я |
|
телекомунікація |
|
Manufacturing |
|
Нафтогазова промисловість |
|
Фінансові послуги |
|
Найкращі практики Запуск Apache NiFi
- Ідеально підходить для розділення тестових/розробних/виробничих середовищ у NiFi
- Ви повинні розділити свій потік на групи процесів
- Використовуйте правила імен, коментарі та мітки
- Розділіть свої проекти на три частини: прийом, тестування та моніторинг
- Використовуйте унікальні імена для змінних
Недолік Nifi
- Потрібен точний контроль безпеки та відповідності
- Під час роботи з Apache NiFi вам потрібно дуже добре знати базову систему
- Необхідно підтримувати ланцюжок зберігання даних
- Транспорт / обмін повідомленнями може виявитися недостатнім
- Потреби в доступі до даних перевищують доступні ресурси для транспортування
- Не всі дані створюються однаково
- SSL і авторизації на рівні теми може бути недостатньо
Підсумки
- Apache NiFi — це програмне забезпечення з відкритим кодом для автоматизації та керування потоком даних між системами
- NiFi розроблено для масштабування в кластерах, які пропонують гарантовану доставку даних
- Nifi розроблявся в NSA більше восьми років
- Після отримання даних із зовнішніх джерел вони представлені як FlowFile всередині архітектури Apache NiFi.
- FlowFile, процесор, контролер, веб-сервер, підключення, зворотний тиск, репозиторій є важливими компонентами архітектури NiFi
- Мова експресії NiFi підтримує будь-який пристрій, який працює Java
- Ви можете легко встановити NiFi на AWS
- NiFi використовується в різних галузях, таких як охорона здоров'я, страхування, телекомунікації, виробництво, фінанси, нафтогаз та ін.
- Як найкраща практика, організуйте свої проекти на три частини: прийом, тестування та моніторинг