Apache NiFi Tutorial: Vad är NiFi? Architecture & installation
Sammanfattning av Apache NiFi Tutorial
Denna apache NiFi-handledning täcker alla grundläggande till avancerade ämnen från grunden. Du kommer att lära dig begreppen som NiFi-definition, historia, arkitektur, funktioner, installationsprocess, användningsfall. Du kommer också att lära dig varför du behöver använda apache NiFi och de bästa metoderna för att köra apache NiFi.
Vad är Apache NiFi?
Apache NiFi är en programvara med öppen källkod för att automatisera och hantera dataflödet mellan system. Det är ett kraftfullt och pålitligt system för att bearbeta och distribuera data. Det tillhandahåller ett webbaserat användargränssnitt för att skapa, övervaka och kontrollera dataflöden. Den har en mycket konfigurerbar och modifierbar dataflödesprocess för att modifiera data vid körning.
Apache NiFi är lätt att bygga ut genom utveckling av anpassade komponenter.
Varför använda Apache NIfi?
Här är skälen till att använda Apache Nifi:
- Låter dig göra dataintag för att hämta data till NiFi, från många datakällor och skapa flödesfiler
- Den erbjuder kontroll i realtid som hjälper dig att hantera rörelsen av data mellan valfri källa och destination
- Visualisera DataFlow på företagsnivå
- Tillhandahåll gemensamma verktyg och förlängningar
- Låter dig dra nytta av befintliga bibliotek och Java ekosystemfunktionalitet
- Hjälper organisationer att integrera Nifi med sin befintliga infrastruktur
- NiFi är designat för att skala ut i kluster som erbjuder garanterad leverans av data
- Visualisera och övervaka prestanda, beteende i en flödesbulletin som erbjuder insikt och inline-dokumentation
- Hjälper dig att starta och stoppa komponenter separat eller på gruppnivå
- Det hjälper dig att lyssna, hämta, dela, aggregera, dirigera, transformera och dra och släppa Dataflow
Historia om Apache NiFi
- Utvecklad på NSA i över åtta år
- 2014- Den donerades till Apache-mjukvaran Foundation
- 2015- NiFi blev en officiell del av Apache Project Suite
- Sedan dess var 6-8 vecka släpper Apache NiFi en ny uppdatering
såvida inte Architecture
Apache NiFi har en genomtänkt arkitektur. När data väl har hämtats från externa källor representeras den som FlowFile i Apache NiFi-arkitekturen.
Här är nyckelkomponenterna i NiFi-arkitekturen
Nifi-komponent | Description |
---|---|
Flödesfil | FlowFile är originaldata med metainformation bifogad. Det låter dig bearbeta inte bara CSV eller annan postbaserad data, utan även bilder, videor, ljud eller andra binära data. |
Flowfile-processor | Utför arbetet som fungerar som en byggsten för dataflödet i NiFi. |
Flödesregulator | Håller ett register över hur processer hänger ihop. Den hanterar trådarna och allokeringarna därav som alla processer använder. |
web server | Webbservern är värd för NiFis HTTP-baserade kommandon och API. |
Förlängning | Det finns många typer av NiFi-tillägg som fungerar och körs inom JVM. |
förbindelse | Fungerar som en länk mellan processorer som innehåller en kö och relation(er) som påverkar vart data dirigeras. |
Mottryck | Stoppa systemet från att bli överkört genom att kontrollera kvantiteten eller datastorleken på flödesfiler som kan lagras i kön. |
Processgrupp | En processgrupp är en uppsättning processer och deras anslutningar, som tar emot och skickar data med hjälp av portar. |
Flowfile Repository | I FlowFile Repository håller NiFi reda på tillståndet för vilka detaljer den har om en given FlowFile som är aktiv i flödet. |
Innehållsförråd | Innehållsförrådet är ett område där de faktiska innehållsbytena för en given FlowFile finns. |
Proveniensförvaret | Proveniensförrådet är ett område där all härkomsthändelsedata samlas in. |
Apache NiFi-funktioner
- NiFi stöder buffring av all köad data och erbjuder en förmåga till mottryck eftersom dessa köer kan nå specificerade gränser
- NiFi tillåter inställning av ett eller flera prioriteringsscheman
- Tillhandahåller anslutningsprocessorer för många datakällor
- Stöd alla enheter som körs Java
- Perfekt för platser med begränsad anslutning
- Stöd för felsökning och flödesoptimering
- Erbjuder rollbaserad autentisering/auktorisering
- Tillåter nedladdning, återställning och uppspelning av enskilda filer
- Bygg dina processorer, kontrollertjänster och mer
- Tillhandahåll kryptering av innehåll, kommunikation över säkra protokoll
- Möjliggör snabb utveckling och effektiv testning
- Möjliggör utveckling av enkla enfunktionskomponenter som kan återanvändas och kombineras för att göra mer komplexa flöden
- Tillåter klassladdningsisolering för enklare hantering av beroenden
Hur man installerar Apache NiFi
Nedan är en steg-för-steg-process för Apache NiFi-installation
Steg 1) Gå till länken,
och klicka på "Fortsätt att prenumerera"
Steg 2) På nästa sida,
Klicka på "Acceptera villkor"
Steg 3) Du kommer att se denna sida,
Tack för att du prenumererar på den här produkten! Vi behandlar din förfrågan.
Steg 4) Uppdatera sidan efter 5 minuter.
Klicka på "Fortsätt till konfiguration"
Steg 5) På nästa sida,
Behåll standardinställningarna och klicka på "Fortsätt till start"
Steg 6) På nästa sida,
Klicka på Starta. Du kan behöva skapa en nyckel
Steg 7) Du kommer att se detta framgångsmeddelande.
Grattis! En instans av denna programvara har distribuerats framgångsrikt på EC2!
Steg 8) Notera,
Förekomstens ID och den offentliga DNS för EC2-instansen
Steg 9) I säkerhetsgruppen,
Lägg till regel för all trafik till inkommande och utgående
Steg 10) För att komma åt Nifi,
använd bara URL:en
http://publicdns:8080/nifi
I vårt fall blir det
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
Användare:administration
Lösenord: Förekomst-ID
Steg 11) Du får se,
NiFi hemskärm
Användningsfall för Nifi
Nedan är en lista över Apache NiFi-användningsfall:
Industry | Användning |
---|---|
Försäkring |
|
Healthcare |
|
Telekommunikation |
|
Tillverkning |
|
Olja & Gas- Industri |
|
Financial Services |
|
Bästa metoder Att köra Apache NiFi
- Idealisk för att separera test/dev/produktionsmiljöer i NiFi
- Du bör dela upp ditt flöde i processgrupper
- Använd en namnkonvention, använd kommentarer och etiketter
- Organisera dina projekt i tre delar intag, test och övervakning
- Använd unika namn för variabel
Nackdelen med Nifi
- Behöver exakta säkerhets- och efterlevnadskontroller
- Du måste känna till det underliggande systemet mycket väl när du arbetar med Apache NiFi
- Måste upprätthålla spårbarhetskedjan för data
- Transport/meddelanden kanske inte räcker
- Dataåtkomstbehoven överstiger tillgängliga resurser att transportera
- Alla data skapas inte lika
- SSL och auktorisering på ämnesnivå kanske inte räcker
Sammanfattning
- Apache NiFi är en programvara med öppen källkod för att automatisera och hantera dataflödet mellan system
- NiFi är designat för att skala ut i kluster som erbjuder garanterad leverans av data
- Nifi utvecklades på NSA i över åtta år
- När data väl har hämtats från externa källor representeras den som FlowFile i Apache NiFi-arkitekturen.
- FlowFile, processor, kontroller, webbserver, anslutning, mottryck, repository är viktiga komponenter i NiFi-arkitekturen
- NiFi uttrycksspråk stöder alla enheter som körs Java
- Du kan enkelt installera NiFi på AWS
- NiFi används i olika branscher som sjukvård, försäkring, telekom, tillverkning, finans, olja och gas bland annat
- Som en bästa praxis, organisera dina projekt i tre delar intag, test och övervakning