亚洲日本欧美日韩高观看,性高湖久久久久久久久,亚洲av成人噜噜无码网站,亚洲欧美日韩国产一区二区动图,亚洲欧美日韩国产精品一区二区


學(xué)AI,好工作 就找北大青鳥
關(guān)注小青 聽課做題,輕松學(xué)習(xí)
周一至周日
4000-9696-28

Hadoop家族新成員Hbase重磅來襲

來源:北大青鳥總部 2023年06月07日 13:26

摘要: Hbase是基于HDFS的非關(guān)系型大數(shù)據(jù),非常適合存儲,因為它可以像HDFS一樣做到存儲的線性擴(kuò)容,無論多少數(shù)據(jù)都可以存儲。Hbase數(shù)據(jù)庫繼承了Hadoop家族的良好基金,用來存儲海量數(shù)據(jù)。

說起Hadoop,玩大數(shù)據(jù)的沒有一個不知道,Hadoop是由Apache基金會所開發(fā)的一個分布式系統(tǒng)基礎(chǔ)架構(gòu),包含分布式文件系統(tǒng)HDFS(HadoopDistributed FileSystem)、分布式計算框架MapReduce、HIve數(shù)據(jù)倉庫、Avro序列化工具等。而今天我們要給大家介紹一位新朋友Hbase,它是基于HDFS的非關(guān)系型大數(shù)據(jù)(非常適合存儲,因為可以像HDFS一樣做到存儲的線性擴(kuò)容,無論多少數(shù)據(jù)都可以存儲;)



Hbase數(shù)據(jù)庫繼承了Hadoop家族的良好基金,它是用來存儲海量數(shù)據(jù)的,百萬以下的數(shù)據(jù)量就不要打擾它了。既然是存儲使用使用,那么它是如何做數(shù)據(jù)存儲的呢?為了大家更好的理解概念,我們與同一個數(shù)據(jù)在傳統(tǒng)的關(guān)系型數(shù)據(jù)庫如Mysql中的存儲做對比進(jìn)行理解?,F(xiàn)在我們來存儲學(xué)生張三和李四的信息,包含編號、姓、名、密碼、學(xué)號,在Mysql中會分成兩行五列存儲。



而在HBase中則會將數(shù)據(jù)從邏輯上分為三部分,第一部分為rowkey唯一標(biāo)識(即Mysql中的主鍵),第二部分則把相同屬性的內(nèi)容劃分到同一個Column-Family中,比如姓名、賬號,每一個Column-Family就是一個Qualifier,而里面具體的值就是CellValue。在下表(邏輯關(guān)系)中Rowkey是1,CF是姓名屬性、賬號屬性,Qualifier是info、pwd,Value是張、三、20160719、111。



在Hbase中物理存儲如下,Version代表的是版本,在Hbase中允許一個值有多個版本,通過Version號來標(biāo)記。將上面的邏輯數(shù)據(jù)拆解后,如下圖所示,hbase會進(jìn)行如下存儲。從存儲方式來看,一個CF對應(yīng)一個HFile,而HFile在HDFS分布式文件系統(tǒng)中,是可以無限擴(kuò)張,因此Hbase的存儲能力也可以無限擴(kuò)張。細(xì)心的朋友不要以為HFile只能存儲在HDFS上噢,它其實在本地的文件系統(tǒng)也可以存儲使用,只不過就是存儲能力有限,無法擴(kuò)展而已。



介紹完了Hbase的數(shù)據(jù)存儲模式,我們來看看它的架構(gòu)圖,在Hbase中從上往下包含API、Master節(jié)點(diǎn)、RegionServer、Region、HDFS五大部分,在實際使用過程中使用分布式協(xié)調(diào)器Zookeeper來協(xié)調(diào)MasterServer的負(fù)載,確保使用Hbase是處于工作狀態(tài)。



在Hbase中Master節(jié)點(diǎn)是用來協(xié)調(diào)多個Regionserver節(jié)點(diǎn)的,確保RegionServer是處于工作狀態(tài)。而為了保證系統(tǒng)的高可用,也要確保Master節(jié)點(diǎn)不能掛掉啊,因此Zookeeper會來做Master節(jié)點(diǎn)的整體監(jiān)控,當(dāng)有Master節(jié)點(diǎn)掛掉時,選舉出新的Master節(jié)點(diǎn)來接管工作。

Regionserver包含多個Region,用于管理表格、讀寫數(shù)據(jù),通過對外提供API可以直接獲取Region的數(shù)據(jù),Region則是真正存儲數(shù)據(jù)的地方,一般一個Region對應(yīng)一個CF,但是當(dāng)表格數(shù)據(jù)很大由多個CF組成時,就會存儲在多個Region中,通過存儲單元Store關(guān)聯(lián)起來。同時Zookeeper也會管理多個Regionserver之間的協(xié)調(diào)調(diào)度。

下圖是Hbase工作的原理圖,從圖上我們看到RegionServer還包含WAL、Memstore、Hfile幾部分。WAL是HBase為了保障數(shù)據(jù)一致性的一個設(shè)計,為了提高數(shù)據(jù)讀寫性能,并且保證數(shù)據(jù)準(zhǔn)確,HBase會把數(shù)據(jù)先寫入到內(nèi)存,但內(nèi)存并不是一直可靠啊,萬一斷電了數(shù)據(jù)全沒了,因此在寫入內(nèi)存時,也會寫一份日志,當(dāng)內(nèi)存掛掉時,通過日志的數(shù)據(jù)可以知道內(nèi)容,實現(xiàn)數(shù)據(jù)恢復(fù)。寫入到內(nèi)存的數(shù)據(jù)一般放在Memstore中,然后再定期的把Memstore的數(shù)據(jù)存儲在磁盤,然后清空Memstore。HFile就是Hbase最終存儲數(shù)據(jù)的實體了,本質(zhì)上也就是HDFS的一個文件,一個CF存儲在一個HFile中。



本文介紹了HBase數(shù)據(jù)庫,它與Hive、Mysql還是不太一樣噢,Hive專注于數(shù)據(jù)分析,底層依靠的更多是MapReduce的計算能力,而Mysql是關(guān)系型數(shù)據(jù)庫,主要聚焦在事務(wù)的ACID(原子性、一致性、持久性、),Hbase則更多的是聚焦在數(shù)據(jù)的存儲方便。如果你的數(shù)據(jù)足夠多,上億萬的數(shù)據(jù)才考慮使用Hbase,數(shù)據(jù)量太小反而是發(fā)揮不出優(yōu)勢,也沒辦法做數(shù)據(jù)的其他處理。在決定使用Hbase之前,要確保硬件條件到位,一般來說HDFS集群的數(shù)據(jù)節(jié)點(diǎn)少于5個時,基本也等于雞肋,相當(dāng)于擺好了一個大陣仗,飛機(jī)坦克步兵炮兵全上了,以為是來了一個連的敵人,結(jié)果只來了一個班。

不過總的來說Hbase還是非常優(yōu)秀的一款大數(shù)據(jù),在很多互聯(lián)網(wǎng)公司的信息存儲都使用Hbase,在流數(shù)據(jù)存儲、實時計算時,Hbase也是很好的選擇,相信今天大家了解了Hbase數(shù)據(jù)之后,可以更好的將Hbase使用在業(yè)務(wù)當(dāng)中,輸出更好的大數(shù)據(jù)解決方案。


標(biāo)簽: 大數(shù)據(jù)
報名優(yōu)惠
免費(fèi)試聽
課程資料
官方微信
返回頂部
培訓(xùn)課程 熱門話題 站內(nèi)鏈接