Uvod v HDFS arhitekturo

HDFS pomeni Hadoop Distributed File System, ki pravi, da so datoteke razdeljene v bloke in shranjene na več strojih.

Značilnosti HDFS

Značilnosti HDFS so naslednje:

1. Razpoložljivost

Podatki v HDFS se redno kopirajo med vozlišči podatkov z ustvarjanjem replike blokov na drugem vozlišču podatkov. Tako lahko uporabnik v primeru okvare ali napake strojne opreme pridobi svoje podatke iz drugega vozlišča podatkov, kjer so bili podatki podvojeni.

2. Prilagodljivost

V HDFS se podatki shranijo na več podatkovnih vozlišč v obliki blokov. HDFS uporabnikom omogoča, da povečajo velikost blokov, kadar koli je to potrebno. V HDFS se uporabljata dve vrsti mehanizma skalabilnosti - horizontalna in vertikalna.

3. Razmnoževanje

To so edinstvene funkcije HDFS, ki uporabniku omogočajo preprost dostop do svojih podatkov v primeru okvare strojne opreme.

HDFS Arhitektura

HDFS sledi arhitekturi master-slave, ki ima naslednje komponente:

1. NameNode:

NameNode je znan tudi kot glavno vozlišče, ker upravlja z vsemi bloki, ki so prisotni v DataNodes.

NameNode izvaja naslednje naloge:

  • Upravljajte vse bloke DataNode
  • Uporabniku omogoča dostop do datoteke
  • Hrani vse zapise blokov, prisotnih v DataNode
  • NameNode beleži vse podatke datotek, na primer, če je ime datoteke preimenovano ali je vsebina spremenjena ali izbrisana NameNode takoj zabeleži to spremembo v EditLogs
  • Vzame zapise vseh blokov iz podatkovnih vozlišč, da zagotovi, da so vsi bloki živi v DataNode.
  • Če pride do napake v strojni opremi, takoj izbere drugo DataNode, da ustvari podvajanje in upravlja komunikacijo z vsemi DataNodes

Vrste datotek v NameNode

NameNode vsebuje dve vrsti datotek FsImage in EditLogs

jaz. FsImage: Imenujemo jo tudi slika datoteke, ker vsebuje vse informacije v datotečnem sistemu s prostori s imeni. Vsebuje tudi vse imenike in datoteke datotečnega sistema na serializiran način.

ii. EditLogs: Trenutne spremembe, narejene v datotekah datotečnega sistema, so shranjene v EditLogs.

2. Sekundarno imeNode

Sekundarno imeNode se imenuje tudi kot vozlišče kontrolne točke, ker izvaja redne kontrolne točke. Deluje kot pomočnik primarnega NameNode.

Sekundarno imeNode izvaja naslednje naloge

  • Sekundarno imeNode združuje FsImage in EditLogs iz NameNode.
  • Vse podatke datotečnega sistema prebere iz pomnilnika NameNode in jih zapiše na trdi disk datotečnega sistema.
  • V rednih intervalih prenaša FsImage in EditLogs iz NameNode in prebere podatke o spremembah, ki so narejene datoteke EditLogs, in zapiše spremembo v FsImage. Ta postopek ustvari novo FsImage, ki se nato pošlje nazaj v NameNode. Kadar se bo NameNode zagnalo, bo uporabljal te FsImage.

3. DataNode

DataNode je znan tudi kot podrejeno vozlišče, ker upravlja z vsakim vozliščem, ki vsebuje podatke na podrejenem stroju. DataNode shranjuje podatke v datotečni obliki ext3 ali ext4.

Podatkovno vozlišče izvaja naslednje naloge:

  • Vsi podatki so shranjeni v DataNodes
  • Izvaja vse operacije datotek po želji uporabnikov, na primer branje vsebine datotek, zapisovanje novih podatkov v datoteke,
  • Prav tako sledi vsem navodilom, ki jih daje NameNode, na primer preimenovanju datoteke, brisanju nekaterih blokov v DataNode, ustvarjanju blokov itd.

4. Vozlišče kontrolne točke:

Vozlišče kontrolne točke je vozlišče, ki je v rednih intervalih ustvarjalo kontrolno točko datotek. Vozlišče Checkpoint v HDFS, naložite FsImage in EditLogs iz NameNode in jih združite, da ustvarite novo sliko in to novo sliko pošljete NameNode. Zadnja kontrolna točka je shranjena v imeniku z isto strukturo kot v imeniku namenode. Zaradi tega je preverjena slika vedno na voljo, če jo potrebuje.

