Apache NiFi bemutató: Mi az a NiFi? Architecture & Installation

Apache NiFi oktatóanyag összefoglalója

Ez az apache NiFi oktatóanyag a semmiből lefedi az összes alapvető és haladó témát. Megtanulja az olyan fogalmakat, mint a NiFi definíciója, története, architektúrája, jellemzői, telepítési folyamata, használati esetei. Azt is megtudhatja, hogy miért kell az apache NiFi-t használni, és megtudhatja az apache NiFi futtatásának legjobb gyakorlatait.

Mi az Apache NiFi?

Apache NiFi egy nyílt forráskódú szoftver a rendszerek közötti adatáramlás automatizálására és kezelésére. Ez egy hatékony és megbízható rendszer az adatok feldolgozására és terjesztésére. Webalapú felhasználói felületet biztosít az adatfolyamok létrehozásához, figyeléséhez és vezérléséhez. Rendelkezik egy nagymértékben konfigurálható és módosítható adatfolyam-folyamattal az adatok futás közbeni módosításához.

Az Apache NiFi egyszerűen bővíthető egyedi komponensek fejlesztésével.

Miért érdemes Apache NIfi-t használni?

Íme az Apache Nifi használatának okai:

  • Lehetővé teszi az adatfeldolgozást, hogy adatokat vonjon be a NiFi-be, számos adatforrásból, és folyamatfájlokat hozzon létre
  • Valós idejű vezérlést kínál, amely segít kezelni az adatok mozgását bármely forrás és cél között
  • Vizualizálja a DataFlow-t vállalati szinten
  • Biztosítson közös szerszámokat és bővítményeket
  • Lehetővé teszi, hogy kihasználja a meglévő könyvtárak és Java ökoszisztéma funkcionalitása
  • Segít a szervezeteknek integrálni a Nifi-t meglévő infrastruktúrájukkal
  • A NiFi-t úgy tervezték, hogy a fürtökben skálázható legyen, amelyek garantált adattovábbítást kínálnak
  • Vizualizálja és figyelje a teljesítményt és a viselkedést egy folyamatközleményben, amely betekintést és beépített dokumentációt kínál
  • Segíti az összetevők külön-külön vagy csoportszintű indítását és leállítását
  • Segít meghallgatni, lekérni, felosztani, összesíteni, irányítani, átalakítani és áthúzni az adatfolyamot

Az Apache NiFi története

  • Az NSA-nál több mint nyolc évig fejlesztették
  • 2014- Az Apache szoftvernek adományozták Foundation
  • 2015 – A NiFi az Apache Project Suite hivatalos részévé vált
  • Azóta 6-8 hetente az Apache NiFi új frissítést ad ki

NiFi Architectúra

Az Apache NiFi jól átgondolt architektúrával rendelkezik. A külső forrásokból származó adatok lekérése után FlowFile-ként jelennek meg az Apache NiFi architektúrán belül.

NiFi Architectúra
NiFi Architectúra

Íme a NiFi architektúra kulcsfontosságú összetevői

Nifi komponens Leírás
FlowFile A FlowFile eredeti adat metainformációkkal. Nemcsak CSV vagy más rekord alapú adatok feldolgozását teszi lehetővé, hanem képeket, videókat, hangot vagy bármilyen más bináris adatot is.
Flowfile processzor Elvégzi azt a munkát, amely az adatáramlás építőköveként működik a NiFi-ben.
Áramlásszabályozó Nyilvántartást vezet a folyamatok összekapcsolásáról. Kezeli az összes folyamat által használt szálakat és allokációikat.
web szerver A webszerver a NiFi HTTP-alapú parancsait és API-ját tartalmazza.
Kiterjesztés Számos NiFi-bővítmény létezik, amelyek a JVM-en belül működnek és futnak.
csatlakozás Kapcsolatként működik a sort tartalmazó processzorok és a kapcsolat(ok) között, amely befolyásolja az adatok továbbítását.
Ellennyomás A sorban tárolható folyamatfájlok mennyiségének vagy adatméretének szabályozásával akadályozza meg a rendszer túlterheltségét.
Folyamat csoport A folyamatcsoport folyamatok és kapcsolataik összessége, amely portok segítségével fogad és küld adatokat.
Flowfile Repository A FlowFile Repository-ban a NiFi nyomon követi, hogy milyen adatokkal rendelkezik az adott folyamatban aktív FlowFile-ról.
Tartalomtár A Content Repository egy olyan terület, ahol az adott FlowFile tényleges tartalombájtjai léteznek.
Származási Adattár A származási adattár egy olyan terület, ahol minden származási esemény adatot összegyűjtenek.

Apache NiFi funkciók

  • A NiFi támogatja az összes sorban álló adat pufferelését, és ellennyomást biztosít, mivel ezek a sorok elérhetik a meghatározott határokat
  • A NiFi lehetővé teszi egy vagy több prioritási séma beállítását
  • Számos adatforráshoz biztosít csatlakozási processzorokat
  • Támogatja az összes működő eszközt Java
  • Ideális korlátozott csatlakozási lehetőséggel rendelkező helyekhez
  • Támogatás a hibaelhárításhoz és az áramlásoptimalizáláshoz
  • Szerepalapú hitelesítést/engedélyezést kínál
  • Lehetővé teszi az egyes fájlok letöltését, helyreállítását és visszajátszását
  • Építse fel processzorait, vezérlőszolgáltatásait és még sok mást
  • Biztosítsa a tartalom titkosítását, a kommunikációt biztonságos protokollokon keresztül
  • Gyors fejlesztést és hatékony tesztelést tesz lehetővé
  • Lehetővé teszi egyszerű egyfunkciós komponensek fejlesztését, amelyek újrafelhasználhatók és kombinálhatók összetettebb áramlások létrehozásához
  • Lehetővé teszi az osztálybetöltő elkülönítését a függőségek könnyebb kezelése érdekében

