Apache NiFi-Tutorial: Was ist NiFi? Architektur & Installation

Zusammenfassung des Apache NiFi-Tutorials

Dieses Apache NiFi-Tutorial deckt alle grundlegenden bis fortgeschrittenen Themen von Grund auf ab. Sie lernen die Konzepte wie NiFi-Definition, Geschichte, Architektur, Funktionen, Installationsprozess und Anwendungsfälle kennen. Außerdem erfahren Sie, warum Sie Apache NiFi verwenden müssen und welche Best Practices für die Ausführung von Apache NiFi gelten.

Was ist Apache NiFi?

Apache NiFi ist eine Open-Source-Software zur Automatisierung und Verwaltung des Datenflusses zwischen Systemen. Es handelt sich um ein leistungsstarkes und zuverlässiges System zur Verarbeitung und Verteilung von Daten. Es bietet eine webbasierte Benutzeroberfläche zum Erstellen, Überwachen und Steuern von Datenflüssen. Es verfügt über einen hochgradig konfigurierbaren und modifizierbaren Datenflussprozess, um Daten zur Laufzeit zu ändern.

Apache NiFi ist durch die Entwicklung benutzerdefinierter Komponenten leicht erweiterbar.

Warum Apache NIfi verwenden?

Hier sind Gründe für die Verwendung von Apache Nifi:

  • Ermöglicht Ihnen die Datenaufnahme, um Daten aus zahlreichen Datenquellen in NiFi einzulesen und Flow-Dateien zu erstellen
  • Es bietet Echtzeitsteuerung, die Ihnen hilft, die Datenbewegung zwischen jeder Quelle und jedem Ziel zu verwalten
  • Visualisieren Sie DataFlow auf Unternehmensebene
  • Stellen Sie gemeinsame Tools und Erweiterungen bereit
  • Ermöglicht die Nutzung vorhandener Bibliotheken und Java ecosSystemfunktionalität
  • Hilft Organisationen bei der Integration von Nifi in ihre bestehende Infrastruktur
  • NiFi ist für die Skalierung in Clustern konzipiert, die eine garantierte Datenbereitstellung bieten
  • Visualisieren und überwachen Sie Leistung und Verhalten in einem Flow-Bulletin, das Einblicke und Inline-Dokumentation bietet
  • Hilft Ihnen, Komponenten einzeln oder auf Gruppenebene zu starten und zu stoppen
  • Es hilft Ihnen, Datenflüsse abzuhören, abzurufen, aufzuteilen, zu aggregieren, weiterzuleiten, zu transformieren und per Drag & Drop zu verschieben

Geschichte von Apache NiFi

  • Über acht Jahre lang bei der NSA entwickelt
  • 2014 – Es wurde an die Apache Software Foundation gespendet
  • 2015 – NiFi wurde offizieller Teil der Apache Project Suite
  • Seitdem veröffentlicht Apache NiFi alle 6-8 Wochen ein neues Update

NiFi-Architektur

Apache NiFi verfügt über eine durchdachte Architektur. Sobald Daten aus externen Quellen abgerufen wurden, werden sie als FlowFile in der Apache NiFi-Architektur dargestellt.

NiFi-Architektur
NiFi-Architektur

Hier sind Schlüsselkomponenten der NiFi-Architektur

