Apache NiFi-opplæring

Oppsummering av Apache NiFi-veiledning

Denne apache NiFi-opplæringen dekker alle grunnleggende til avanserte emner fra bunnen av. Du vil lære begrepene som NiFi-definisjon, historie, arkitektur, funksjoner, installasjonsprosess, brukstilfeller. Du vil også lære hvorfor du trenger å bruke apache NiFi og de beste fremgangsmåtene for å kjøre apache NiFi.

Hva er Apache NiFi?

Apache NiFi er en åpen kildekode-programvare for å automatisere og administrere dataflyten mellom systemer. Det er et kraftig og pålitelig system for å behandle og distribuere data. Det gir et nettbasert brukergrensesnitt for å opprette, overvåke og kontrollere dataflyter. Den har en svært konfigurerbar og modifiserbar dataflytprosess for å endre data under kjøring.

Apache NiFi kan enkelt utvides gjennom utvikling av tilpassede komponenter.

Hvorfor bruke Apache NIfi?

Her er grunner til å bruke Apache Nifi:

  • Lar deg gjøre datainntak for å trekke data inn i NiFi, fra en rekke datakilder og lage flytfiler
  • Den tilbyr sanntidskontroll som hjelper deg med å administrere bevegelsen av data mellom enhver kilde og destinasjon
  • Visualiser DataFlow på bedriftsnivå
  • Gi felles verktøy og utvidelser
  • Lar deg dra nytte av eksisterende biblioteker og Java økosystemfunksjonalitet
  • Hjelper organisasjoner med å integrere Nifi med sin eksisterende infrastruktur
  • NiFi er designet for å skalere ut i klynger som tilbyr garantert levering av data
  • Visualiser og overvåk ytelse, atferd i en flytbulletin som tilbyr innsikt og integrert dokumentasjon
  • Hjelper deg å starte og stoppe komponenter separat eller på gruppenivå
  • Den hjelper deg å lytte, hente, dele, samle, rute, transformere og dra og slippe Dataflow

Historien om Apache NiFi

  • Utviklet ved NSA i over åtte år
  • 2014- Den ble donert til Apache-programvaren Foundation
  • 2015- NiFi ble en offisiell del av Apache Project Suite
  • Siden den gang hver 6.-8. uke slipper Apache NiFi en ny oppdatering

NiFi Architecture

Apache NiFi har en gjennomtenkt arkitektur. Når data er hentet fra eksterne kilder, er de representert som FlowFile i Apache NiFi-arkitekturen.

NiFi Architecture
NiFi Architecture

Her er nøkkelkomponenter i NiFi-arkitektur

Nifi-komponent Tekniske beskrivelser
FlowFile FlowFile er originaldata med metainformasjon knyttet til den. Den lar deg behandle ikke bare CSV eller andre postbaserte data, men også bilder, videoer, lyd eller andre binære data.
Flowfil-prosessor Utfører arbeidet som fungerer som en byggestein for dataflyt i NiFi.
Strømningskontroller Holder oversikt over hvordan prosesser henger sammen. Den administrerer trådene og allokeringer av disse som alle prosesser bruker.
web-server Nettserveren er vert for NiFis HTTP-baserte kommandoer og API.
Extension Det er mange typer NiFi-utvidelser som opererer og kjører i JVM.
Tilkobling Fungerer som en kobling mellom prosessorer som inneholder en kø og relasjon(er) som påvirker hvor data rutes.
Mottrykk Stopp systemet for å bli overkjørt ved å kontrollere mengden eller datastørrelsen på flytfiler som kan lagres i køen.
Prosessgruppe En prosessgruppe er et sett med prosesser og deres forbindelser, som mottar og sender data ved hjelp av porter.
Flowfile Repository I FlowFile Repository holder NiFi oversikt over tilstanden til hvilke detaljer den har om en gitt FlowFile som er aktiv i flyten.
Innholdsarkiv Innholdslageret er et område der de faktiske innholdsbytene til en gitt FlowFile eksisterer.
Herkomstlager Herkomstdepotet er et område hvor alle herkomsthendelsesdata er samlet.

Apache NiFi-funksjoner

  • NiFi støtter bufring av alle data i kø og tilbyr en mulighet for mottrykk da disse køene kan nå spesifiserte grenser
  • NiFi tillater innstilling av en eller flere prioriteringsordninger
  • Gir tilkoblingsprosessorer for mange datakilder
  • Støtt alle enheter som kjører Java
  • Ideell for steder med begrenset tilkobling
  • Støtte for feilsøking og flytoptimalisering
  • Tilbyr rollebasert autentisering/autorisering
  • Tillater nedlasting, gjenoppretting og avspilling av individuelle filer
  • Bygg dine prosessorer, kontrollertjenester og mer
  • Gi innholdskryptering, kommunikasjon over sikre protokoller
  • Muliggjør rask utvikling og effektiv testing
  • Gir mulighet for utvikling av enkle enkeltfunksjonskomponenter som kan gjenbrukes og kombineres for å lage mer komplekse flyter
  • Tillater klasselasterisolering for enklere administrasjon av avhengigheter

