成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié)

好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié),為什么有hbase

成都創(chuàng)新互聯(lián)公司從2013年開始,先為趙縣等服務(wù)建站,趙縣等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為趙縣企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

隨著數(shù)據(jù)的逐漸增大,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫無法滿足對數(shù)據(jù)的查詢和存儲,而hive不是數(shù)據(jù)庫,只是數(shù)據(jù)倉庫,雖然能夠滿足簡單的存儲要求,但是始終無法滿足對非結(jié)構(gòu)化和半結(jié)構(gòu)化的數(shù)據(jù)的存儲和查詢

?

2hbase是什么

Hbase是阿帕奇旗下的一款開源的,多版本的,可擴(kuò)展的非關(guān)系型數(shù)據(jù)庫。

他是基于谷歌的bigtable的基礎(chǔ)上,建立在hdfs上的一款提供高?可靠性的,高性能的列式存儲,可伸縮,實時讀寫的NOSQL的數(shù)據(jù)庫系統(tǒng)

?

3適用場景

?????海量數(shù)據(jù)存儲

?????隨機(jī)實時讀寫和管理數(shù)據(jù)

?

4特點

??????列式存儲

??????模式:無模式(不需要use gp1808,就可以直接創(chuàng)建表了,所以導(dǎo)致hbase中的表是不可以重名的)

??????數(shù)據(jù)類型:單一的byte[]

??????多版本(version):每個值都可以有多個版本

??????稀疏存儲:如果kv為null,則不占用存儲空間

?

5結(jié)構(gòu)框架

?

Client:

hbase的客戶端,包含訪問的hbase的接口(linux shell ,java api)

?????維護(hù)一些cache(緩存)來加速hbase的速度,比如region的位置信息

?

Zookeeper:

好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié)

???????監(jiān)控hmaster的狀態(tài),保證有且只有一個active的hmaster,達(dá)到高可用

???????存儲所有的region的尋址入口,

???????實時監(jiān)控hregionserver的狀態(tài),將regionserrver的上下線信息實時通知給hmaster

???????存儲hbase的所有表的信息(hbase的元數(shù)據(jù))

?

Hmster(hbase的老大)

?????為regionserver分配region(新建表)

?????負(fù)責(zé)regionserver的負(fù)載均衡

?????負(fù)責(zé)region的重新分配(處理hregionserver異常,hregion裂變)

?????Hdfs上的垃圾文件回收

?????處理schema的更新請求

?

Hregionserver(hbase的小弟) ??

?????維護(hù)老大給他的region(管理本機(jī)上的region)

?????處理client對region的IO請求,并和hdfs交互

?????Regionserver負(fù)責(zé)切分在運行過程中變大的region

?

Hregion:

?????Hbase中分布式的存儲和負(fù)載的最小單元,表或者是表的一部分

(在HBase中數(shù)據(jù)按主鍵排序,同時表按主鍵劃分為多個Region

Region按大小分割的,隨著數(shù)據(jù)增多,Region不斷增大,當(dāng)增大到一個閥值的Region就會分成兩個新的Region)

  Region雖然是分布式存儲的最小單元,但并不是存儲的最小單元。每個Region包含著多個Store對象。每個Store包含一個MemStore或若干StoreFile,StoreFile包含一個或多個HFile。MemStore存放在內(nèi)存中,StoreFile存儲在HDFS上。

Hlog;

?????對hbase的操作進(jìn)行記錄,使用wal(Write-Ahead-Log)寫數(shù)據(jù),優(yōu)先寫入log,然后再寫入memstore,以防數(shù)據(jù)丟失時可以進(jìn)行日志回滾回復(fù)數(shù)據(jù)

Store:

??????相當(dāng)于一個列簇。

?

Memstore:128M

???????內(nèi)存緩沖區(qū),用于將數(shù)據(jù)批量刷新到hdfs上

?

Hstorefile(hfile)

???????Hbase中的數(shù)據(jù)是以hfile的形式存儲到hdfs上

?????

好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié)

寫流程:

1client通過zookeeper的調(diào)度,向regionserver發(fā)出寫數(shù)據(jù)請求,在region中寫數(shù)據(jù)

2數(shù)據(jù)被寫入region的memstore,直達(dá)memstore達(dá)到預(yù)設(shè)的閾值(128M)

3memstore中的數(shù)據(jù)被flush成一個storefile

4隨著storefile文件的不斷增多,當(dāng)其數(shù)量增長到一定閾值的時候,觸發(fā)了compact合并操作,將多個storefile合并成一個storefile,同時進(jìn)行版本合并和數(shù)據(jù)刪除

5storefiles通過不斷的compact合并操作,逐漸形成越來越大的storefile

6單個storefile大小超過一定閾值之后,觸發(fā)spilt操作,把當(dāng)前的region切分成2個新的region,父region會下線,新切出的2個字region會被hmaster分配到相應(yīng)的regionserver上,使得原先的一個region的壓力的以分配到2個region上

?

讀流程:

1client訪問zookeeper,查找root表,獲取meta表的信息

2從meta表中查找,獲取存放的目標(biāo)的region信息,從而找到對應(yīng)的regionserver

3通過regionserver獲取需要查詢的數(shù)據(jù)

4regionserver的內(nèi)存分為memstore和blockcache兩部分,memstore主要用于寫數(shù)據(jù),blockcache主要用于讀數(shù)據(jù),請求先到memstore中查數(shù)據(jù),查不到就在blockcache在查,再查不到就會到storefile上讀,并把讀的結(jié)果放入blockcache

?

尋址過程:client-->Zookeeper-->-ROOT-表-->.META.表-->RegionServer-->Region-->client

好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié)

Rowkey:行鍵,和MySQL的主鍵一樣,不允許重復(fù),按照字典順序排列

Columnfamily:列簇

Column:列

Timestamp:時間戳,默認(rèn)顯示最新的時間戳

Version:版本號,記錄數(shù)據(jù)的版本

Cell:單元格,一個key?一個value

當(dāng)前題目:好程序員大數(shù)據(jù)學(xué)習(xí)路線Hbase總結(jié)
分享地址:http://jinyejixie.com/article6/iiecig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、微信小程序、標(biāo)簽優(yōu)化、全網(wǎng)營銷推廣、品牌網(wǎng)站建設(shè)域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
凭祥市| 板桥市| 新巴尔虎右旗| 石楼县| 丽江市| 浦城县| 昌都县| 石景山区| 雷山县| 海城市| 大余县| 南昌县| 锦屏县| 区。| 江孜县| 定边县| 思南县| 许昌市| 龙岩市| 诸城市| 长丰县| 平乡县| 东丽区| 仲巴县| 聊城市| 财经| 吉首市| 南昌市| 绿春县| 大田县| 手游| 遂平县| 潼关县| 永丰县| 镇安县| 兴城市| 罗平县| 平安县| 宽甸| 汾阳市| 朝阳市|