Tutorial Apache NiFi
Rezumatul tutorialului Apache NiFi
Acest tutorial apache NiFi acoperฤ toate subiectele de la bazฤ pรขnฤ la cele avansate de la zero. Veศi รฎnvฤศa concepte precum definiศia NiFi, istorie, arhitecturฤ, caracteristici, procesul de instalare, cazuri de utilizare. Veศi afla, de asemenea, de ce trebuie sฤ utilizaศi apache NiFi ศi cele mai bune practici de rulare a apache NiFi.
Ce este Apache NiFi?
Apache NiFi este un software open source pentru automatizarea ศi gestionarea fluxului de date รฎntre sisteme. Este un sistem puternic ศi de รฎncredere pentru procesarea ศi distribuirea datelor. Oferฤ o interfaศฤ de utilizator bazatฤ pe web pentru a crea, monitoriza ศi controla fluxurile de date. Are un proces de flux de date extrem de configurabil ศi modificabil pentru a modifica datele รฎn timpul execuศiei.
Apache NiFi este uศor de extensibil prin dezvoltarea de componente personalizate.
De ce sฤ folosiศi Apache NIfi?
Iatฤ motivele pentru a utiliza Apache Nifi:
- Vฤ permite sฤ introduceศi date pentru a extrage date รฎn NiFi, din numeroase surse de date ศi pentru a crea fiศiere de flux
- Oferฤ control รฎn timp real, care vฤ ajutฤ sฤ gestionaศi miศcarea datelor รฎntre orice sursฤ ศi destinaศie
- Vizualizaศi DataFlow la nivel de รฎntreprindere
- Furnizaศi unelte ศi extensii comune
- Vฤ permite sฤ profitaศi de bibliotecile existente ศi Java funcศionalitatea ecosistemului
- Ajutฤ organizaศiile sฤ integreze Nifi cu infrastructura lor existentฤ
- NiFi este proiectat sฤ se extindฤ รฎn clustere care oferฤ livrarea garantatฤ a datelor
- Vizualizaศi ศi monitorizaศi performanศa, comportamentul รฎntr-un buletin de flux care oferฤ informaศii ศi documentaศie inline
- Vฤ ajutฤ sฤ porniศi ศi sฤ opriศi componentele separat sau la nivel de grup
- Vฤ ajutฤ sฤ ascultaศi, sฤ preluaศi, sฤ รฎmpฤrศiศi, sฤ agregaศi, sฤ rutaศi, sฤ transformaศi ศi sฤ glisaศi ศi sฤ plasaศi Dataflow
Istoria Apache NiFi
- Dezvoltat la NSA de peste opt ani
- 2014 - A fost donat software-ului Apache Foundation
- 2015 - NiFi a devenit parte oficialฤ a Apache Project Suite
- De atunci, la fiecare 6-8 sฤptฤmรขni, Apache NiFi lanseazฤ o nouฤ actualizare
NiFi Architecturฤ
Apache NiFi are o arhitecturฤ bine gรขnditฤ. Odatฤ ce datele sunt preluate din surse externe, acestea sunt reprezentate ca FlowFile รฎn arhitectura Apache NiFi.

