HBase数据存取流程
生活随笔
收集整理的這篇文章主要介紹了
HBase数据存取流程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、HBase的特點是什么 1.HBase一個分布式的基于列式存儲或者行式存儲的數據庫,基于hadoop的hdfs存儲,zookeeper進行管理。 2.HBase適合存儲半結構化或非結構化數據,對于數據結構字段不夠確定或者雜亂無章很難按一個概念去抽取的數據。 3.HBase為null的記錄不會被存儲. 4.數據存儲模式為key,value模式:(Table,Rowkey,Column,Timestamp)-> value? 5.HBase是主從架構。Hmaster作為主節點,Hregionserver作為從節點。 二、HBase存數據流程
四、HBase存取優化 檢索優化(BloomFilter):應用BloomFilter來提高隨機讀的性能,BloomFilter是列族級別的配置 五、HBase API使用
?
流程:Client請求Zookeeper確定meta表所在的RegionServer所在的地址,接著根據Rowkey找到數據所歸屬的RegionServer;用戶提交put或delete請求時HbaseClient會將put或delete請求添加到本地buffer中,符合一定條件 會通過異步批量提交服務器處理。 接著數據到達Region后,服務端處理流程如下:?
流程:RegionServer去獲取RowLock,region更新共享鎖;接著Hbase會先寫寫日志WAL(數據可靠性)再寫緩存MemStore(閾值默認64M,每個列族對應一個Store下的MemStore);然后釋放鎖后將日志落到HDFS;若MemStore達到閾值則將緩存數據落磁盤StoreFile,最后多個StoreFile發生合并;若StoreFile很大會觸發split操作,將當前region分割成2個Region,并同步到Hmaster。 三、HBase取數據流程 HbaseClient的操作和存數據類似服務器操作流程:
?
RegionServer收到get請求后,對當前Region進行Scan,接著會根據列族對Store進行Scan,同時會對對應的MemStore進行Scan;最后找到我們要的數據返回給Client。注意:一個StoreScanner會對應多個StoreFileScanner,整個過程是一個層級關系。
四、HBase存取優化 檢索優化(BloomFilter):應用BloomFilter來提高隨機讀的性能,BloomFilter是列族級別的配置 五、HBase API使用
?
轉載于:https://www.cnblogs.com/nicoleljc/p/9976555.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的HBase数据存取流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 淘宝保价险怎么申请
- 下一篇: 大连银行的信用卡有多少年费 收费标准和免