Nifi-Komponente Beschreibung
FlowFile Bei FlowFile handelt es sich um Originaldaten mit angehängten Metainformationen. Damit können Sie nicht nur CSV- oder andere datensatzbasierte Daten verarbeiten, sondern auch Bilder, Videos, Audio oder andere Binärdaten.
Flowfile-Prozessor Führt die Arbeit aus, die als Baustein des Datenflusses in NiFi fungiert.
Durchflussregler Protokolliert, wie Prozesse miteinander verbunden sind. Es verwaltet die Threads und deren Zuordnungen, die alle Prozesse verwenden.
Web-Server Der Webserver hostet die HTTP-basierten Befehle und API von NiFi.
Erweiterung Es gibt viele Arten von NiFi-Erweiterungen, die innerhalb der JVM betrieben und ausgeführt werden.
Sichere Fungiert als Verbindung zwischen Prozessoren, die eine Warteschlange und Beziehungen enthalten, die sich darauf auswirken, wohin Daten weitergeleitet werden.
Gegendruck Verhindern Sie, dass das System überlastet wird, indem Sie die Menge oder Datengröße der Flow-Dateien steuern, die in der Warteschlange gespeichert werden können.
Prozessgruppe Eine Prozessgruppe ist eine Menge von Prozessen und deren Verbindungen, die mithilfe von Ports Daten empfangen und senden.
Flowfile-Repository Im FlowFile-Repository verfolgt NiFi den Status dessen, was details Es handelt sich um eine bestimmte FlowFile, die im Flow aktiv ist.
Inhalts-Repository Das Content Repository ist ein Bereich, in dem die tatsächlichen Inhaltsbytes einer bestimmten FlowFile vorhanden sind.
Provenienz-Repository Das Provenienz-Repository ist ein Bereich, in dem alle Daten zu Provenienzereignissen gesammelt werden.

Apache NiFi-Funktionen

  • NiFi unterstützt die Pufferung aller in der Warteschlange befindlichen Daten und bietet die Möglichkeit eines Gegendrucks, wenn diese Warteschlangen bestimmte Grenzen erreichen können
  • NiFi ermöglicht die Einstellung eines oder mehrerer Priorisierungsschemata
  • Stellt Verbindungsprozessoren für viele Datenquellen bereit
  • Unterstützt jedes Gerät, auf dem Java ausgeführt wird
  • Ideal für Orte mit eingeschränkter Konnektivität
  • Unterstützung bei der Fehlerbehebung und Ablaufoptimierung
  • Bietet rollenbasierte Authentifizierung/Autorisierung
  • Ermöglicht das Herunterladen, Wiederherstellen und Wiedergeben einzelner Dateien
  • Erstellen Sie Ihre Prozessoren, Controller-Dienste und mehr
  • Bieten Sie Inhaltsverschlüsselung und Kommunikation über sichere Protokolle
  • Ermöglicht eine schnelle Entwicklung und effektive Tests
  • Ermöglicht die Entwicklung einfacher Einzelfunktionskomponenten, die wiederverwendet und kombiniert werden können, um mehr Komfort zu schaffenplex fließt
  • Ermöglicht die Isolierung des Klassenladers für eine einfachere Verwaltung von Abhängigkeiten

So installieren Sie Apache NiFi

Nachfolgend finden Sie eine Schritt-für-Schritt-Anleitung für die Installation von Apache NiFi

Schritt 1) Gehen Sie zu dem Link,

und klicken Sie auf „Weiter abonnieren“

Installieren Sie Apache NiFi

Schritt 2) Auf der nächsten Seite,

Klicken Sie auf „Bedingungen akzeptieren“

Installieren Sie Apache NiFi

Schritt 3) Sie werden diese Seite sehen,

Vielen Dank, dass Sie dieses Produkt abonniert haben! Wir bearbeiten Ihre Anfrage.

Installieren Sie Apache NiFi

Schritt 4) Aktualisieren Sie die Seite nach 5 Minuten.

Klicken Sie auf „Weiter zur Konfiguration“

Installieren Sie Apache NiFi

Schritt 5) Auf der nächsten Seite,

Behalten Sie die Standardeinstellungen bei und klicken Sie auf „Weiter zum Starten“.

Installieren Sie Apache NiFi

Schritt 6) Auf der nächsten Seite,

Klicken Sie auf Starten. Möglicherweise müssen Sie einen Schlüssel erstellen

Installieren Sie Apache NiFi

Schritt 7) Sie sehen diese Erfolgsmeldung.

Glückwunsch! Eine Instanz dieser Software wurde erfolgreich auf EC2 bereitgestellt!

Installieren Sie Apache NiFi

Schritt 8) Hinweis,

Die Instanz-ID und das öffentliche DNS der EC2-Instanz

Installieren Sie Apache NiFi

