Prezentare generală a arhitecturii de stocare HBase



Acolo arhitectura de stocare HBase cuprinde numeroase componente. Să ne uităm la funcțiile acestor componente și să știm cum se scriu datele.

cod binar spre zecimal java

Apache HBase este o bază de date open-source, distribuită, fără relații, modelată după Bigtable-ul Google și scrisă în Java. Oferă capacități similare cu Bigtable de pe Hadoop și HDFS (Hadoop Distributed Filesystem), adică oferă un mod tolerant la erori de stocare a unor cantități mari de date rare, care sunt frecvente în multe cazuri de utilizare a datelor mari. HBase este utilizat pentru accesul de citire / scriere în timp real la Big Data.





Arhitectura HBase Storage cuprinde numeroase componente. Să analizăm funcțiile acestor componente și să știm cum se scriu datele.

HFiles:



HFiles formează nivelul scăzut al arhitecturii HBase. HFiles sunt fișiere de stocare create pentru a stoca datele HBase rapid și eficient.

HMaster:

HMaster este responsabil să atribuie regiunile fiecărui HRegionServer la pornirea HBase. Este responsabil de gestionarea a tot ceea ce privește rândurile, tabelele și activitățile de coordonare a acestora. Hmaster are, de asemenea, detalii despre metadate.



Componente de HBase:

HBase are următoarele componente:

cum se instalează hadoop în Ubuntu
  • Tabel - cuprinde regiuni
  • Regiune - Gama de rânduri stocate împreună
  • Servere de regiune - Distribuie una sau mai multe regiuni
  • Master Server - Daemon este responsabil pentru gestionarea clusterului HBase

HBase stochează date direct în HDFS și se bazează foarte mult pe disponibilitatea ridicată și toleranța la erori ale HDFS.

Arhitectura de stocare HBase:

Arhitectura de stocare HBase

Fluxul general este că un client contactează mai întâi Zookeeper pentru a găsi o anumită cheie de rând. Face acest lucru recuperând numele serverului de la Zookeeper. Cu aceste informații, poate interoga acum acel server pentru a obține serverul care deține metatabilul. Ambele detalii sunt stocate în cache și sunt căutate o singură dată. În cele din urmă, poate interoga metaserverul și poate recupera serverul care are rândul pe care clientul îl caută.

Odată ce știe în ce regiune se află rândul, memorează și aceste informații în cache și contactează direct HRegionServer. Deci, de-a lungul timpului, Clientul are informații complete despre de unde să obțină rânduri fără a fi nevoie să interogheze din nou metaserverul. Când HRegion este deschis, acesta configurează o instanță Store pentru fiecare HColumnFamily pentru fiecare tabel. Datele sunt scrise atunci când Clientul trimite o cerere către HRegionServer care oferă detalii instanței HRegion potrivite. Primul pas este că trebuie să decidem dacă datele trebuie scrise mai întâi în „Write-Ahead-Log” (WAL) reprezentat de clasa HLog. Decizia se bazează pe steagul stabilit de client.
Odată ce datele sunt scrise în WAL, acestea sunt plasate în MemStore. În același timp, Memstore este verificat dacă este plin și, în acest caz, este necesară o flush pe disc. Apoi datele sunt scrise în HFile.

Ai o întrebare pentru noi? Menționați-le în secțiunea de comentarii și vă vom răspunde.

cum se găsește tipul de date în python

postări asemănatoare

Insights on HBase Architecture