Pregled arhitekture shranjevanja HBase



Arhitektura HBase Storage vsebuje številne komponente. Oglejmo si funkcije teh komponent in vemo, kako se zapisujejo podatki.

Apache HBase je odprtokodna, distribuirana, nerelacijska baza podatkov po vzoru Googlove Bigtable in napisana v Javi. Omogoča podobne zmogljivosti kot Bigtable na vrhu Hadoop in HDFS (Hadoop Distributed Files System), to pomeni, da omogoča odporen način shranjevanja velikih količin redkih podatkov, kar je pogosto v mnogih primerih uporabe velikih podatkov. HBase se uporablja za bralno / pisalni dostop do velikih podatkov v realnem času.





Arhitektura HBase Storage vsebuje številne komponente. Oglejmo si funkcije teh komponent in vemo, kako se zapisujejo podatki.

Datoteke H:



kako pretvoriti dvojno v int

HFiles tvori nizko raven arhitekture HBase. HFiles so datoteke za shranjevanje, ustvarjene za hitro in učinkovito shranjevanje podatkov HBase.

HMaster:

HMaster je odgovoren za dodelitev regij vsakemu HRegionServerju, ko se HBase zažene. Odgovoren je za upravljanje vsega, kar je povezano z vrsticami, tabelami in njihovimi koordinacijskimi dejavnostmi. Hmaster ima tudi podrobnosti o metapodatkih.



Komponente HBase:

HBase ima naslednje sestavine:

  • Tabela - Obsega regije
  • Regija - obseg vrstic, shranjenih skupaj
  • Regijski strežniki - služi za eno ali več regij
  • Glavni strežnik - Daemon je odgovoren za upravljanje grozda HBase

HBase podatke shranjuje neposredno v HDFS in se močno zanaša na visoko razpoložljivost in toleranco napak HDFS.

Arhitektura skladiščenja HBase:

Arhitektura shranjevanja HBase

Splošni tok je, da se stranka najprej obrne na skrbnika živalskega vrta, da najde določen ključ vrstice. To stori tako, da iz strežnika Zookeeper pridobi ime strežnika. S temi informacijami lahko zdaj ta strežnik poizve, da dobi strežnik, v katerem je metatabela. Obe podrobnosti sta shranjeni v predpomnilnik in poiskani samo enkrat. Nazadnje lahko poizvede meta strežnik in pridobi strežnik z vrstico, ki jo išče odjemalec.

Ko ve, v kateri regiji se nahaja vrstica, zapiše tudi te podatke in se neposredno obrne na HRegionServer. Tako ima odjemalec sčasoma popolne informacije o tem, od kod črpati vrstice, ne da bi mu bilo treba znova iskati metaserver. Ko se odpre HRegion, nastavi primerek Store za vsako HColumnFamily za vsako tabelo. Podatki se zapišejo, ko naročnik izda zahtevo za HRegionServer, ki zagotavlja podrobnosti o ustreznem primerku HRegion. Prvi korak je, da se moramo odločiti, ali je treba podatke najprej zapisati v 'Write-Ahead-Log' (WAL), ki ga predstavlja razred HLog. Odločitev temelji na zastavi, ki jo je postavila stranka.
Ko so podatki zapisani v WAL, se shranijo v MemStore. Hkrati se preveri, ali je Memstore poln, in v tem primeru se zahteva splakovanje na disk. Nato se podatki vpišejo v datoteko HFile.

Imate vprašanje za nas? Omenite jih v oddelku za komentarje in javili se vam bomo.

Sorodne objave

Vpogledi v arhitekturo HBase

kako zbrati v javi