Sissejuhatus HBase arhitektuuri
HBase on avatud lähtekoodiga hajutatud võtmeväärtusega andmesalvestussüsteem ja veerupõhine andmebaas, millel on kõrge kirjutusväljund ja madala latentsusajaga juhuslik lugemisvõime. HBase'i abil saame veebis teostada reaalajas analüütikat. HBase arhitektuuril on tugev juhuslik loetavus. HBase'is on andmed füüsiliselt hajutatud piirkondadeks. Igat piirkonda haldab üks regiooniserver ja iga regiooni serveri eest vastutab üks või mitu piirkonda. HBase Architecture koosneb ülem-alluv serveritest. Klastril HBase on üks peasõlm nimega HMaster ja mitu piirkonna serverit nimega HRegion Server (HRegion Server). Igas piirkondlikus serveris on mitu piirkonda - regioonid.
HDFS-i salvestusmehhanism
HDFS-is salvestatakse andmed tabelisse ülaltoodud viisil.
Igal real on võti.
Veerg: see on andmekogum, mis kuulub ühte veeruperekonda ja on lisatud rea sisse.
Veergude perekond: iga veerupere koosneb ühest või enamast veerust.
Igas tabelis on veergude perekondade kollektsioon. Need veerud ei ole skeemi osa.
HBase-l on dünaamilised veerud. Erinevatel lahtritel võivad olla erinevad veerud, kuna veergude nimed on lahtrite sees kodeeritud
Veeru täpsustaja: veeru nime nimetatakse veeru täpsustajaks.
HBase arhitektuurikomponendid
HBase'i arhitektuuris on peamised elemendid: HMaster ja Region Server. Piirkondlikud HBase'i andmete salvestamine.
1. HMaster
HMasteri sõlm on kerge ja seda kasutatakse piirkonna serveripiirkonnale määramiseks.
Hmasteril on mõned peamised kohustused, mis on:
- Mõne haldustoimingu teostamine, sealhulgas laadimine, tasakaalustamine, andmete loomine, värskendamine, kustutamine jne.
Vastutab skeemi muudatuste või META andmete muudatuste eest vastavalt kliendirakenduse suunale
- Suure osa DDL-i tööga HBase-tabelitega tegeleb HMaster.
Mõned meetodid, mida HMasteri liides paljastab, on peamiselt. META andmetele orienteeritud meetodid.
- Tabel (tabeli loomine, eemaldamine, lubamine, keelamine, eemaldamine)
- ColumnFamily (lisage veerg, muutke veergu)
- Piirkond (teisalda, määra)
Klient suhtleb nii HMasteri kui ka ZooKeeperiga kahesuunaliselt. Operatsioonide lugemiseks ja kirjutamiseks võtab see otse ühendust HRegioni serveritega. HMaster määrab regioonid selle piirkonna serveritele ja kontrollib omakorda piirkondlike serverite tervislikku seisundit.
2. Piirkonna server
Allpool toodud diagrammi abil saame piirkonna serveri kohta umbkaudse ettekujutuse.
Piirkonna serverid on töösõlmed, mis käsitlevad klientide lugemise, kirjutamise, värskendamise ja kustutamise taotlusi. Regiooniserver on kerge, see töötab klastri Hadoopi kõigis sõlmedes. Regiooniserveri põhiülesanne on andmete salvestamine piirkondadesse ja klientide taotluste täitmine. Veel üks HBase piirkonna serveri oluline ülesanne on kasutada koormuse tasakaalustamiseks automaatse jagamise meetodit, levitades HBase tabelit dünaamiliselt, kui see muutub pärast andmete sisestamist liiga suureks.
HMaster võtab ühendust mitme HRegioni serveriga ja täidab järgmisi funktsioone:
- Juhtimine ja piirkondade võõrustamine
- Piirkondade automaatne jagamine
- Lugemis- ja kirjutamistaotluste menetlemine
- Otsene kliendisuhtlus
3. HDFS
HDFS tähistab hajutatud failisüsteemi Hadoop. See salvestab kõik failid mitmesse plokki ja replitseerib plokid Hadoopi klastris rikke taluvuse säilitamiseks. HDFS tagab kõrge tõrketaluvuse ja töötab odavate materjalidega. Odava kauba riistvara kasutamisel klastrisse sõlmede lisamiseks ja selle töötlemiseks ning salvestamiseks saadakse kliendile parem tulemus kui olemasoleval riistvaral. HDFS võtab HBase komponentidega ühendust ja salvestab hajutatud viisil palju andmeid.
4. Loomaaednik
Loomaaiapidaja on avatud lähtekoodiga projekt. HMaster ja HRegionServers registreerivad end ZooKeeperis.
See pakub mitmesuguseid teenuseid, nagu konfiguratsiooniteabe säilitamine, nimetamine, hajutatud sünkroonimise pakkumine jne. Hajutatud sünkroonimine on protsesside kaudu pakutavate sõlmedevaheliste koordineerimisteenuste pakkumine, et pääseda juurde töötavatele rakendustele. Sellel on ajalised sõlmed, mis tähistavad piirkonna servereid. Põhiserverid kasutavad neid sõlmi saadaolevate serverite otsimiseks.
Neid sõlme kasutatakse ka võrgusektsioonide ja serveririkete jälgimiseks. Loomaaednik on kliendi piirkonna serveri vaheline suhtlusvahend. Kui klient soovib suhelda regiooniserveriga, on nende vaheliseks suhtlusvahendiks loomapidaja.
Kuidas käivitatakse otsing HBase'i arhitektuuris
Nagu teate, salvestab loomapidaja META tabeli asukoha. Iga kord, kui klient pöördub HBase poole või taotleb seda, toimitakse järgmiselt.
Klient saab ZooKeeperist teada, kuidas neile META lauda paigutada. Klient nõuab seejärel META-tabelilt neilt vastavat reavõtit, et pääseda juurde piirkonna serveri asukohale. Kui META tabel asub, salvestab klient selle teabe. Klient ei viita neile META-tabelile enne ja kui ala on nihutatud või nihutatud. Seejärel taotletakse uuesti META serverit ja vahemälu värskendatakse. Nagu alati, ei kuluta kliendid aega piirkonnaserveri asukoha leidmiseks META serveril, nii et see säästab aega ja kiirendab otsinguprotsessi.
Funktsioonid
Hadoopiga on seda lihtne nii lähtest kui ka sihtkohast integreerida.
Jagatud salvestusruumi nagu HDFS toetatakse.
Sellel on juhusliku juurdepääsu funktsioon, kasutades sisemist räsitabelit andmete salvestamiseks kiiremaks otsinguks HDFS-failides.
HBase arhitektuuri eelised
- Need võivad salvestada suuri andmekogumeid
- Me saame andmebaasi jagada
- Gigabaiti petabaitesse tasuv
- Suur kättesaadavus replikatsiooni ja rikke tõttu
HBase arhitektuuri puudused
- SQL-i struktuur ei toeta
- Ei toeta tehingut
- Ainult sorditud võtmega
- Klastrimälu probleemid
Järeldus
HBase on üks nonSql veerupõhist hajutatud andmebaasi apaches. Võrreldes Hadoopi või Hive'iga, töötab HBase vähem, kui soovite hankida vähem kirjeid. Niisiis arutasime selles artiklis HBase'i arhitektuuri ja selle olulisi komponente.
Soovitatavad artiklid
See on olnud HBase Arhitektuuri juhend. Siin arutasime kontseptsiooni, komponente, funktsioone, eeliseid ja puudusi. Lisateavet leiate ka meie muudest soovitatud artiklitest -
- Mis on suurandmete tehnoloogia?
- HDFS vs HBase kumb on parem
- Mis on montaaži keel?
- Sissejuhatus HTML-i