Apache NiFi Tutorial: Hvad er NiFi? Archikonstruktion og installation
Apache NiFi Tutorial Resumé
Denne apache NiFi-tutorial dækker alle de grundlæggende til avancerede emner fra bunden. Du vil lære begreber som NiFi-definition, historie, arkitektur, funktioner, installationsproces, use cases. Du vil også lære, hvorfor du skal bruge apache NiFi og de bedste fremgangsmåder for at køre apache NiFi.
Hvad er Apache NiFi?
Apache NiFi er en open source software til automatisering og styring af dataflowet mellem systemer. Det er et kraftfuldt og pålideligt system til at behandle og distribuere data. Det giver webbaseret brugergrænseflade til at oprette, overvåge og kontrollere datastrømme. Det har en meget konfigurerbar og modificerbar dataflowproces til at ændre data under kørsel.
Apache NiFi kan nemt udvides gennem udvikling af brugerdefinerede komponenter.
Hvorfor bruge Apache NIfi?
Her er grunde til at bruge Apache Nifi:
- Giver dig mulighed for at foretage dataindtagelse for at trække data ind i NiFi fra adskillige datakilder og oprette flowfiler
- Det tilbyder kontrol i realtid, som hjælper dig med at styre bevægelsen af data mellem enhver kilde og destination
- Visualiser DataFlow på virksomhedsniveau
- Sørg for fælles værktøj og udvidelser
- Giver dig mulighed for at drage fordel af eksisterende biblioteker og Java økosystems funktionalitet
- Hjælper organisationer med at integrere Nifi med deres eksisterende infrastruktur
- NiFi er designet til at skalere ud i klynger, som tilbyder garanteret levering af data
- Visualiser og overvåg ydeevne, adfærd i en flowbulletin, der tilbyder indsigt og inline-dokumentation
- Hjælper dig med at starte og stoppe komponenter separat eller på gruppeniveau
- Det hjælper dig med at lytte, hente, opdele, samle, rute, transformere og trække og slippe Dataflow
Historien om Apache NiFi
- Udviklet hos NSA i over otte år
- 2014- Det blev doneret til Apache-softwaren Foundation
- 2015- NiFi blev en officiel del af Apache Project Suite
- Siden da hver 6.-8. uge udgiver Apache NiFi en ny opdatering
NiFi Architecture
Apache NiFi har en gennemtænkt arkitektur. Når data er hentet fra eksterne kilder, er det repræsenteret som FlowFile inde i Apache NiFi-arkitekturen.
Her er nøglekomponenterne i NiFi-arkitekturen
Nifi komponent | Description |
---|---|
FlowFile | FlowFile er originale data med metainformation knyttet til det. Det giver dig mulighed for at behandle ikke kun CSV eller andre optagelsesbaserede data, men også billeder, videoer, lyd eller andre binære data. |
Flowfil processor | Udfører arbejdet, der fungerer som en byggesten af dataflow i NiFi. |
Flow controller | Registrerer, hvordan processer er forbundet. Den administrerer trådene og allokeringerne deraf, som alle processer bruger. |
web-server | Webserveren er vært for NiFis HTTP-baserede kommandoer og API. |
Extension | Der er mange typer af NiFi-udvidelser, som fungerer og udføres i JVM. |
Forbindelse | Fungerer som en forbindelse mellem processorer, der indeholder en kø og relation(er), som påvirker, hvor data rutes. |
Rygpres | Stop systemet med at blive overrendt ved at kontrollere mængden eller datastørrelsen af flowfiler, der kan gemmes i køen. |
Procesgruppe | En procesgruppe er et sæt af processer og deres forbindelser, som modtager og sender data ved hjælp af porte. |
Flowfile Repository | I FlowFile Repository holder NiFi styr på tilstanden af, hvilke detaljer den har om en given FlowFile, som er aktiv i flowet. |
Indholdsarkiv | Indholdslagret er et område, hvor de faktiske indholdsbytes for en given FlowFile findes. |
Herkomstdepot | Herkomstdepotet er et område, hvor alle herkomsthændelsesdata er indsamlet. |
Apache NiFi-funktioner
- NiFi understøtter buffering af alle data i kø og giver mulighed for modtryk, da disse køer kan nå specificerede grænser
- NiFi tillader indstilling af en eller flere prioriteringsordninger
- Giver forbindelsesprocessorer til mange datakilder
- Understøtte enhver enhed, der kører Java
- Ideel til steder med begrænset tilslutning
- Support til fejlfinding og flowoptimering
- Tilbyder rollebaseret godkendelse/autorisation
- Tillader download, gendannelse og genafspilning af individuelle filer
- Byg dine processorer, controllertjenester og mere
- Giv indholdskryptering, kommunikation over sikre protokoller
- Muliggør hurtig udvikling og effektiv test
- Giver mulighed for udvikling af simple enkeltfunktionskomponenter, der kan genbruges og kombineres for at lave mere komplekse flows
- Tillader isolering af klasseindlæser for lettere styring af afhængigheder
Sådan installeres Apache NiFi
Nedenfor er en trinvis proces til Apache NiFi-installation
Trin 1) Gå til forbindelsen,
og klik på "Fortsæt med at abonnere"
Trin 2) På næste side,
Klik på "Accepter vilkår"
Trin 3) Du vil se denne side,
Tak, fordi du abonnerer på dette produkt! Vi behandler din anmodning.
Trin 4) Opdater siden efter 5 minutter.
Klik på "Fortsæt til konfiguration"
Trin 5) På næste side,
Behold standardindstillingerne, og klik på "Fortsæt til start"
Trin 6) På næste side,
Klik på Start. Du skal muligvis oprette en nøgle
Trin 7) Du vil se denne succesmeddelelse.
Tillykke! En forekomst af denne software er implementeret med succes på EC2!
Trin 8) Bemærk,
Forekomst-id'et og den offentlige DNS for EC2-forekomsten
Trin 9) I sikkerhedsgruppen,
Føj al trafikregel til indgående og udgående
Trin 10) For at få adgang til Nifi,
brug blot URL'en
http://publicdns:8080/nifi
I vores tilfælde bliver det
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
Bruger:admin
Adgangskode: Forekomst-id
Trin 11) Du vil se,
NiFi-hjemmeskærm
Nifi Use Cases
Nedenfor er en liste over Apache NiFi-brugstilfælde:
Industri | Brug |
---|---|
Forsikring |
|
HealthCare |
|
Telekommunikation |
|
Produktion |
|
Olie & Gas- Industri |
|
Financial Services |
|
Bedste øver sig i at køre Apache NiFi
- Ideel til at adskille test/dev/produktionsmiljøer i NiFi
- Du bør opdele dit flow i procesgrupper
- Brug en navnekonvention, brug kommentarer og etiketter
- Organiser dine projekter i tre dele indtagelse, test og overvågning
- Brug unikke navne til variable
Ulempen ved Nifi
- Har brug for præcise sikkerheds- og overholdelseskontroller
- Du skal kende det underliggende system meget godt, mens du arbejder med Apache NiFi
- Skal opretholde chain of custody for data
- Transport/beskeder er muligvis ikke nok
- Behovet for dataadgang overstiger de tilgængelige ressourcer til transport
- Ikke alle data er skabt lige
- SSL- og emneniveau-autorisation er muligvis ikke tilstrækkelig
Resumé
- Apache NiFi er en open source-software til automatisering og styring af datastrømmen mellem systemer
- NiFi er designet til at skalere ud i klynger, som tilbyder garanteret levering af data
- Nifi blev udviklet hos NSA i over otte år
- Når data er hentet fra eksterne kilder, er det repræsenteret som FlowFile inde i Apache NiFi-arkitekturen.
- FlowFile, processor, controller, webserver, forbindelse, modtryk, repository er vigtige komponenter i NiFi-arkitekturen
- NiFi-udtrykssprog understøtter enhver enhed, der kører Java
- Du kan nemt installere NiFi på AWS
- NiFi bruges i forskellige industrier såsom sundhedspleje, forsikring, telekom, fremstilling, finans, olie og gas blandt andre
- Som en bedste praksis skal du organisere dine projekter i tre dele indtagelse, test og overvågning