Apache NiFi-Tutorial: Was ist NiFi? Architektur & Installation
Zusammenfassung des Apache NiFi-Tutorials
Dieses Apache NiFi-Tutorial behandelt alle grundlegenden und fortgeschrittenen Themen von Grund auf. Sie lernen Konzepte wie NiFi-Definition, Geschichte, Architektur, Funktionen, Installationsprozess und Anwendungsfälle kennen. Sie erfahren auch, 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 Ökosystemfunktionalität
- Hilft Organisationen bei der Integration von Nifi in ihre bestehende Infrastruktur
- NiFi ist für die Skalierung in Clustern konzipiert, die eine garantierte Datenübertragung 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 Apache Software gespendet Foundation
- 2015 – NiFi wurde offizieller Teil der Apache Project Suite
- Seitdem veröffentlicht Apache NiFi alle 6-8 Wochen ein neues Update
es sei denn Architektur
Apache NiFi hat eine gut durchdachte Architektur. Sobald Daten aus externen Quellen abgerufen werden, werden sie innerhalb der Apache NiFi-Architektur als FlowFile dargestellt.
Hier sind die 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 ausgeführt werden. |
Verbindung | 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 der Details, die es zu einem bestimmten FlowFile hat, das 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 die Warteschlange gestellten Daten und bietet die Möglichkeit des 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 alle Geräte, auf denen Java
- 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 komplexere Abläufe zu erstellen
- 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“
Schritt 2) Auf der nächsten Seite,
Klicken Sie auf „Bedingungen akzeptieren“
Schritt 3) Sie werden diese Seite sehen,
Vielen Dank, dass Sie dieses Produkt abonniert haben! Wir bearbeiten Ihre Anfrage.
Schritt 4) Aktualisieren Sie die Seite nach 5 Minuten.
Klicken Sie auf „Weiter zur Konfiguration“
Schritt 5) Auf der nächsten Seite,
Behalten Sie die Standardeinstellungen bei und klicken Sie auf „Weiter zum Starten“.
Schritt 6) Auf der nächsten Seite,
Klicken Sie auf Starten. Möglicherweise müssen Sie einen Schlüssel erstellen
Schritt 7) Sie sehen diese Erfolgsmeldung.
Herzlichen Glückwunsch! Eine Instanz dieser Software wurde erfolgreich auf EC2 bereitgestellt!
Schritt 8) Hinweis,
Die Instanz-ID und das öffentliche DNS der EC2-Instanz
Schritt 9) In der Sicherheitsgruppe
Fügen Sie die Regel für den gesamten Datenverkehr zum eingehenden und ausgehenden Datenverkehr hinzu
Schritt 10) Um auf Nifi zuzugreifen,
Verwenden Sie einfach die URL
http://publicdns:8080/nifi
In unserem Fall wird es
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
Mitglied: Administrator
Passwort: Instanz-ID
Schritt 11) Du wirst sehen,
NiFi-Startbildschirm
Nifi-Anwendungsfälle
Nachfolgend finden Sie eine Liste der Apache NiFi-Anwendungsfälle:
Branche | Anwendungsbereich |
---|---|
Versicherung |
|
Healthcare |
|
Telekommunikation |
|
Fertigung |
|
Öl- und Gasindustrie |
|
Finanzdienstleistungen |
|
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 Datenübertragung bieten
- Nifi wurde über acht Jahre lang bei der NSA entwickelt
- Sobald Daten aus externen Quellen abgerufen werden, werden sie innerhalb der Apache NiFi-Architektur als FlowFile dargestellt.
- FlowFile, Prozessor, Controller, Webserver, Verbindung, Gegendruck, Repository sind wichtige Komponenten der NiFi-Architektur
- Die Ausdruckssprache NiFi unterstützt jedes Gerät, auf dem Java
- 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