三 資料模型概念

2022-03-15 04:10:58 字數 1902 閱讀 4370

1 邏輯模型 

hbase

中最基本的單位是列,一列或者多列構成了行,

行有行鍵(rowkey),並且是唯一的。

hbase

中的乙個表有若干行,每行有很多列,列中的值有多個版本,每個版本的值稱為乙個單元格,每個單元儲存的是不同時刻該列的值。

hbase 可以理解為 map 這種結構的無限巢狀版本。

2 物理模型

雖然在邏輯模型中,

表可以被看成乙個稀疏的行的集合。

但在物理上,表示按列族分開儲存的。

hbase 的列是按列族分組的,hfile是面向列的,存放行的不同列的物理檔案,乙個列族的資料存放在多個 hfile 中,最重要的是乙個列族的資料會被同乙個regioin管理,物理上存放在一起。

region 是管理 hfile 的一種機制。

hbase 的表被設計成可以不禁用表而隨時加入新的列,因此可以將新列直接加入乙個列族而無需宣告。

3 資料模型的重要概念

表 在hbase中資料以表的形式儲存。

表名作為hdfs儲存路徑的一部分來使用

,因此必須要符合檔名規範,所以構成表名的字元是有限制的

。可以直接檢視底層儲存系統,在hdfs中可以看到每個表的表名都作為獨立的目錄結構,在某些情況下,使用者可能需要檢視這部分資訊。

因為乙個列族將會單獨產生乙個hfile, 所以多列族其實是不可取的。  因為每次存/刪資料時候  需要重新整理兩個hfile  遠不如將列族定義在不同的表中。 盡可能靠相關聯的列來擴大hbase表中的列。展現其效能。因此hbase中的表遠遠少於rdbms的表。

hbase建立表只需要指定 表名 和 至少乙個列族。列族影響標的物理儲存結構, 建立表後列族還可以更改,但是比較麻煩。 

hbase的表沒有列定義,沒有型別,這就是hbase 被稱為無模式資料庫的原因。

訪問 hbase 不需要使用者名稱和密碼,

沒有 schema

。將hbase-site.xml 配置檔案複製乙份到自己的工程中,hbaseapi會讀取配置檔案完成對 hbase 的連線。建立連線是一項非常消耗資源的工作,

hbase為我們提供乙個連線池,可以更好的管理資源重用。

行鍵行鍵,即 rowkey。 行鍵是按字典排序由低到高儲存在表中的,以乙個空的陣列來標識表空間的起始或結尾。 

行鍵排序規則如下圖, 資料按照二進位制位元組從左至右逐一對比形成最終的次序。

在 hbase 中行鍵是唯一的索引,不過在新版本的 hbase 中考慮了對輔助索引的支援。 

為了高效檢索資料,應該仔細設計 rowkey 以獲得最高的查詢效能: 首先 rowkey 被冗餘儲存,所以長度

不宜過長

,過長的 rowkey 將會占用大量的空間同事會降低檢索效率;其次rowkey 應該是

分布均勻

,這樣不會產生

熱點現象; 最後是 rowkey 唯一原則,必須在設計上保證其

唯一性。

列族hbase 中的列族是一些列的集合。乙個列族成員都有相同的 字首 : 限定符 組成。  字首(列族名必須由可列印的字元, 限定符則可以亂搞。可以由任意位元組陣列組成。)

修改列族時候需要先停用表。應該講經常一起查詢的列放在乙個列族中,合理劃分列族將減少查詢時載入到快取的資料。

單元格hbase 中的單元格由行鍵、列族、列、時間戳唯一確定。單元格的內容是不可分割的位元組陣列。每個單元格都儲存著

乙份資料的多個版本

,不同時間

版本的資料按照時間倒序排序

,最新時間的資料排在最前面,

時間戳是 64 位的整數

, 可以由客戶端在寫入資料時賦值, 也可以由 regionserver 自動賦值。

rocky_24

來自為知筆記(wiz)

概念資料模型 邏輯資料模型 物理資料模型

概念資料模型設計與邏輯資料模型設計 物理資料模型設計是資料庫及資料倉儲模型設計的三個主要步驟。在資料倉儲領域有乙個概念叫conceptual data model,中文一般翻譯為 概念資料模型 概念資料模型是終端使用者對資料儲存的看法,反映了終端使用者綜合性的資訊需求,它以資料類的方式描述企業級的資...

概念資料模型,邏輯資料模型,物理資料模型

在資料倉儲領域有乙個概念叫conceptual data model,中文一般翻譯為 概念資料模型 概念資料模型是終端使用者對資料儲存的看法,反映了終端使用者綜合性的資訊需求,它以資料類的方式描述企業級的資料需求,資料類代表了在業務環境中自然聚集成的幾個主要類別資料。概念資料模型的內容包括重要的實體...

資料模型 概念資料模型,邏輯資料模型,物理資料模型

資料模型所描述的內容包括三個部分 資料結構 資料操作 資料約束。1 資料結構 資料模型中的資料結構主要描述資料的型別 內容 性質以及資料間的聯絡等。資料結構是資料模型的基礎,資料操作和約束都建立在資料結構上。不同的資料結構具有不同的操作和約束。2 資料操作 資料模型中資料操作主要描述在相應的資料結構...