溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

HBase理論知識(shí)點(diǎn)有哪些

發(fā)布時(shí)間:2021-10-18 09:29:42 來(lái)源:億速云 閱讀:146 作者:柒染 欄目:大數(shù)據(jù)

今天就跟大家聊聊有關(guān)HBase理論知識(shí)點(diǎn)有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

一、數(shù)據(jù)存儲(chǔ)

  • 數(shù)據(jù)存儲(chǔ):HBase數(shù)據(jù)存儲(chǔ)依賴于HDFS,自身不存儲(chǔ)數(shù)據(jù),所以HBase其實(shí)是個(gè)表數(shù)據(jù)管理的工具。

  • 數(shù)據(jù)備份:HBase的數(shù)據(jù)可靠性完全依賴于HDFS進(jìn)行數(shù)據(jù)備份(三副本),因此,HBase無(wú)需關(guān)心數(shù)據(jù)的可靠性,只需要關(guān)心服務(wù)的可靠性即可

二、HBase的服務(wù)可靠性如和保證?

通過(guò)轉(zhuǎn)移管理權(quán)限。

HBase中的Region(真實(shí)數(shù)據(jù)存在HDFS)由Region Server進(jìn)行管理,當(dāng)ZooKeeper發(fā)現(xiàn)RS掛掉后,HMaster會(huì)將此RS上的Region數(shù)據(jù)進(jìn)行遷移(其實(shí)所謂的遷移,只是將Region的管理權(quán)限遷移到其它的RS上,數(shù)據(jù)存儲(chǔ)的位置仍然在HDFS上,沒(méi)有改變)

二、數(shù)據(jù)結(jié)構(gòu)和查詢

索引:HBase只在rowkey有索引,所以主要面向于基于rowkey進(jìn)行簡(jiǎn)單的查詢,HBase不適合復(fù)雜查詢,如根據(jù)多個(gè)字段查詢(沒(méi)有索引,查詢很慢),表關(guān)聯(lián)直接不支持。

HBase是三維有序存儲(chǔ)的,通過(guò)rowkey(行鍵),column key(column family和qualifier)和TimeStamp(時(shí)間戳)這個(gè)三個(gè)維度可以對(duì)HBase中的數(shù)據(jù)進(jìn)行快速定位。

HBase中rowkey可以唯一標(biāo)識(shí)一行記錄,在HBase查詢的時(shí)候,有以下幾種方式:

  1. 通過(guò)get方式,指定rowkey獲取唯一一條記錄

  2. 通過(guò)scan方式,設(shè)置startRow和stopRow參數(shù)進(jìn)行范圍匹配

  3. 全表掃描,即直接掃描整張表中所有行記錄

三、HDFS

HDFS:存儲(chǔ)和計(jì)算分離的架構(gòu)

HBase依賴HDFS提供最終的底層數(shù)據(jù)存儲(chǔ)服務(wù),多副本(三副本)保證高可用性 .

  • HBase表的HDFS目錄結(jié)構(gòu)如下

/hbase
    /data
        /<Namespace>                    (集群里的Namespaces)
            /<Table>                    (該集群的Tables)
                /<Region>               (該table的Regions)
                    /<ColumnFamily>     (該Region的列族)
                        /<StoreFile>    (該列族的StoreFiles)
  • HLog的HDFS目錄結(jié)構(gòu)如下

/hbase
    /WALs
        /<RegionServer>    (RegionServers)
            /<WAL>         (WAL files for the RegionServer)

四、Hbase中HMaster作用

HMaster在功能上主要負(fù)責(zé)Table表和HRegion的管理工作,具體包括:

1、管理用戶對(duì)Table表的增、刪、改、查操作;

2、管理HRegion服務(wù)器負(fù)載均衡,調(diào)整HRegion分布;

3、在HRegion分裂后,負(fù)責(zé)新HRegion的分配;

4、在HRegion服務(wù)器停機(jī)后,負(fù)責(zé)失效HRegion服務(wù)器上的HRegion遷移。

五、MemStore存儲(chǔ)了哪些數(shù)據(jù)?

每一個(gè)Store由一個(gè)MemStore和多個(gè)StoreFile組成。為什么有MenStore和這么多個(gè)StoreFile是因?yàn)椴豢赡苊看蝸?lái)一條數(shù)據(jù)就刷新一次到磁盤(pán),頻繁寫(xiě)磁盤(pán)會(huì)造成效率不高且數(shù)據(jù)不連續(xù)。所以一般是在內(nèi)存中將數(shù)據(jù)緩存到一定量,然后在一口氣flush到磁盤(pán)。每次flush會(huì)將內(nèi)存中的數(shù)據(jù)flush到磁盤(pán),但是內(nèi)存中會(huì)存儲(chǔ)多個(gè)CF的數(shù)據(jù),所以一次flush會(huì)生成多個(gè)StoreFile,并且有些StoreFile可能很小。

這就是為什么要求HBase的CF不能設(shè)置太多,太多的話會(huì)頻繁刷新磁盤(pán),而且小文件會(huì)觸發(fā)耗時(shí)的Compact操作

六、HFile邏輯結(jié)構(gòu)

HBase理論知識(shí)點(diǎn)有哪些

六、HMaster與Zookeeper與HDFS的namenode

看完上述內(nèi)容,你們對(duì)HBase理論知識(shí)點(diǎn)有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI