2010-11-22 2 views

Antwort

3

Nicht unbedingt, aber irgendwann wird es. Dies ist Teil der grundlegenden HBase-Architektur. Wenn Sie eine HBase-Tabelle als Tabellenkalkulation mit ihren Zeilen und Spalten abbilden, umfasst eine Region mehrere aufeinanderfolgende Zeilen in einer Richtung und alle Spalten einer oder mehrerer Spaltenfamilien. Auf diese Weise ist das ganze Blatt mit Regionsfliesen bedeckt.

Jede Region wird auf einem oder mehreren (in der Regel drei) Clusterknoten gespeichert. (Wenn Sie würden alle Knoten lösen eine spezifische Region enthält, an, nachdem Sie alle Region Daten verloren gehen würde. Wenn Sie es nur lose eine Replik, HBase sicher macht es zu einem anderen Knoten aus den verbleibenden Kopien repliziert wird.)

Wenn nun die in einer Region enthaltenen Daten zu groß werden, wird eine Bereichsaufteilung automatisch durch HBase ausgelöst, was zu zwei neuen Regionen führt, die jeweils die Hälfte der Daten enthalten. Nur durch Regionsaufteilungen (neben der Regionsreplikation) werden Daten schließlich über einen HBase-Cluster verteilt.

Speichern von Daten für eine Zeile in verschiedenen Spalten der gleichen Spalte Familie stellt sicher, daß die Daten zusammen an einem Ort gespeichert ist.

0

Wenn die Daten in der Tabelle groß genug sind, teilt HBase die Tabelle in verschiedene Bereiche auf. Da HBase eine spaltenorientierte Datenbank ist, werden unterschiedliche Spaltenfamilien in verschiedenen Regionen gespeichert.

Verwandte Themen