Учебное пособие по Apache NiFi: что такое NiFi? Archiтектура и установка

Краткое описание руководства Apache NiFi

В этом руководстве по Apache NiFi с нуля рассматриваются все базовые и сложные темы. Вы узнаете concepts как определение NiFi, история, archiтектура, возможности, процесс установки, варианты использования. Вы также узнаете, почему вам нужно использовать Apache NiFi и лучшие практики использования Apache NiFi.

Что такое Apache NiFi?

Апач НиФи — это программное обеспечение с открытым исходным кодом для автоматизации и управления потоком данных между системами. Это мощная и надежная система обработки и распространения данных. Он предоставляет веб-интерфейс пользователя для создания, мониторинга и управления потоками данных. Он имеет легко настраиваемый и модифицируемый процесс потока данных для изменения данных во время выполнения.

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

Зачем использовать Apache NIfi?

Вот причины использования Apache Nifi:

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

История Apache NiFi

  • Разрабатывался в АНБ более восьми лет.
  • 2014 г. — передан в дар Apache Software. Foundation
  • 2015 — NiFi стала официальной частью Apache Project Suite.
  • С тех пор каждые 6-8 недель Apache NiFi выпускает новое обновление.

НиФи Archiтекстура

Apache NiFi имеет хорошо продуманную archiтектура. Как только данные извлекаются из внешних источников, они представляются как FlowFile внутри Apache NiFi. archiтектура.

НиФи Archiтекстура
НиФи Archiтекстура

Вот ключевые компоненты NiFi archiтекстура

Нифи Компонент Описание
FlowFile FlowFile — это исходные данные с прикрепленной к ним метаинформацией. Он позволяет обрабатывать не только CSV или другие данные на основе записей, но также изображения, видео, аудио или любые другие двоичные данные.
Процессор потоковых файлов Выполняет работу, которая выступает в качестве строительного блока потока данных в NiFi.
Контроллер потока Сохраняет информацию о том, как связаны процессы. Он управляет потоками и их распределением, которые используют все процессы.
веб-сервер На веб-сервере размещаются HTTP-команды и API NiFi.
Расширение Существует множество типов расширений NiFi, которые operate и выполнить внутри JVM.
Связь Действует как связь между процессорами, содержащими очередь и отношения, влияющие на маршрутизацию данных.
Противодавление Предотвратите переполнение системы, контролируя количество или размер данных потоковых файлов, которые могут храниться в очереди.
Группа процессов Группа процессов — это набор процессов и их соединений, которые получают и отправляют данные с помощью портов.
Репозиторий потоковых файлов В репозитории FlowFile NiFi отслеживает состояние того, что деtails у него есть определенный FlowFile, который активен в потоке.
Репозиторий контента Репозиторий содержимого — это область, в которой существуют фактические байты содержимого данного FlowFile.
Репозиторий происхождения Репозиторий Provenance — это область, где собираются все данные о событиях происхождения.

Возможности Apache NiFi

  • НиФи поддерживает bufferобработки всех данных в очереди и предлагает возможность противодавления, поскольку эти очереди могут достичь определенных пределов.
  • NiFi позволяет устанавливать одну или несколько схем приоритезации.
  • Предоставляет процессоры соединений для многих источников данных.
  • Поддержка любого устройства, работающего под управлением Java
  • Идеально подходит для мест с ограниченным доступом
  • Поддержка устранения неполадок и оптимизации потока
  • Предлагает аутентификацию/авторизацию на основе ролей.
  • Позволяет загружать, восстанавливать и воспроизводить отдельные файлы.
  • Создавайте свои процессоры, службы контроллеров и многое другое.
  • Обеспечить шифрование контента, связь по безопасным протоколам
  • Обеспечивает быструю разработку и эффективное тестирование.
  • Позволяет разрабатывать простые однофункциональные компоненты, которые можно повторно использовать и комбинировать для создания более удобных компонентов.plex потоки
  • Позволяет изолировать загрузчик классов для упрощения управления зависимостями.

Как установить Apache NiFi

Ниже приведен пошаговый процесс установки Apache NiFi.

Шаг 1) Перейдите на связь,

и нажмите «Продолжить подписку»

Установить Апач НиФи

Шаг 2) На следующей странице

Нажмите «Принять условия»

Установить Апач НиФи

Шаг 3) Вы увидите эту страницу,

Спасибо за подписку на этот продукт! Мы обрабатываем Ваш запрос.

Установить Апач НиФи

Шаг 4) Обновите страницу через 5 минут.

Нажмите «Продолжить настройку».

Установить Апач НиФи

Шаг 5) На следующей странице

Оставьте настройки по умолчанию и нажмите «Продолжить запуск».

Установить Апач НиФи

Шаг 6) На следующей странице

Нажмите «Запустить». Возможно, вам придется создать ключ

Установить Апач НиФи

Шаг 7) Вы увидите это сообщение об успехе.

Поздравляем! Экземпляр этого программного обеспечения успешно развертывается.yed на EC2!

Установить Апач НиФи

Шаг 8) Заметка,

Идентификатор экземпляра и общедоступный DNS экземпляра EC2.

Установить Апач НиФи

Шаг 9) В группе безопасности

Добавить все правила трафика для входящего и исходящего трафика

Установить Апач НиФи

Шаг 10) Чтобы получить доступ к Нифи,

просто используйте URL-адрес

http://publicdns:808/nifi

В нашем случае это становится

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

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

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

Установить Апач НиФи

Шаг 11) Ты увидишь,

Главный экран НиФи

Установить Апач НиФи

Варианты использования Нифи

Ниже приведен список вариантов использования Apache NiFi:

Промышленный дизайн Применение
Страхование
  • Анализ рисков и андеррайтинга
  • Аналитика претензий
  • Страхование на основе использования
  • Разработка нового продукта
HealthCare
  • Единый вид пациента
  • Мониторинг жизненно важных показателей в режиме реального времени
  • Оптимизация ЭМИ
  • Оптимизация цепочки поставок
телекоммуникация
  • Единый взгляд на клиента
  • CDR-анализ
  • Динамическое распределение полосы пропускания
Производство
  • Профилактическое обслуживание
  • Оптимизация цепочки поставок
  • Контроль качества
Нефтегазовая промышленность
  • Мониторинг в режиме реального времени
  • Единый вид на Operaпроизводство
  • Предиктивное обслуживание
  • Archiве и аналитика
  • Классификация неструктурированных данных
Финансовые услуги
  • Борьба с обмыванием денег
  • Обнаружение мошенничества
  • Управление риск-данными

Рекомендации по использованию Apache NiFi

  • Идеально подходит для разделения сред тестирования, разработки и производства в NiFi.
  • Вам следует разбить поток на группы процессов.
  • Используйте соглашение об именах, используйте комментарии и метки.
  • Разделите свои проекты на три части: прием, тестирование и мониторинг.
  • Используйте уникальные имена для переменных

Недостаток Нифи

  • Нужен точный контроль безопасности и соответствия требованиям
  • При работе с Apache NiFi вам необходимо очень хорошо знать базовую систему.
  • Должен поддерживать цепочку поставок данных
  • Транспорт/Обмен сообщениями может оказаться недостаточным
  • Потребности в доступе к данным превышают доступные ресурсы для транспортировки
  • Не все данные создаются одинаково
  • Авторизация на уровне SSL и темы может оказаться недостаточной.

Итого

  • Apache NiFi — это программное обеспечение с открытым исходным кодом для автоматизации и управления потоком данных между системами.
  • NiFi предназначен для масштабирования в clusterкоторые предлагают гарантированную доставку данных
  • Nifi разрабатывался в АНБ более восьми лет.
  • Как только данные извлекаются из внешних источников, они представляются как FlowFile внутри Apache NiFi. archiтектура.
  • FlowFile, процессор, контроллер, веб-сервер, соединение, противодавление, хранилище — важные компоненты NiFi. archiтекстура
  • Язык выражений NiFi поддерживает любое устройство, работающее под управлением Java.
  • Вы можете легко установить NiFi на AWS.
  • NiFi используется в различных отраслях, таких как здравоохранение, страхование, телекоммуникации, производство, финансы, нефть и газ и других.
  • Рекомендуется разделить ваши проекты на три части: прием, тестирование и мониторинг.