5. Rezervno vozlišče:

Funkcija rezervnega vozlišča je podobna vozlišču Checkpoint za izvajanje naloge kontrolne točke. V Hadoopu vozlišče Varnostno kopiranje shrani najnovejšo in posodobljeno kopijo prostora imen datotek. Datoteke FsImage in urejanja datotek z aktivnega NameNode ni treba prenesti, da bi ustvarili kontrolno točko v varnostnem vozilu, ker je sinhronizirana s stanjem aktivnega NameNode. Funkcija vozlišča Backup je natančnejša, ker shranite imenski prostor v lokalno datoteko FsImage in ponastavite editLogs.

6. Bloki:

Vsi podatki uporabnikov so shranjeni v datotekah HDFS, ki jih nato razdelimo na majhne segmente. Ti segmenti so shranjeni v DataNodes. Segmenti, ki so prisotni v DataNodes, imenujemo blok. Privzeta velikost blokov je 128 MB. Velikost bloka lahko spremenite v skladu z zahtevami uporabnikov s konfiguracijo HDFS.

Če je velikost podatkov manjša od velikosti bloka, potem je velikost bloka enaka velikosti podatkov. Na primer, če podatki obsegajo 135 MB, bodo ustvarili 2 bloka. Ena bo privzeta velikost 128 MB, druga pa samo 7 MB, ne pa 128 MB. Zaradi tega se prihrani veliko prostora in časa ure diska.

Upravljanje kopiranja v arhitekturi HDFS:

HDFS je odporen na napake. Odstopanje napak je moč sistema v primeru okvar in kako se odziva na napake in težke pogoje. Odstopanje napak deluje na podlagi procesa izdelave replike. Kopije podatkov uporabnika se shranijo na strojih v skupini DHFS. Če torej pride do okvare ali okvare v sistemu, lahko do kopije teh podatkov dostopate z drugih strojev skupine HDFS. Vsak blok v arhitekturi HDFS ima 3 replike, ki so shranjene v različnih DataNodes. NameNode vzdržuje kopije, ki so na voljo v DataNodes. NameNode dodaja ali izbriše kopije na podlagi meril pod podvajanih ali preveč ponovljenih blokov.

Operacija pisanja

Za pisanje datotek v HDFS bo odjemalec sporočil metapodatke v NameNode. Nameode odgovarja na več blokov, njihovo lokacijo, kopije itd. Naročnik deli datoteke v več blokov na podlagi podatkov o imeodi. Nato jih začne pošiljati v DataNode. Najprej odjemalec pošlje blok A v DataNode 1 z drugimi informacijami o DataNode. Ko DataNode 1 prejme odjemalčev blok A, DataNode 1 kopira isti blok v isti regal v DataNode 2. Ker sta obe DataNode v istem stojalu, prenos bloka poteka prek stikala stojala. DataNode 2 zdaj isti blok kopira v DataNode 3 Ker sta obe DataNodes v različnih stojalih, prenos bloka poteka prek stikala zunaj vrstice. Ko DataNode prejme odjemalčeve bloke, bo potrditev poslal NameMode. Vsak blok datoteke se ponovi isti postopek.

Preberite Operacija

Za operacijo branja prvi odjemalec sporoči metapodatke NameNode. Odjemalec zapusti NameNode z imenom datoteke in lokacijo. Nameode se odziva s številko bloka, lokacijo, kopijami in drugimi informacijami. Po tem odjemalec sporoči DataNodes. Na podlagi informacij, ki jih prejme od NameNode, odjemalec začne branje podatkov vzporedno iz DataNodes. Ko stranka ali aplikacija prejme ves blok datoteke, te bloke združi v izvirno datotečno obliko.

Zaključek - HDFS Arhitektura

S pomočjo NameNode in DataNode zanesljivo shrani zelo velike datoteke med stroje v velikem grozdu. Zaradi odstopanja napak je koristen dostop do podatkov med odpovedjo programske ali strojne opreme. Tako deluje HDFS arhitektura.

Priporočeni članki

To je vodnik za HDFS arhitekturo. Tu smo razpravljali o osnovnih konceptih z različnimi vrstami arhitekture, funkcijami in upravljanju podvajanja HDFS Architecture. Če želite izvedeti več, lahko preberete tudi druge naše predlagane članke -

  1. Kaj je modeliranje podatkov?
  2. Kaj je vizualizacija podatkov
  3. Kaj je shramba podatkov?
  4. Kaj je SQL Developer?

Kategorija: