Hbase表結(jié)構(gòu)

關(guān)鍵概念

表(Table)

HBase會(huì)將數(shù)據(jù)組織進(jìn)一張張的表里面,但是需要注意的是表名必須是能用在文件路徑里的合法名字,因?yàn)镠Base的表是映射成hdfs上面的文件。

行(Row)

在表里面,每一行代表著一個(gè)數(shù)據(jù)對(duì)象,每一行都是以一個(gè)行鍵(Row Key)來(lái)進(jìn)行唯一標(biāo)識(shí)的,行鍵并沒(méi)有什么特定的數(shù)據(jù)類型,以二進(jìn)制的字節(jié)來(lái)存儲(chǔ)。

列族(Column Family)

在定義HBase表的時(shí)候需要提前設(shè)置好列族, 表中所有的列都需要組織在列族里面,列族一旦確定后,就不能輕易修改,因?yàn)樗鼤?huì)影響到HBase真實(shí)的物理存儲(chǔ)結(jié)構(gòu),但是列族中的列標(biāo)識(shí)(Column Qualifier)以及其對(duì)應(yīng)的值可以動(dòng)態(tài)增刪。表中的每一行都有相同的列族,但是不需要每一行的列族里都有一致的列標(biāo)識(shí)(Column Qualifier)和值,所以說(shuō)是一種稀疏的表結(jié)構(gòu),這樣可以一定程度上避免數(shù)據(jù)的冗余。例如:{row1, userInfo: telephone —> 137XXXXX869 }{row2, userInfo: fax phone —> 0898-66XXXX } 行1和行2都有同一個(gè)列族userinfo,但是行1中的列族只有列標(biāo)識(shí)(Column Qualifier):移動(dòng)電話號(hào)碼,而行2中的列族中只有列標(biāo)識(shí)(Column Qualifier):傳真號(hào)碼。

列標(biāo)識(shí)(Column Qualifier)

列族中的數(shù)據(jù)通過(guò)列標(biāo)識(shí)來(lái)進(jìn)行映射,其實(shí)這里大家可以不用拘泥于“列”這個(gè)概念,也可以理解為一個(gè)鍵值對(duì),Column Qualifier就是Key。列標(biāo)識(shí)也沒(méi)有特定的數(shù)據(jù)類型,以二進(jìn)制字節(jié)來(lái)存儲(chǔ)。

單元(Cell)

每一個(gè) 行鍵,列族和列標(biāo)識(shí)共同組成一個(gè)單元,存儲(chǔ)在單元里的數(shù)據(jù)稱為單元數(shù)據(jù),單元和單元數(shù)據(jù)也沒(méi)有特定的數(shù)據(jù)類型,以二進(jìn)制字節(jié)來(lái)存儲(chǔ)。

表結(jié)構(gòu)關(guān)系

可以把HBase看成一個(gè)多維度的Map模型去理解它的數(shù)據(jù)模型。

  • 行鍵映射一個(gè)列族數(shù)組
  • 列族數(shù)組中的每個(gè)列族又映射一個(gè)列標(biāo)識(shí)數(shù)組
  • 列標(biāo)識(shí)數(shù)組中的每一個(gè)列標(biāo)識(shí)(Column Qualifier)又映射到一個(gè)時(shí)間戳數(shù)組,里面是不同時(shí)間戳映射下不同版本的值,但是默認(rèn)取最近時(shí)間的值,所以可以看成是列標(biāo)識(shí)(Column Qualifier)和它所對(duì)應(yīng)的值的映射。


    image

聲明

一直沒(méi)太搞懂hbase表結(jié)構(gòu),看到一篇文章,做一個(gè)整理記錄
參考鏈接https://blog.csdn.net/ymh198816/article/details/51244911

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 我們通過(guò)業(yè)務(wù)系統(tǒng)將爬蟲(chóng)的數(shù)據(jù)寫(xiě)入了HBase,這篇文章說(shuō)說(shuō)HBase的表結(jié)構(gòu),及在HBase上利用Phoen...
    IIGEOywq閱讀 6,583評(píng)論 0 5
  • Hbase概述 Hbase是一個(gè)開(kāi)源可伸縮的針對(duì)海量數(shù)據(jù)存儲(chǔ)的分布式nosql數(shù)據(jù)庫(kù)。Hbase可以看成是以行鍵(...
    shuaidong閱讀 1,281評(píng)論 0 1
  • Hive操作命令: 創(chuàng)建表: 創(chuàng)建一個(gè)新表,結(jié)構(gòu)與其他一樣
    行走在朝圣路上閱讀 1,911評(píng)論 0 1
  • 一、簡(jiǎn)介 Hbase:全名Hadoop DataBase,是一種開(kāi)源的,可伸縮的,嚴(yán)格一致性(并非最終一致性)的分...
    菜鳥(niǎo)小玄閱讀 2,605評(píng)論 0 12
  • 感情的世界沒(méi)有誰(shuí)錯(cuò)誰(shuí)對(duì) 誰(shuí)都可以給誰(shuí)親愛(ài)的稱謂 總有天會(huì)遇見(jiàn)那個(gè)對(duì)的誰(shuí) 冥冥中有雙手將你向我推 注定你與我會(huì)在此刻...
    沈九壹閱讀 253評(píng)論 0 0

友情鏈接更多精彩內(nèi)容