Row Keys in der HBase Data Model

HBase Datenspeicher bestehen aus einer oder mehreren Tabellen, die durch den Zeilenschlüssel indiziert sind. Die Daten werden in Zeilen mit Spalten gespeichert sind, und Reihen mehrere Versionen haben. In der Standardeinstellung Datenversionierung für die Zeilen mit Zeitstempel realisiert.

Logische Sicht des Kunden Kontaktinformationen in HBase
Row KeySpalte Familie: {Spalte Qualifier: Version: Wert}
00001Kundenname: { 'FN': 1383859182496: "John",
'LN': 1383859182858: 'Smith',
'MN': 1383859183001: "Timothy",
'MN': 1383859182915: 'T'}

Contact: { 'EA': 1383859183030:'[email protected] ',
"SA": 1383859183073: "1 Hadoop Lane, NY11111 '}
00002Kundenname: { 'FN': 1383859183103: 'Jane',

'LN': 1383859183163: "Doe",
Kontaktinformation: {
"SA": 1383859185577: "7 HBase Ave, CA22222 '}

Aus Gründen der Darstellung hat die Tabelle zwei einfache Reihe Tasten: 00001 und 00002. Row Schlüssel werden als Byte-Arrays implementiert und werden in Byte-lexikographischen Reihenfolge sortiert, was einfach bedeutet, dass die Zeile Schlüssel sortiert werden, Byte für Byte, aus links nach rechts.

Wenn Sie in Bezug auf die numerischen Werte denken, wenn Zeile Schlüssel entwerfen, dann ist das Sortieren einfach. Gegeben sind zwei Tasten, wenn das Byte bei Index 1 in Key 1 ist kleiner als die Byte bei Index 1 in Key 2, Zeile Taste 1 wird immer vor dem Zeilenschlüssel gespeichert werden 2, unabhängig davon, was in der Folge von Bytes nächstes kommt.

Allerdings ist es üblich, druckbare Zeichen (ASCII) verwenden, anstatt numerische Werte für die Reihe Tasten in HBase und wenn Sie das tun, müssen Sie verstehen, dass die Java-Sprache Zeichen repräsentiert den Unicode-Standard verwenden. Das folgende Beispiel verdeutlicht diesen Entwurf Überlegung für Basic Latin (ASCII).

"Rowa" vorangeht "Rowa" "Row-1" vorangeht "Row11" "Row1" vorangeht "Rowa"

Sie fragen sich vielleicht, warum Sie mit diesem feinen Details in Bezug stören würde Schlüssel zu rudern. Der Grund für diese besondere Aufmerksamkeit ist, dass die richtige Reihe Schlüsselentwurf in HBase gute Leistung zu erreichen entscheidend ist - nicht so bedeutet tun Sie den vollen Wert Ihres HBase Cluster nicht erkennen. Sortiert Reihe Schlüssel kann Ihnen helfen, Ihre Daten zugreifen schneller.

Menü