Acasă Finanțe personale Datele din jurnal cu Flume în HDFS - dummies

Datele din jurnal cu Flume în HDFS - dummies

Video: Casele de marcat cu jurnal electronic, obligatorii din luna august 2024

Video: Casele de marcat cu jurnal electronic, obligatorii din luna august 2024
Anonim

Unele dintre datele care se termină în Sistemul Distribuit de Fișiere Hadoop (HDFS) pot ajunge acolo prin operațiuni de încărcare a bazei de date sau alte tipuri de procese discontinue. dacă doriți să capturați datele care curg în fluxurile de date de mare viteză, cum ar fi datele din jurnalul de aplicații? Apache Flume este modalitatea standard actuală de a face acest lucru cu ușurință, eficient și sigur.

Apache Flume , un alt proiect de nivel superior al Apache Software Foundation, este un sistem distribuit pentru agregarea și mutarea unor cantități mari de date streaming din diferite surse într-un magazin de date centralizat.

Puneți altfel, Flume este proiectat pentru ingestia continuă a datelor în HDFS. Datele pot fi orice fel de date, dar Flume este foarte bine adaptat la manipularea datelor jurnalului, cum ar fi datele jurnalului de pe serverele web. Unitățile de date pe care procesele Flume le numesc evenimente ; un exemplu de eveniment este un jurnal de înregistrare.

Pentru a înțelege modul în care Flume funcționează într-un cluster Hadoop, trebuie să știți că Flume rulează ca unul sau mai mulți agenți și că fiecare agent are trei componente pluggable: surse, canale și chiuvete:

  • Surse preluați datele și trimiteți-le la canale.

  • Canalele conțin cozi de date și servesc drept canale între surse și chiuvete, ceea ce este util atunci când debitul de intrare depășește debitul de ieșire.

  • Sinks procesează datele preluate din canale și le livrează către o destinație, cum ar fi HDFS.

Un agent trebuie să aibă cel puțin una din fiecare componentă pentru a rula și fiecare agent este conținut în propria instanță a mașinii virtuale Java (JVM).

Un eveniment care este scris unui canal de către o sursă nu este eliminat din acel canal până când o chiuvetă îl înlătură printr-o tranzacție. Dacă apare o eroare de rețea, canalele își țin evenimentele în așteptare până când chiuvetele le pot scrie în cluster. Un canal în memorie poate procesa rapid evenimentele, dar este volatil și nu poate fi recuperat, în timp ce un canal bazat pe fișiere oferă persistență și poate fi recuperat în caz de eșec.

Fiecare agent poate avea mai multe surse, canale și chiuvete și, deși o sursă poate scrie pe mai multe canale, un chiuvetă poate prelua date dintr-un singur canal.

Un agent este doar un JVM care execută Flume, iar chiuvetele pentru fiecare nod agent din clusterul Hadoop trimit date către nodurile colectoare , care agregă date de la mai mulți agenți înainte scriind-o în HDFS, unde poate fi analizată prin alte instrumente Hadoop. Agenții pot fi înlănțuiți împreună, astfel încât chiuveta de la un agent trimite date sursei unui alt agent.Avro, cadrul de apel și serializare de la Apache, este modul obișnuit de a trimite date printr-o rețea cu Flume, deoarece servește ca un instrument util pentru serializarea sau transformarea eficientă a datelor într-un format binar compact.

În contextul Flume, compatibilitatea este importantă: un eveniment Avro necesită o sursă Avro, de exemplu, și o chiuvetă trebuie să furnizeze evenimente adecvate destinației.

Ceea ce face acest lanț mare de surse, canale și chiuvete să funcționeze este configurația agentului Flume, care este stocată într-un fișier text local care este structurat ca un fișier de proprietăți Java. Puteți configura mai mulți agenți în același fișier. Uită-te la un exemplu de fișier, care este numit flume-agent. conf - este setat să configurezi un agent numit shaman:

# Identifică componentele pe agent shaman: shaman. surse = netcat_s1 shaman. chiuvete = hdfs_w1 șaman. canale = in-mem_c1 # Configurați sursa: shaman. surse. netcat_s1. tip = netcat shaman. surse. netcat_s1. bind = localhost shaman. surse. netcat_s1. port = 44444 # Descrieți chiuveta: șaman. chiuvete. hdfs_w1. tip = hdfs shaman. chiuvete. hdfs_w1. hdfs. calea = hdfs: // shaman. chiuvete. hdfs_w1. hdfs. writeFormat = Textul șamanului. chiuvete. hdfs_w1. hdfs. fileType = DataStream # Configurați un canal care stochează evenimente în memorie: shaman. canale. în-mem_c1. tip = memorie shaman. canale. în-mem_c1. capacitate = 20000 shaman. canale. în-mem_c1. transactionCapacity = 100 # Legați sursa și chiuveta la canal: shaman. surse. netcat_s1. canale = in-mem_c1 shaman. chiuvete. hdfs_w1. canale = in-mem_c1

