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.

NiFi Architecturฤƒ
NiFi Architecturฤƒ

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โ€

Instalaศ›i Apache NiFi

Pas 2) Pe pagina urmฤƒtoare,

Faceศ›i clic pe โ€žAcceptaศ›i termeniiโ€

Instalaศ›i Apache NiFi

Pas 3) Veศ›i vedea aceastฤƒ paginฤƒ,

Vฤƒ mulศ›umim cฤƒ v-aศ›i abonat la acest produs! Procesฤƒm solicitarea dvs.

Instalaศ›i Apache NiFi

Pas 4) Reรฎmprospฤƒtaศ›i pagina dupฤƒ 5 minute.

Faceศ›i clic pe โ€žContinuaศ›i la configurareโ€

Instalaศ›i Apache NiFi

Pas 5) Pe pagina urmฤƒtoare,

Pฤƒstraศ›i setฤƒrile implicite ศ™i faceศ›i clic pe โ€žContinuaศ›i pentru a lansaโ€

Instalaศ›i Apache NiFi

Pas 6) Pe pagina urmฤƒtoare,

Faceศ›i clic pe Lansare. Poate fi necesar sฤƒ creaศ›i o cheie

Instalaศ›i Apache NiFi

Pas 7) Veศ›i vedea acest mesaj de succes.

Felicitฤƒri! O instanศ›ฤƒ a acestui software este implementatฤƒ cu succes pe EC2!

Instalaศ›i Apache NiFi

Pas 8) Notฤƒ,

ID-ul instanศ›ei ศ™i DNS-ul public al instanศ›ei EC2

Instalaศ›i Apache NiFi

Pas 9) รŽn grupul de securitate,

Adฤƒugaศ›i toate regulile de trafic la intrare ศ™i la ieศ™ire

Instalaศ›i Apache NiFi

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ศ›ฤƒ

Instalaศ›i Apache NiFi

Pas 11) Vei vedea,

Ecranul de pornire NiFi

Instalaศ›i Apache NiFi

Cazuri de utilizare Nifi

Mai jos este o listฤƒ de cazuri de utilizare Apache NiFi:

Industrie Folosire
Asigurฤƒri
  • Analizฤƒ de risc ศ™i subscriere
  • Analiza revendicฤƒrilor
  • Asigurare bazatฤƒ pe utilizare
  • Dezvoltarea de produse noi
Sฤƒnฤƒtate
  • Vedere unicฤƒ a pacientului
  • Monitorizare รฎn timp real a semnelor vitale
  • Optimizarea EMR
  • Optimizarea lanศ›ului de aprovizionare
Telecomunicaลฃie
  • Vizualizare unicฤƒ a clientului
  • Analiza CDR
  • Alocarea dinamicฤƒ a lฤƒศ›imii de bandฤƒ
Producศ›ie
  • Intretinere preventiva
  • Optimizarea lanศ›ului de aprovizionare
  • Controlul calitฤƒศ›ii
Industria petrolului ศ™i gazelor
  • Monitorizarea รฎn timp real
  • Vedere unicฤƒ a OperaTION
  • รŽntreศ›inere predictivฤƒ
  • Archive & Analytics
  • Clasificarea datelor nestructurate
Servicii financiare
  • รŽmpotriva spฤƒlฤƒrii de bani
  • Frauda- Detectare
  • Risc- gestionarea datelor

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

Rezumaศ›i aceastฤƒ postare cu: