溫馨提示×

溫馨提示×

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

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

MemStore的刷新方式是什么

發(fā)布時間:2021-12-30 14:25:04 來源:億速云 閱讀:136 作者:iii 欄目:云計(jì)算

這篇文章主要介紹“MemStore的刷新方式是什么”,在日常操作中,相信很多人在MemStore的刷新方式是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MemStore的刷新方式是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

關(guān)于MemStore的刷新方式:

1、MemStore達(dá)到上限hbase.hregion.memstore.flush.size 默認(rèn)是128M的時候,會觸發(fā)MemStore的刷新。這個參數(shù)表示單個MemStore的大小的閾值。這個時候是不阻塞寫操作的。

2、當(dāng)一個Region的MemStore總量達(dá)到hbase.hregion.memstore.block.multiplier * hbase.hregion.memstore.flush.size(默認(rèn)2*128M=256M)時,會阻塞這個region的寫操作,并強(qiáng)制刷寫到HFile。觸發(fā)這個刷新只會發(fā)生在MemStore即將寫滿128M時put了一個巨大的記錄的情況,這時會阻塞寫操作,強(qiáng)制刷新成功才能繼續(xù)寫入。

3、一個RegionServer會有很多個Region,很多的MemStore,所以可能單個Region并沒有超過閾值,但是整個RegionServer的內(nèi)存已經(jīng)占用非常多了,這時候還有另外兩個參數(shù)控制內(nèi)存的刷寫:hbase.regionserver.global.memstore.upperLimit 默認(rèn)0.4,當(dāng)RegionServer上全部的MemStore占用超過heap(heap的大小在hbase-env.sh中設(shè)置HBASE_HEAPSIZE,默認(rèn)1G,我們設(shè)置的4G)的40%時,強(qiáng)制阻塞所有的寫操作,將所有的MemStore刷寫到HFile;hbase.regionserver.global.memstore.lowerLimit 默認(rèn)0.35,表示所有的MemStore占用超過heap的35%時,會選擇一些占用內(nèi)存比較大的MemStore阻塞寫操作并進(jìn)行flush,這是為了降低阻塞全部寫操作flush帶來的問題。

4、當(dāng)HLog達(dá)到最大值(hbase.regionserver.maxlogs * hbase.regionserver.hlog.blocksize 默認(rèn)32*64M = 2G)時,也會觸發(fā)MemStore的刷新,強(qiáng)制將更新固化到HFile中,避免在RegionServer crash時恢復(fù)時間過長。

5、定期會進(jìn)行MemStore的刷新,hbase.regionserver.optionalcacheflushinterval 默認(rèn)3600000,一小時,確保MemStore的數(shù)據(jù)不會長時間沒有固化到HFile中。為避免所有的MemStore在同一時間都進(jìn)行flush導(dǎo)致的問題,定期的flush操作有20000左右的隨機(jī)延時。

6、手工可以進(jìn)行flush操作,在hbase shell調(diào)用flush,可以針對某個表或者某個region進(jìn)行flush:

hbase(main):010:0> help 'flush'

Flush all regions in passed table or pass a region row to

flush an individual region.  For example:

  hbase> flush 'TABLENAME'

  hbase> flush 'REGIONNAME'

到此,關(guān)于“MemStore的刷新方式是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI