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

溫馨提示×

溫馨提示×

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

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

HBase是怎么做到毫秒級查詢的

發布時間:2021-12-09 11:55:47 來源:億速云 閱讀:261 作者:iii 欄目:大數據

這篇文章主要講解了“HBase是怎么做到毫秒級查詢的”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“HBase是怎么做到毫秒級查詢的”吧!

1. 緩存

HBase有兩塊主要的內存緩存,MemStore 和 BlockCache。

具體的過程如下:

  • 一個查詢過來 regionserver 后首先用 MemStoreScanner 搜索 MemStore 里是否有所查的 rowKey ,這一步在內存中,所以是很快的。

  • 如果不在 memstore 中,會經過一系列的索引尋址會定位到 block 的位置。

  • 如果 block 在 BlockCache 緩存中則可以直接在內存中操作,速度很快,不需要再進行一次 IO 將整個 block 讀取到內存中。

2. 過濾

  • RegionServer 啟動的時候就會把每個HFile的起止 rowkey 加載到內存中,在定位 HFile 的時候可以過濾掉大部分HFile;


  • 同時同樣是加載到內存的 Bloom Block 也會通過之前說的 bloomFilter 也會過濾掉大部分一定不包含所查rowKey的HFile。

3. 索引

經過了上面的過濾,其實只剩下很少一部分的HFile需要去檢索了,HBase有三級索引,第一級索引會常駐內存,二三級的索引會以block的形式存在HFile中。

索引相關更細節的東西可以看下這篇 HBase篇(4)-你不知道的HFileHBase篇(4)-你不知道的HFile

另外可以提一下,因為HBase是多版本共存的,所以結果可能是會有多個的,因此檢索的過程不是找到一個就返回了,而是要找到所有的,然后將結果合并。


HBase的各個角色之間是怎么協調工作的?  

先說說Hbase主要包含的角色: HMaster/HRegionServer/Zookeeper

1. HRegionServer 

負責實際數據的讀寫. 當訪問數據時, 客戶端最終會直接與 RegionServer 通信。HBase的表根據Row Key的區域分成多個Region, 一個Region包含這這個區域內所有數據. 而Region server負責管理多個Region, 負責在這個Region server上的所有region的讀寫操作.

2.  HMaster 

  • 負責管理Region的位置, DDL(新增和刪除表結構);

  • 協調 RegionServer,在集群處于數據恢復或者動態調整負載時,分配Region到某一個 RegionServer 中;

  • 管控集群,監控所有 Region Server 的狀態;

  • 提供DDL相關的API, 新建(create),刪除(delete)和更新(update)表結構;

3.  Zookeeper 

負責維護和記錄整個Hbase集群的狀態。

zookeeper探測和記錄Hbase集群中服務器的狀態信息.如果zookeeper發現服務器宕機,它會通知Hbase的master節點。master 節點宕機,則會通知 backup 變成 master。


說說 HBase 的 LSM Tree?

LSM Tree即是日志結構合并樹。

先說日志結構:

日志的特點是它是順序追加寫的,可以保證非常好的寫操作性能,但是從日志文件中讀一些數據將會比寫操作需要更多的時間,需要倒序掃描,直接找到所需的內容。

LSM tree是通過把隨機寫的數據寫到內存,然后定期flush到磁盤,對于磁盤來說,讓所有的操作順序化,而不是隨機讀寫。

再說說合并樹:

LSM Tree的原理是把一棵大樹拆分成N棵小樹,它首先寫入內存中即是小樹,隨著小樹越來越大,會flush到磁盤中,磁盤中的樹定期可以做merge操作,合并成一棵大樹,以優化讀性能。

感謝各位的閱讀,以上就是“HBase是怎么做到毫秒級查詢的”的內容了,經過本文的學習后,相信大家對HBase是怎么做到毫秒級查詢的這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

AI

上虞市| 三明市| 壤塘县| 长治市| 东丰县| 旬阳县| 临沭县| 榕江县| 龙江县| 平舆县| 富川| 延寿县| 洛阳市| 陇西县| 搜索| 云和县| 肇源县| 锡林郭勒盟| 镇赉县| 大新县| 阳东县| 龙口市| 陈巴尔虎旗| 龙井市| 汝阳县| 焉耆| 大同市| 高阳县| 南木林县| 岗巴县| 上蔡县| 镇宁| 宜章县| 桦甸市| 四川省| 五台县| 泌阳县| 正蓝旗| 沈丘县| 元谋县| 永登县|