Hvordan installere Apache NiFi

Nedenfor er en trinnvis prosess for Apache NiFi-installasjon

Trinn 1) Gå til linken,

og klikk "Fortsett å abonnere"

Installer Apache NiFi

Trinn 2) På neste side

Klikk "Godta vilkår"

Installer Apache NiFi

Trinn 3) Du vil se denne siden,

Takk for at du abonnerer på dette produktet! Vi behandler forespørselen din.

Installer Apache NiFi

Trinn 4) Oppdater siden etter 5 minutter.

Klikk på "Fortsett til konfigurasjon"

Installer Apache NiFi

Trinn 5) På neste side

Behold standardinnstillingene og klikk "Fortsett til lansering"

Installer Apache NiFi

Trinn 6) På neste side

Klikk på Start. Du må kanskje opprette en nøkkel

Installer Apache NiFi

Trinn 7) Du vil se denne suksessmeldingen.

Gratulerer! En forekomst av denne programvaren er vellykket distribuert på EC2!

Installer Apache NiFi

Trinn 8) Merk,

Forekomst-ID-en og den offentlige DNS-en til EC2-forekomsten

Installer Apache NiFi

Trinn 9) I sikkerhetsgruppen,

Legg til all trafikkregel til inngående og utgående

Installer Apache NiFi

Trinn 10) For å få tilgang til Nifi,

bare bruk URL-en

http://publicdns:8080/nifi

I vårt tilfelle blir det

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

Bruker:admin

Passord: Forekomst-ID

Installer Apache NiFi

Trinn 11) Du vil se,

NiFi-hjemmeskjerm

Installer Apache NiFi

Nifi Use Cases

Nedenfor er en liste over Apache NiFi-brukstilfeller:

Industri bruk
Forsikring
  • Risiko- og garantianalyse
  • Krav Analytics
  • Bruksbasert forsikring
  • Ny produktutvikling
Helsevesen
  • Enkeltvisning av pasient
  • Overvåking av vitale tegn i sanntid
  • EMR-optimalisering
  • Optimalisering av forsyningskjede
telekommunikasjon
  • Enkelt syn på kunden
  • CDR-analyse
  • Dynamisk båndbreddetildeling
Produksjon
  • Forebyggende vedlikehold
  • Optimalisering av forsyningskjede
  • Kvalitetskontroll
Olje & Gass- Industri
  • Real-time overvåkning
  • Enkel utsikt over Operasjon
  • Forutsigbar vedlikehold
  • Archive & Analytics
  • Ustrukturert dataklassifisering
Finansielle tjenester
  • Anti-hvitvasking
  • Svindel- Oppdagelse
  • Risiko- datahåndtering

Beste praksis Kjører Apache NiFi

  • Ideell for å skille test/dev/produksjonsmiljøer i NiFi
  • Du bør dele flyten inn i prosessgrupper
  • Bruk en navnekonvensjon, bruk kommentarer og etiketter
  • Organiser prosjektene dine i tre deler inntak, test og overvåking
  • Bruk unike navn for variabel

Ulempen med Nifi

  • Trenger nøyaktige sikkerhets- og samsvarskontroller
  • Du må kjenne det underliggende systemet veldig godt mens du arbeider med Apache NiFi
  • Må opprettholde forvaringskjeden for data
  • Transport/meldinger er kanskje ikke nok
  • Datatilgangsbehov overstiger tilgjengelige ressurser for transport
  • Ikke alle data er skapt like
  • SSL og autorisasjon på emnenivå er kanskje ikke tilstrekkelig

Sammendrag

  • Apache NiFi er en åpen kildekode-programvare for å automatisere og administrere dataflyten mellom systemer
  • NiFi er designet for å skalere ut i klynger som tilbyr garantert levering av data
  • Nifi ble utviklet ved NSA i over åtte år
  • Når data er hentet fra eksterne kilder, er de representert som FlowFile i Apache NiFi-arkitekturen.
  • FlowFile, prosessor, kontroller, webserver, tilkobling, mottrykk, depot er viktige komponenter i NiFi-arkitekturen
  • NiFi uttrykksspråk støtter alle enheter som kjører Java
  • Du kan enkelt installere NiFi på AWS
  • NiFi brukes i varierte bransjer som helsevesen, forsikring, telekom, produksjon, finans, olje og gass blant andre
  • Som en beste praksis, organiser prosjektene dine i tre deler inntak, test og overvåking