這篇文章給大家分享的是有關(guān)如何巡檢HBase的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、揭西網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5建站、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為揭西等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
1.集群巡檢
HBase是使用HDFS作為底層存儲的NoSql數(shù)據(jù)庫,提供了滿足實時性和隨即讀寫功能的數(shù)據(jù)庫服務(wù)。
每日早晚巡檢HBase服務(wù),檢查各集群的HMaster和RegionServer狀態(tài),是否事務(wù)積壓等問題。
1.1 查看Requests Per Second和Num.Regions
若為圖中所示為0,則需要登錄主機查看,通常這種情況會發(fā)生在重啟節(jié)點主機后發(fā)生。
1.2 查看備用HMaster
每個庫正常來說都有3個主節(jié)點,一個正在跑,兩個備用,如圖所示。
1.3 查看Software Attributes
圖中所示,比較重要的是兩個標(biāo)出部分:
1:代表著本庫的zookeeper節(jié)點,如果出現(xiàn)異常,總數(shù)會不正常的
2:代表著本庫的平均region數(shù),理論超過300就要進(jìn)行合并操作的,但這個是根據(jù)業(yè)務(wù)的需求進(jìn)行操作,業(yè)務(wù)側(cè)提出數(shù)據(jù)庫卡頓了,再進(jìn)行合并操作即可。
1.4 查看Dead Region Servers
此項是以庫為單位,登錄每個庫的HBase UI,若當(dāng)前庫內(nèi)有HBaseregionserver宕掉的節(jié)點,則頁面上會顯示出如下情況:
出現(xiàn)這種情況,則說明當(dāng)前庫有非正常節(jié)點,可以嘗試登陸該故障節(jié)點,查看故障原因(如HBase進(jìn)程消失,主機意外重啟,主機死機等)
2.參數(shù)調(diào)優(yōu)
2.1 HBase HRegion 最大化壓縮
hbase.hregion.majorcompaction:所有 HStore-
Files“最大化”壓縮之間的時間,要禁用自動的最大化壓縮,請將此值設(shè)置為 0。
2.2 RegionServer 小型壓縮線程計數(shù)
hbase.regionserver.thread.compaction.small:
regionserver做Minor Compaction時線程池里線程數(shù)目,可以設(shè)置為5
2.3 HBase Region 分割限制
hbase.regionserver.regionSplitLimit:控制最大的region數(shù)量,超過則不可以進(jìn)行split操作,默認(rèn)是2147483647,設(shè)置1可以禁止自動的split,通過人工, 或者寫腳本在集群空閑時執(zhí)行。
2.4 HBase 文件最大大小
hbase.hregion.max.filesize:默認(rèn)是10G, 如果任何一個column familiy里的StoreFile超過這個值, 那么這個Region會一分為二,因為region分 裂會有短暫的region下線時間(通常在5s以內(nèi)),為減少對業(yè)務(wù)端的影響,建議手動定時分裂,可以設(shè)置大些。
2.5 HBase 客戶端寫入緩沖
hbase.client.write.buffer:客戶端寫buffer,設(shè)置autoFlush為false時,當(dāng)客戶端寫滿buffer才flush 默認(rèn)為2M,寫緩存大小,推薦設(shè)置為5M,單位是字節(jié),當(dāng)然越大占用的內(nèi)存越多。
2.6 HBase Region Server 處理程序計數(shù)
hbase.regionserver.handler.count:該設(shè)置決定了處理RPC的線程數(shù)量,默認(rèn)值是30,通??梢哉{(diào)大,但不是越大越好,設(shè)置過大會占用過多的內(nèi)存, 導(dǎo)致頻繁的gc,或者出現(xiàn)oom。
2.7 HFile 塊緩存大小
hfile.block.cache.size:默認(rèn)值0.25,regionser-
ver的block cache的內(nèi)存大小限制,在偏向讀的業(yè)務(wù)中,可以適當(dāng)調(diào)大該值,需要注意的是 hbase.regionserver.global.memstore.upperLimit的值和hfile.block.cache.size的值之和必須小于0.8。
2.8 RegionServer 中所有 Memstore 的最大大小
hbase.regionserver.global.memstore.upperLimit,hbase.regionserver.global.memstore.size:默認(rèn)值0.4 這個參數(shù)的作用是防止內(nèi)存占用過大,當(dāng)ReigonServer內(nèi)所有region的memstores所占用內(nèi)存總和達(dá)到heap的 40%時,HBase會強制block所有的更新并flush這些region以釋放所有memstore占用的內(nèi)存。
2.9 Memstore 刷新的低水位線
hbase.regionserver.global.memstore.lowerLimit,hbase.regionserver.global.memstore.size.lower.limit:默認(rèn)值0.35 同upperLimit,只不過lowerLimit在所有region的memstores所占用內(nèi)存達(dá)到Heap的35%時,不flush所有的 memstore。它會找一個memstore內(nèi)存占用最大的region,做個別flush,此時寫更新還是會被block。lowerLimit 算是一個在所有region強制flush導(dǎo)致性能降低前的補救措施。在日志中,表現(xiàn)為 “** Flush thread woke up with memory above low water
2.10 HBase Memstore 刷新大小
hbase.hregion.memstore.flush.size:如 memst-
ore 大小超過此值(字節(jié)數(shù)),Memstore 將刷新到磁盤。這個參數(shù)的作用是當(dāng)單個Region內(nèi)所有的 memstore大小總和超過指定值時,flush該region的所有memstore。RegionServer的flush是通過將請求添加一個 隊列,模擬生產(chǎn)消費模式來異步處理的。那這里就有一個問題,當(dāng)隊列來不及消費,產(chǎn)生大量積壓請求時,可能會導(dǎo)致內(nèi)存陡增,最壞的情況是觸發(fā)OOM。
感謝各位的閱讀!關(guān)于“如何巡檢HBase”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
網(wǎng)站欄目:如何巡檢HBase
轉(zhuǎn)載注明:http://chinadenli.net/article8/ppgdip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、域名注冊、手機網(wǎng)站建設(shè)、企業(yè)建站、服務(wù)器托管、外貿(mào)建站
聲明:本網(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)