Schritt 9) In der Sicherheitsgruppe

Fügen Sie die Regel für den gesamten Datenverkehr zum eingehenden und ausgehenden Datenverkehr hinzu

Installieren Sie Apache NiFi

Schritt 10) Um auf Nifi zuzugreifen,

Verwenden Sie einfach die URL

http://publicdns:808/nifi

In unserem Fall wird es

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

Mitglied: Administrator

Passwort: Instanz-ID

Installieren Sie Apache NiFi

Schritt 11) Du wirst sehen,

NiFi-Startbildschirm

Installieren Sie Apache NiFi

Nifi-Anwendungsfälle

Nachfolgend finden Sie eine Liste der Apache NiFi-Anwendungsfälle:

Branche Anwendungsbereich
Versicherungen
  • Risiko- und Underwriting-Analyse
  • Schadensanalyse
  • Nutzungsabhängige Versicherung
  • Neue Produktentwicklung
Healthcare
  • Einzelansicht des Patienten
  • Überwachung der Vitalfunktionen in Echtzeit
  • EMR-Optimierung
  • Optimierung der Lieferkette
Telekommunikation
  • Einzelansicht des Kunden
  • CDR-Analyse
  • Dynamische Bandbreitenzuweisung
Fertigung
  • Vorbeugende Wartung
  • Optimierung der Lieferkette
  • Qualitätskontrolle
Öl- und Gasindustrie
  • Echtzeit-Überwachung
  • Einzelansicht der Operation
  • Vorausschauende Instandhaltung
  • Archiv & Analyse
  • Unstrukturierte Datenklassifizierung
Finanzdienstleistungen
  • Geldwäschebekämpfung
  • Entdeckung eines Betruges
  • Risikodatenmanagement

Best Practices zum Ausführen von Apache NiFi

  • Ideal zur Trennung von Test-/Entwicklungs-/Produktionsumgebungen in NiFi
  • Sie sollten Ihren Ablauf in Prozessgruppen unterteilen
  • Verwenden Sie eine Namenskonvention, verwenden Sie Kommentare und Beschriftungen
  • Organisieren Sie Ihre Projekte in drei Teile: Aufnahme, Test und Überwachung
  • Verwenden Sie eindeutige Namen für Variablen

Nachteil von Nifi

  • Sie benötigen präzise Sicherheits- und Compliance-Kontrollen
  • Für die Arbeit mit Apache NiFi müssen Sie das zugrunde liegende System sehr gut kennen
  • Die Datenkette muss aufrechterhalten werden
  • Transport/Messaging reicht möglicherweise nicht aus
  • Der Bedarf an Datenzugriff übersteigt die verfügbaren Transportressourcen
  • Nicht alle Daten werden gleich erstellt
  • SSL und Autorisierung auf Themenebene sind möglicherweise nicht ausreichend

Zusammenfassung

  • Apache NiFi ist eine Open-Source-Software zur Automatisierung und Verwaltung des Datenflusses zwischen Systemen
  • NiFi ist für die Skalierung in Clustern konzipiert, die eine garantierte Datenbereitstellung bieten
  • Nifi wurde über acht Jahre lang bei der NSA entwickelt
  • Sobald Daten aus externen Quellen abgerufen wurden, werden sie als FlowFile in der Apache NiFi-Architektur dargestellt.
  • FlowFile, Prozessor, Controller, Webserver, Verbindung, Gegendruck, Repository sind wichtige Komponenten der NiFi-Architektur
  • Die NiFi-Ausdruckssprache unterstützt jedes Gerät, auf dem Java ausgeführt wird
  • Sie können NiFi ganz einfach auf AWS installieren
  • NiFi wird in verschiedenen Branchen eingesetzt, unter anderem im Gesundheitswesen, im Versicherungswesen, in der Telekommunikation, im verarbeitenden Gewerbe, im Finanzwesen sowie in der Öl- und Gasbranche
  • Als Best Practice gliedern Sie Ihre Projekte in drei Teile: Aufnahme, Test und Überwachung