Fișierul de configurare include proprietăți pentru fiecare sursă, canal și chiuveta în agent și specifică modul în care sunt conectate. În acest exemplu, agentul shaman are o sursă care ascultă datele (mesajele către netcat) de pe portul 44444, un canal care tamponează datele evenimentului din memorie și un chiuveta care înregistrează datele evenimentului în consola.

Acest fișier de configurare ar fi putut fi folosit pentru a defini mai mulți agenți; aici, configurați doar unul pentru a păstra lucrurile simple.

Pentru a porni agentul, utilizați un script shell denumit flume-ng, care este localizat în directorul bin al distribuției Flume. Din linia de comandă, lansați comanda agent, specificând calea către fișierul de configurare și numele agentului.

Următoarea comandă de probă pornește agentul Flume:

agentul flume-ng -f / -n shaman

Jurnalul agentului Flume trebuie să aibă intrări care să verifice că sursa, canalul și chiuveta au pornit cu succes.

Pentru a testa configurația, poți să trimiți portul 44444 de la un alt terminal și să trimiți un eveniment Flume introducând un șir de text arbitrar. Dacă totul merge bine, terminalul inițial Flume va afișa evenimentul într-un mesaj de jurnal pe care ar trebui să îl puteți vedea în jurnalul agentului.

Datele din jurnal cu Flume în HDFS - dummies

Alegerea editorilor

Administrator de rețea: Zone de căutare inversă - dummies

Administrator de rețea: Zone de căutare inversă - dummies

Interogări DNS obișnuite sunt interogări de căutare înainte corespunde unui nume de domeniu complet calificat. O căutare inversă este opusul unei căutări forward: returnează numele de domeniu complet calificat al unei gazde pe baza adresei sale IP. Căutările inverse sunt posibile din cauza unui domeniu special numit ...

Rețea Elemente de bază: Clienți și servere - manechine

Rețea Elemente de bază: Clienți și servere - manechine

Computerul de rețea care conține hard disk-urile, imprimantele și alte resurse care sunt partajate cu alte calculatoare de rețea se numește un server. Acest termen vine în repetate rânduri, deci trebuie să-l amintiți. Scrie-o pe spatele mâinii tale stângi. Orice computer care nu este un server este numit client. Aveți ...

Retea Bazele: Poduri - dummies

Retea Bazele: Poduri - dummies

O punte este un dispozitiv care conecteaza doua retele astfel incat sa actioneze ca si cum ar fi o rețea. Podurile sunt utilizate pentru a împărți o rețea mare în două rețele mai mici din motive de performanță. Vă puteți gândi la un pod ca pe un repetor inteligent. Repetoarele ascultă semnale care coboară pe un cablu de rețea, amplifică ...

Alegerea editorilor

ÎMprumuta și tweak idei de la alte comunități online - dummies

ÎMprumuta și tweak idei de la alte comunități online - dummies

, Mai degrabă decât să ia ideile altcuiva complet pentru dvs. comunitate online, încercați să riffați pe aceeași idee, dar nu atât de mult încât este evident că nu sunteți creierul din spatele brainstorming-ului. Idei sunt acolo pentru a lua, dar nu ar fi mai degrabă văzute ca cineva inovatoare, nu cineva care scours pe web ...

Branding Blogul tău

Branding Blogul tău

Branding blog-ul tău merge mult spre a face dacă este ușor de recunoscut pentru cititorii tăi. Când vedeți un punct roșu în interiorul unui cerc roșu, ce magazin vine în minte? Ce zici de acele arcuri de aur? Un nume de marcă apare în minte atunci când vedeți simbolul swoosh? La fel ca magazinele populare, restaurantele și încălțămintea ...

Construiți un Blog Mama care este Sellable - dummies

Construiți un Blog Mama care este Sellable - dummies

Dacă obiectivul pe termen lung este de a vinde blogul dvs. ar trebui să o construiască cu acest scop în minte. Evitați asocierea prea intensă a blogului cu marca dvs. personală. Un blog care poate fi valoros cu orice scriitor la cârma trebuie să îndeplinească majoritatea, dacă nu toate, următoarele criterii: Blogul este concentrat ...

Alegerea editorilor

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

LinkedIn oferă servicii de publicitate pentru afacerea dvs. Dacă vă decideți să utilizați LinkedIn ca instrument de marketing, va trebui doar să obțineți o nouă campanie de anunțuri în lucrări. Când sunteți gata să începeți o nouă campanie, urmați acești pași:

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Ce opțiuni de filtrare aveți pentru anunțul dvs. LinkedIn? Alte rețele de publicitate vă permit să filtrați publicul vizat de câteva atribute cunoscute ale persoanei care vă va vedea anunțul, sexul și locația membrilor din public. LinkedIn vă permite să faceți un pas mai departe permițându-vă ...

Oferind și primind viziuni pe LinkedIn - manechine

Oferind și primind viziuni pe LinkedIn - manechine

Deși mulți oameni cred că "Nu este ceea ce știi, știi, "care este unul dintre principalele motive pentru care LinkedIn este atât de valoros, mulți oameni (recrutorii, angajații, directorii executivi, investitorii și altele) sunt foarte interesați de ceea ce știi. În mod logic, oamenii care vă cunosc cel mai bine sunt oamenii din rețeaua dvs., care ...