hbase資料模型

2022-08-31 08:39:11 字數 914 閱讀 3087

與nosql資料庫一樣,row key是用來檢索記錄的主鍵。訪問hbase table中的行,只有三種方式:

1.通過單個row key訪問

2.通過row key的range(正則)

3.全表掃瞄

row key行鍵 (row key)可以是任意字串(最大長度 是 64kb,實際應用中長度一般為 10-100bytes),在hbase內部,row key儲存為位元組陣列。儲存時,資料按照row key的字典序(byte order)排序儲存。設計key時,要充分利用排序儲存這個特性,將經常一起讀取的行儲存放到一起。(位置相關性)

列簇 :hbase表中的每個列,都歸屬於某個列族。列族是表的schema的一部分(而列不是),必須在使用表之前定義。列名以列族作為字首。例如 courses:history,courses:math都屬於courses 這個列族,儲存資料時,每乙個列族對應乙個檔案。

由 唯一確定的單元。cell中 的資料是沒有型別的,全部是位元組碼形式存貯。

關鍵字:無型別、位元組碼

hbase 中通過rowkey和columns確定的乙個存貯單元稱為cell。每個 cell都儲存 著同乙份資料的多個版本。版本通過時間戳來索引。時間戳的型別是 64位整型。時間戳可以由hbase(在資料寫入時自動 )賦值,此時時間戳是精確到毫秒 的當前系統時間。時間戳也可以由客戶顯式賦值。如果應用程式要避免資料版 本衝突,就必須自己生成具有唯一性的時間戳。每個cell中不同版本的資料按照時間倒序排序,即最新的資料排在最前面。

為了避免資料存在過多版本造成的的管理 (包括存貯和索引)負擔,hbase提供 了兩種資料版本**方式。一是儲存資料的最後n個版本,二是儲存最近一段時間內的版本(比如最近七天)。使用者可以針對每個列族進行設定。

hbase資料模型

與nosql資料庫們一樣,rowkey是用來檢索記錄的主鍵。訪問hbase table中的行 訪問方式 a.通過單個row key訪問,b.通過row key的range 正則 c.全表掃瞄,rowkey是任意字串,最大長度 是 64kb,實際應用中長度一般為 10 100bytes,hbase內部...

Hbase資料模型

hbase 以表的形式儲存資料。表由行和列族組成。列劃分為若干個列族 row family 其邏輯檢視如下 幾個關鍵概念 1 行鍵 rowkey 行鍵是位元組陣列,任何字串都可以作為行鍵 表中的行根據行鍵進行排序,資料按照 row key 的位元組序 byte order 排序 儲存 所有對錶的訪問...

HBase二 HBase資料模型

hbase是基於google bigtable模型開發的,典型的key value系統 1.hbase schema可以有多個table 2.每個table可由多個column family組成。3.hbase列族中的列可以隨意定義,因為hbase是無模式的。1.byte array 2.表中每條記...