Iatฤ componentele cheie ale arhitecturii NiFi
| Componenta Nifi | Descriere |
|---|---|
| FlowFile | FlowFile este date originale cu meta-informaศii ataศate. Vฤ permite sฤ procesaศi nu numai CSV sau alte date bazate pe รฎnregistrare, ci ศi imagini, videoclipuri, audio sau orice alte date binare. |
| Procesor Flowfile | Efectueazฤ activitatea care acศioneazฤ ca un bloc de construcศie a fluxului de date รฎn NiFi. |
| Controler de debit | Pฤstreazฤ o evidenศฤ a modului รฎn care procesele sunt conectate. Gestioneazฤ firele ศi alocฤrile acestora pe care le folosesc toate procesele. |
| Web Server | Serverul web gฤzduieศte comenzile ศi API-ul NiFi bazate pe HTTP. |
| Extensie | Existฤ multe tipuri de extensii NiFi care funcศioneazฤ ศi se executฤ รฎn JVM. |
| Conexiune | Acศioneazฤ ca o legฤturฤ รฎntre procesoarele care conศin o coadฤ ศi relaศii care afecteazฤ locul unde sunt direcศionate datele. |
| Contrapresiune | Opriศi depฤศirea sistemului prin controlul cantitฤศii sau mฤrimii datelor ale fiศierelor de flux care pot fi stocate รฎn coadฤ. |
| Grupul de procese | Un grup de procese este un set de procese ศi conexiunile acestora, care primeศte ศi trimite date cu ajutorul porturilor. |
| Depozitul Flowfile | รn depozitul FlowFile, NiFi ศine evidenศa stฤrii detaliilor pe care le are despre un anumit FlowFile care este activ รฎn flux. |
| Depozitul de conศinut | Depozitul de conศinut este o zonฤ รฎn care existฤ octeศii de conศinut actuali ai unui anumit FlowFile. |
| Depozitul de provenienศฤ | Depozitul de provenienศฤ este o zonฤ รฎn care sunt adunate toate datele despre evenimentele de provenienศฤ. |
Caracteristici Apache NiFi
- NiFi acceptฤ stocarea รฎn tampon a tuturor datelor din coadฤ ศi oferฤ o capacitate de contra-presiune, deoarece acele cozi pot atinge limitele specificate
- NiFi permite setarea uneia sau mai multor scheme de prioritizare
- Oferฤ procesoare de conexiune pentru multe surse de date
- Suportฤ orice dispozitiv care ruleazฤ Java
- Ideal pentru locuri cu conectivitate limitatฤ
- Suport pentru depanarea ศi optimizarea fluxului
- Oferฤ autentificare/autorizare bazatฤ pe roluri
- Permite descฤrcarea, recuperarea ศi reluarea fiศierelor individuale
- Construiศi-vฤ procesoarele, serviciile de controlor ศi multe altele
- Oferiศi criptare a conศinutului, comunicare prin protocoale securizate
- Permite o dezvoltare rapidฤ ศi testare eficientฤ
- Permite dezvoltarea de componente simple cu o singurฤ funcศie care pot fi reutilizate ศi combinate pentru a face fluxuri mai complexe
- Permite izolarea classloader-ului pentru o gestionare mai uศoarฤ a dependenศelor
Cum se instaleazฤ Apache NiFi
Mai jos este un proces pas cu pas pentru instalarea Apache NiFi
Pas 1) Acceseazฤ link-ul,
ศi faceศi clic pe โContinuaศi sฤ vฤ abonaศiโ
Pas 2) Pe pagina urmฤtoare,
Faceศi clic pe โAcceptaศi termeniiโ
Pas 3) Veศi vedea aceastฤ paginฤ,
Vฤ mulศumim cฤ v-aศi abonat la acest produs! Procesฤm solicitarea dvs.
Pas 4) Reรฎmprospฤtaศi pagina dupฤ 5 minute.
Faceศi clic pe โContinuaศi la configurareโ
Pas 5) Pe pagina urmฤtoare,
Pฤstraศi setฤrile implicite ศi faceศi clic pe โContinuaศi pentru a lansaโ
Pas 6) Pe pagina urmฤtoare,
Faceศi clic pe Lansare. Poate fi necesar sฤ creaศi o cheie
Pas 7) Veศi vedea acest mesaj de succes.
Felicitฤri! O instanศฤ a acestui software este implementatฤ cu succes pe EC2!
Pas 8) Notฤ,
ID-ul instanศei ศi DNS-ul public al instanศei EC2
Pas 9) รn grupul de securitate,
Adฤugaศi toate regulile de trafic la intrare ศi la ieศire
Pas 10) Pentru a accesa Nifi,
pur ศi simplu utilizaศi adresa URL
http://publicdns:8080/nifi
รn cazul nostru devine
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
Utilizator:admin
Parolฤ: ID instanศฤ
Pas 11) Vei vedea,
Ecranul de pornire NiFi
Cazuri de utilizare Nifi
Mai jos este o listฤ de cazuri de utilizare Apache NiFi:
| Industrie | Folosire |
|---|---|
| Asigurฤri |
|
| Sฤnฤtate |
|
| Telecomunicaลฃie |
|
| Producศie |
|
| Industria petrolului ศi gazelor |
|
| Servicii financiare |
|
Cele mai bune practici Rularea Apache NiFi
- Ideal pentru a separa mediile de testare/dezvoltare/producศie รฎn NiFi
- Ar trebui sฤ vฤ รฎmpฤrศiศi fluxul รฎn grupuri de procese
- Utilizaศi o convenศie de denumire, utilizaศi comentarii ศi etichete
- Organizaศi-vฤ proiectele รฎn trei pฤrศi asimilare, testare ศi monitorizare
- Utilizaศi nume unice pentru variabilฤ
Dezavantajul Nifi
- Aveศi nevoie de controale precise de securitate ศi conformitate
- Trebuie sฤ cunoaศteศi foarte bine sistemul de bazฤ รฎn timp ce lucraศi cu Apache NiFi
- Trebuie sฤ menศinฤ lanศul de custodie pentru date
- Transportul/Meseria poate sฤ nu fie suficient
- Nevoile de acces la date depฤศesc resursele disponibile pentru transport
- Nu toate datele sunt create รฎn mod egal
- SSL ศi autorizarea la nivel de subiect ar putea sฤ nu fie suficiente
Rezumat
- Apache NiFi este un software open source pentru automatizarea ศi gestionarea fluxului de date รฎntre sisteme
- NiFi este proiectat sฤ se extindฤ รฎn clustere care oferฤ livrarea garantatฤ a datelor
- Nifi a fost dezvoltat la NSA timp de peste opt ani
- Odatฤ ce datele sunt preluate din surse externe, acestea sunt reprezentate ca FlowFile รฎn arhitectura Apache NiFi.
- FlowFile, procesor, controler, server web, conexiune, contra-presiune, depozit sunt componente importante ale arhitecturii NiFi
- Limbajul de expresie NiFi acceptฤ orice dispozitiv care ruleazฤ Java
- Puteศi instala cu uศurinศฤ NiFi pe AWS
- NiFi este utilizat รฎn diverse industrii, cum ar fi asistenศa medicalฤ, asigurฤri, telecomunicaศii, producศie, finanศe, petrol ศi gaze, printre altele
- Ca cea mai bunฤ practicฤ, organizaศi-vฤ proiectele รฎn trei pฤrศi asimilare, testare ศi monitorizare