Az Apache NiFi telepítése

Az alábbiakban lépésről lépésre bemutatjuk az Apache NiFi telepítésének folyamatát

Step 1) Ugrás a kapcsolat,

és kattintson a „Tovább a feliratkozásra” gombra

Telepítse az Apache NiFi-t

Step 2) A következő oldalon

Kattintson a „Feltételek elfogadása” gombra

Telepítse az Apache NiFi-t

Step 3) Látni fogja ezt az oldalt,

Köszönjük, hogy feliratkozott erre a termékre! Kérelmét feldolgozzuk.

Telepítse az Apache NiFi-t

Step 4) Frissítse az oldalt 5 perc múlva.

Kattintson a „Tovább a konfigurációhoz” gombra

Telepítse az Apache NiFi-t

Step 5) A következő oldalon

Tartsa meg az alapértelmezett beállításokat, és kattintson a „Tovább az indításhoz” gombra.

Telepítse az Apache NiFi-t

Step 6) A következő oldalon

Kattintson az Indítás gombra. Lehet, hogy kulcsot kell létrehoznia

Telepítse az Apache NiFi-t

Step 7) Látni fogja ezt a sikerüzenetet.

Gratulálok! Ennek a szoftvernek egy példánya sikeresen telepítve van az EC2-n!

Telepítse az Apache NiFi-t

Step 8) Jegyzet,

Az EC2 példány példányazonosítója és nyilvános DNS-e

Telepítse az Apache NiFi-t

Step 9) A biztonsági csoportban

Adja hozzá az összes forgalmi szabályt a bejövő és a kimenőhöz

Telepítse az Apache NiFi-t

Step 10) A Nifi eléréséhez

egyszerűen használja az URL-t

http://publicdns:8080/nifi

A mi esetünkben azzá válik

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

használó:admin

Jelszó: Példányazonosító

Telepítse az Apache NiFi-t

Step 11) Meglátod,

NiFi kezdőképernyő

Telepítse az Apache NiFi-t

Nifi használati esetek

Az alábbiakban felsoroljuk az Apache NiFi használati eseteit:

Ipar Használat
Biztosítás
  • Kockázat- és kockázatelemzés
  • Claims Analytics
  • Használat alapú biztosítás
  • Új termék fejlesztés
Egészségügy
  • Egyetlen nézet a páciensről
  • Valós idejű életjel-figyelés
  • EMR optimalizálás
  • Ellátási lánc optimalizálása
Távközlés
  • Az ügyfél egyetlen nézete
  • CDR elemzés
  • Dinamikus sávszélesség-kiosztás
Gyártás
  • Megelőző karbantartás
  • Ellátási lánc optimalizálása
  • Minőség-ellenőrzés
Olaj- és gázipar
  • Valós idejű megfigyelés
  • Egyetlen nézet a OperaCIÓ
  • Prediktív karbantartás
  • Archive & Analytics
  • Strukturálatlan adatosztályozás
Pénzügyi szolgáltatások
  • Pénzmosás elleni
  • Csalások felderítése
  • Kockázat-adatkezelés

Bevált gyakorlatok Apache NiFi futtatása

  • Ideális a tesztelési/fejlesztői/gyártási környezetek szétválasztására NiFi-ben
  • A folyamatot folyamatcsoportokra kell bontania
  • Használjon elnevezési konvenciót, használjon megjegyzéseket és címkéket
  • Szervezze projektjeit három részre: feldolgozás, tesztelés és megfigyelés
  • Használjon egyedi neveket a változókhoz

A Nifi hátránya

  • Pontos biztonsági és megfelelőségi ellenőrzésekre van szükség
  • Az Apache NiFi-vel végzett munka során nagyon jól ismernie kell a mögöttes rendszert
  • Fenn kell tartania az adatok felügyeleti láncát
  • Előfordulhat, hogy a szállítás/üzenetküldés nem elég
  • Az adathozzáférési igény meghaladja a szállításhoz rendelkezésre álló erőforrásokat
  • Nem minden adat egyformán jön létre
  • Előfordulhat, hogy az SSL és témaszintű engedélyezés nem elegendő

Összegzésként

  • Az Apache NiFi egy nyílt forráskódú szoftver a rendszerek közötti adatáramlás automatizálására és kezelésére
  • A NiFi-t úgy tervezték, hogy a fürtökben skálázható legyen, amelyek garantált adattovábbítást kínálnak
  • A Nifi-t több mint nyolc évig fejlesztették az NSA-nál
  • A külső forrásokból származó adatok lekérése után FlowFile-ként jelennek meg az Apache NiFi architektúrán belül.
  • A FlowFile, a processzor, a vezérlő, a webszerver, a kapcsolat, az ellennyomás, a repository a NiFi architektúra fontos összetevői
  • A NiFi kifejezési nyelv minden futó eszközt támogat Java
  • Könnyedén telepítheti a NiFi-t az AWS-re
  • A NiFi-t különféle iparágakban használják, például egészségügyben, biztosításban, távközlésben, gyártásban, pénzügyekben, olajban és gázban.
  • A legjobb gyakorlat szerint projektjeit három részre szervezheti: feldolgozás, tesztelés és megfigyelés