Oversikt over HBase Storage Architecture



Der består HBase Storage-arkitektur av mange komponenter. La oss se på funksjonene til disse komponentene og vite hvordan data skrives.

Apache HBase er en åpen kildekode, distribuert, ikke-relasjonell database modellert etter Googles Bigtable og skrevet i Java. Det gir funksjoner som ligner på Bigtable på toppen av Hadoop og HDFS (Hadoop Distributed Filesystem), det vil si at det gir en feiltolerant måte å lagre store mengder sparsomme data på, noe som er vanlig i mange big data-brukstilfeller. HBase brukes for sanntid lese- / skrivetilgang til Big Data.





HBase Storage-arkitekturen består av mange komponenter. La oss se på funksjonene til disse komponentene og vite hvordan data skrives.

HFiler:



HFiles danner det lave nivået av HBases arkitektur. HFiles er lagringsfiler som er opprettet for å lagre HBases data raskt og effektivt.

HMaster:

HMaster er ansvarlig for å tilordne regionene til hver HRegionServer når HBase startes. Det er ansvarlig for å administrere alt relatert til rader, tabeller og deres koordineringsaktiviteter. Hmaster har også detaljene i metadataene.



Komponenter av HBase:

HBase har følgende komponenter:

  • Tabell - Omfatter regioner
  • Region - Rekkevidde lagret sammen
  • Region Servers - Betjener en eller flere regioner
  • Master Server - Daemon er ansvarlig for administrering av HBase-klynge

HBase lagrer data direkte i HDFS og er sterkt avhengig av HDFSs High Availability and Fault Tolerance.

HBase lagringsarkitektur:

HBase Storage Architecture

Den generelle flyten er at en klient kontakter Zookeeper først for å finne en bestemt radnøkkel. Det gjøres ved å hente servernavnet fra Zookeeper. Med denne informasjonen kan den nå spørre den serveren for å få serveren som inneholder metatabellen. Begge disse detaljene er bufret og bare sett opp en gang. Til slutt kan den spørre om metaserver og hente serveren som har raden klienten leter etter.

Når den vet i hvilken region raden ligger, cacher den også denne informasjonen og kontakter HRegionServer direkte. Så over tid har klienten fullstendig informasjon om hvor de kan få rader fra uten å måtte spørre metaserver igjen. Når HRregion åpnes, setter den opp en Store-forekomst for hver HColumnFamily for hvert bord. Data skrives når klienten utsteder en forespørsel til HRegionServer som gir detaljene til den samsvarende HRegion-forekomsten. Det første trinnet er at vi må bestemme om dataene først skal skrives til 'Write-Ahead-Log' (WAL) representert av HLog-klassen. Beslutningen er basert på flagget som klienten har satt.
Når dataene er skrevet til WAL, blir de plassert i MemStore. Samtidig blir Memstore sjekket om den er full, og i så fall blir det bedt om en flush to disk. Deretter blir dataene skrevet inn i HFile.

Har du et spørsmål til oss? Nevn dem i kommentarfeltet, så kommer vi tilbake til deg.

Relaterte innlegg

Insights on HBase Architecture

hva er en java bønne