亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

好程序員大數據學習路線Hbase總結

發布時間:2020-07-24 15:08:34 來源:網絡 閱讀:163 作者:wx5d42865f47214 欄目:大數據

好程序員大數據學習路線Hbase總結為什么有hbase

  隨著數據的逐漸增大,傳統的關系型數據庫無法滿足對數據的查詢和存儲,而hive不是數據庫,只是數據倉庫,雖然能夠滿足簡單的存儲要求,但是始終無法滿足對非結構化和半結構化的數據的存儲和查詢

?

2hbase是什么

  Hbase是阿帕奇旗下的一款開源的,多版本的,可擴展的非關系型數據庫。

  他是基于谷歌的bigtable的基礎上,建立在hdfs上的一款提供高?可靠性的,高性能的列式存儲,可伸縮,實時讀寫的nosql的數據庫系統

?

3適用場景

?????海量數據存儲

?????隨機實時讀寫和管理數據

?

4特點

??????列式存儲

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

??????數據類型:單一的byte[]

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

??????稀疏存儲:如果kvnull,則不占用存儲空間

?

5結構框架

?

Client

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

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

?

Zookeeper:

好程序員大數據學習路線Hbase總結

???????監控hmaster的狀態,保證有且只有一個activehmaster,達到高可用

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

???????實時監控hregionserver的狀態,將regionserrver的上下線信息實時通知給hmaster

???????存儲hbase的所有表的信息hbase的元數據)

?

Hmster(hbase的老大)

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

?????負責regionserver負載均衡

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

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

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

?

Hregionserverhbase的小弟) ??

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

?????處理clientregionIO請求,并和hdfs交互

?????Regionserver負責切分在運行過程中變大的region

?

Hregion:

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

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

Region按大小分割的,隨著數據增多,Region不斷增大,當增大到一個閥值的Region就會分成兩個新的Region

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

Hlog

?????hbase的操作進行記錄,使用walWrite-Ahead-Log)寫數據,優先寫入log,然后再寫入memstore,以防數據丟失時可以進行日志回滾回復數據

Store

??????相當于一個列簇。

?

Memstore:128M

???????內存緩沖區,用于將數據批量刷新到hdfs

?

Hstorefile(hfile)

???????Hbase中的數據是以hfile的形式存儲到hdfs

?????

好程序員大數據學習路線Hbase總結

寫流程:

1client通過zookeeper的調度,向regionserver發出寫數據請求,在region中寫數據

2數據被寫入regionmemstore,直達memstore達到預設的閾值(128M

3memstore中的數據被flush成一個storefile

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

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

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

?

讀流程:

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

2meta表中查找,獲取存放的目標的region信息,從而找到對應的regionserver

3通過regionserver獲取需要查詢的數據

4regionserver的內存分為memstoreblockcache兩部分,memstore主要用于寫數據,blockcache主要用于讀數據,請求先到memstore中查數據,查不到就在blockcache在查,再查不到就會到storefile上讀,并把讀的結果放入blockcache

?

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

好程序員大數據學習路線Hbase總結

Rowkey:行鍵,和mysql的主鍵一樣,不允許重復,按照字典順序排列

Columnfamily:列簇

Column:列

Timestamp:時間戳,默認顯示最新的時間戳

Version:版本號,記錄數據的版本

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


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

偏关县| 平阳县| 富蕴县| 兰考县| 太和县| 安徽省| 杭州市| 赤城县| 绥江县| 社旗县| 土默特左旗| 图木舒克市| 洱源县| 长海县| 新蔡县| 佳木斯市| 资兴市| 高雄市| 临江市| 壤塘县| 昌平区| 新昌县| 襄城县| 新津县| 息烽县| 子洲县| 庆城县| 盐津县| 晴隆县| 大新县| 将乐县| 绥滨县| 贵德县| 紫金县| 横峰县| 大丰市| 定结县| 南宁市| 滦南县| 景德镇市| 天峻县|