Vodič za Apache NiFi: Što je NiFi? Architekstura i instalacija
Sažetak vodiča za Apache NiFi
Ovaj vodič za apache NiFi pokriva sve osnovne do napredne teme od nule. Naučit ćete koncepte kao što su NiFi definicija, povijest, arhitektura, značajke, proces instalacije, slučajevi korištenja. Također ćete naučiti zašto trebate koristiti apache NiFi i najbolje prakse pokretanja apache NiFi.
Što je Apache NiFi?
Apache NiFi je softver otvorenog koda za automatizaciju i upravljanje protokom podataka između sustava. To je snažan i pouzdan sustav za obradu i distribuciju podataka. Omogućuje web-bazirano korisničko sučelje za stvaranje, praćenje i kontrolu protoka podataka. Ima visoko konfigurabilan i modificiran proces protoka podataka za izmjenu podataka tijekom izvođenja.
Apache NiFi je lako proširiv razvojem prilagođenih komponenti.
Zašto koristiti Apache NIfi?
Evo razloga za korištenje Apache Nifi:
- Omogućuje vam gutanje podataka za povlačenje podataka u NiFi iz brojnih izvora podataka i stvaranje datoteka protoka
- Nudi kontrolu u stvarnom vremenu koja vam pomaže upravljati kretanjem podataka između bilo kojeg izvora i odredišta
- Vizualizirajte DataFlow na razini poduzeća
- Omogućite zajednički alat i proširenja
- Omogućuje vam da iskoristite postojeće knjižnice i Java funkcionalnost ekosustava
- Pomaže organizacijama da integriraju Nifi sa svojom postojećom infrastrukturom
- NiFi je dizajniran za skaliranje u klasterima koji nude zajamčenu isporuku podataka
- Vizualizirajte i nadzirite izvedbu, ponašanje u biltenu toka koji nudi uvid i ugrađenu dokumentaciju
- Pomaže vam da pokrenete i zaustavite komponente zasebno ili na razini grupe
- Pomaže vam da slušate, dohvaćate, dijelite, agregirate, usmjeravate, transformirate i povlačite i ispuštate Dataflow
Povijest Apache NiFi
- Razvijan u NSA-i više od osam godina
- 2014. - Doniran je Apache Software-u Foundation
- 2015 - NiFi je postao službeni dio paketa Apache Project Suite
- Od tada svakih 6-8 tjedana, Apache NiFi izdaje novo ažuriranje
NiFi Architektura
Apache NiFi ima dobro promišljenu arhitekturu. Nakon što se podaci dohvate iz vanjskih izvora, predstavljaju se kao FlowFile unutar Apache NiFi arhitekture.
Ovdje su ključne komponente NiFi arhitekture
Nifi komponenta | Description |
---|---|
FlowFile | FlowFile je izvorni podatak s metainformacijama koje su mu priložene. Omogućuje vam obradu ne samo CSV-a ili drugih podataka temeljenih na zapisima, već i slika, videa, zvuka ili bilo kojih drugih binarnih podataka. |
Flowfile procesor | Obavlja posao koji djeluje kao građevni blok protoka podataka u NiFi-ju. |
Regulator protoka | Vodi evidenciju o tome kako su procesi povezani. Upravlja nitima i njihovim dodjelama koje koriste svi procesi. |
web poslužitelj | Web poslužitelj ugošćuje NiFi-jeve naredbe i API temeljene na HTTP-u. |
Nastavak | Postoje mnoge vrste NiFi ekstenzija koje rade i izvršavaju se unutar JVM-a. |
priključak | Djeluje kao veza između procesora koji sadrže red čekanja i odnosa koji utječu na to kamo se podaci usmjeravaju. |
Povratni pritisak | Zaustavite prekoračenje sustava kontroliranjem količine ili veličine podataka datoteka toka koje se mogu pohraniti u redu čekanja. |
Grupa procesa | Grupa procesa je skup procesa i njihovih veza, koji prima i šalje podatke uz pomoć portova. |
Flowfile repozitorij | U repozitoriju FlowFile, NiFi prati stanje koje pojedinosti ima o određenoj FlowFile koja je aktivna u toku. |
Repozitorij sadržaja | Repozitorij sadržaja je područje u kojem postoje bajtovi stvarnog sadržaja date FlowFile datoteke. |
Ostava provenijencije | Repozitorij provenijencije je područje gdje se prikupljaju svi podaci o događajima provenijencije. |
Značajke Apache NiFi
- NiFi podržava spremanje u međuspremnik svih podataka u čekanju i nudi mogućnost povratnog pritiska jer ti redovi mogu doseći određena ograničenja
- NiFi omogućuje postavljanje jedne ili više shema prioriteta
- Pruža procesore povezivanja za mnoge izvore podataka
- Podržava bilo koji uređaj koji radi Java
- Idealno za mjesta s ograničenom vezom
- Podrška za rješavanje problema i optimizaciju protoka
- Nudi autentifikaciju/autorizaciju na temelju uloga
- Omogućuje preuzimanje, obnavljanje i ponavljanje pojedinačnih datoteka
- Izradite svoje procesore, usluge kontrolera i još mnogo toga
- Osigurati šifriranje sadržaja, komunikaciju preko sigurnih protokola
- Omogućuje brz razvoj i učinkovito testiranje
- Omogućuje razvoj jednostavnih jednofunkcijskih komponenti koje se mogu ponovno koristiti i kombinirati za stvaranje složenijih tokova
- Omogućuje izolaciju učitavača klasa radi lakšeg upravljanja ovisnostima
Kako instalirati Apache NiFi
Ispod je postupak korak po korak za instalaciju Apache NiFi
Korak 1) Idi na poveznica,
i kliknite na "Nastavi na pretplatu"
Korak 2) Na sljedećoj stranici,
Kliknite "Prihvati uvjete"
Korak 3) Vidjet ćete ovu stranicu,
Hvala što ste se pretplatili na ovaj proizvod! Obrađujemo vaš zahtjev.
Korak 4) Osvježite stranicu nakon 5 minuta.
Kliknite na "Nastavi na konfiguraciju"
Korak 5) Na sljedećoj stranici,
Zadržite zadane postavke i kliknite "Nastavi na pokretanje"
Korak 6) Na sljedećoj stranici,
Kliknite na Pokreni. Možda ćete morati izraditi ključ
Korak 7) Vidjet ćete ovu poruku o uspjehu.
Čestitamo! Instanca ovog softvera uspješno je postavljena na EC2!
Korak 8) Bilješka,
ID instance i javni DNS EC2 instance
Korak 9) U sigurnosnoj grupi,
Dodajte pravilo o cjelokupnom prometu za dolazni i odlazni
Korak 10) Za pristup Nifiju,
jednostavno koristite URL
http://publicdns:8080/nifi
U našem slučaju postaje
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
korisnik:admin
Lozinka: ID instance
Korak 11) Vidjet ćeš,
NiFi početni zaslon
Slučajevi korištenja Nifi
Ispod je popis slučajeva upotrebe Apache NiFi:
Industrija | Upotreba |
---|---|
Osiguranje |
|
Zdravlje |
|
Telekomunikacijski |
|
Proizvodnja |
|
Naftna i plinska industrija |
|
Financijske usluge |
|
Najbolji primjeri iz prakse Pokretanje Apache NiFi
- Idealno za odvajanje okruženja za testiranje/razvoj/produkciju u NiFi-ju
- Trebali biste svoj tok podijeliti u grupe procesa
- Koristite konvenciju imenovanja, koristite komentare i oznake
- Organizirajte svoje projekte u tri dijela: unos, testiranje i praćenje
- Koristite jedinstvena imena za varijable
Nedostatak Nifi
- Potrebne su precizne kontrole sigurnosti i usklađenosti
- Dok radite s Apache NiFi-jem morate vrlo dobro poznavati temeljni sustav
- Mora održavati lanac nadzora podataka
- Prijevoz / slanje poruka možda neće biti dovoljni
- Potrebe za pristupom podacima premašuju raspoložive resurse za prijenos
- Ne stvaraju se svi podaci jednako
- SSL i autorizacija na razini teme možda neće biti dovoljna
rezime
- Apache NiFi je softver otvorenog koda za automatizaciju i upravljanje protokom podataka između sustava
- NiFi je dizajniran za skaliranje u klasterima koji nude zajamčenu isporuku podataka
- Nifi je razvijen u NSA-i više od osam godina
- Nakon što se podaci dohvate iz vanjskih izvora, predstavljaju se kao FlowFile unutar Apache NiFi arhitekture.
- FlowFile, procesor, kontroler, web poslužitelj, veza, povratni pritisak, spremište važne su komponente NiFi arhitekture
- NiFi jezik izražavanja podržava bilo koji uređaj koji radi Java
- Možete jednostavno instalirati NiFi na AWS
- NiFi se koristi u različitim industrijama kao što su zdravstvo, osiguranje, telekomunikacije, proizvodnja, financije, nafta i plin među ostalim
- Kao najbolju praksu, organizirajte svoje projekte u tri dijela: unos, testiranje i praćenje