您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)HBase理論知識(shí)點(diǎn)有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
數(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ù)的可靠性即可
通過(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)有改變)
索引: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í)候,有以下幾種方式:
通過(guò)get方式,指定rowkey獲取唯一一條記錄
通過(guò)scan方式,設(shè)置startRow和stopRow參數(shù)進(jìn)行范圍匹配
全表掃描,即直接掃描整張表中所有行記錄
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)
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遷移。
每一個(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操作
看完上述內(nèi)容,你們對(duì)HBase理論知識(shí)點(diǎn)有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(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)容。