老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

Hbase如何優化

這篇文章給大家分享的是有關Hbase如何優化的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創新互聯堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網站建設、成都做網站、企業官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的明水網站設計、移動媒體設計的需求,幫助企業找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!

一、軟硬件優化:
1. 配置內存,cpu
HBase的LSM樹結構,緩存機制和日志機制對內存消耗非常大,所以內存越大越好。
其中過濾器,數據壓縮,多條件組合掃描等場景都是cpu密集型的,所以cpu也要夠強悍
2. 操作系統
選擇主流linux發行版,JVM推薦用Sun HotSpot64位的,能發揮hadoop最好的性能
使用noatime掛載磁盤:一般數據庫的掛載磁盤沒有特殊要求情況下最好都設置位為noatime以提高性能
關閉系統交換區: Linux內存反復交換會影響JVM性能,典型的異常就是導致zookeeper超時。所以設置vm.swappiness設置的比較低較好。
3.  網絡通信
由于hdfs對集群網絡吞吐有很高的要求,所以網絡必須保證低延遲高吞吐
添加機架感知:機架感知是提升hadoop的寫入和讀取本地化。在core-site.xml中配置topology.script.file.name
4. JVM優化
根據網絡上很多成熟引用驗證比較優秀的垃圾回收器搭配組合CMS+ParNew
二、進入主題:Hbase本身優化
1. Hbase查詢優化:
a. 設置scan緩存:scan的時候setCaching來設置緩存大小
b. 確定所需要的列:scan時候addColumn來添加所需要的列減少數據的傳輸
c. 如果批量進行全表掃描請禁用塊緩存,因為全表掃描每條記錄只讀取一遍
d. 優化行鍵查詢:全表scan時,如果只需要行鍵,可以使用過濾器來減少服務器返回的數據量。
e. 通過HBaseTool訪問:HTable對象對于客戶端讀寫數據來說不是線程安全的,多線程時要為每個線程創建一個HBase對象。而HBaseTool鏈接線程池機制可以解決線程安全問題,同事維持一定數量的HBase
f. 使用批量讀:HTable.get(List)
g. 使用Coprocessor統計行數: 具體原理請看協處理器原理
h. 緩存查詢結果:對于查詢頻繁的應用場景
2. HBase寫入優化:
a. 關閉WAL日志:如果能容忍一定的數據丟失風險,則可以關閉WAL
b. 設置AutoFlush: 關閉此功能等put到達到緩存閥值時候才提交到服務器
c. 預創建Region: 預先創建region來避免寫入時region到達一定閥值而split影響性能,和MongoDB預分片原理一致
d. 延遲WAL flush:如果開啟WAL則可以將WAL flush到磁盤的時間間隔調大一些來提高性能
e. 使用批量寫HTable.put(List)
3. HBase基本核心服務優化
a. 優化分裂操作: 如果寫多讀少的場景則可以調高hbase.hregion.max.filesize來減少region分裂
b. 優化合并操作:大合并非常消耗資源,且合并時候會阻塞寫操作。應該在集群不繁忙的時候進行大合并
4. Hbase配置參數優化:
a. 設置regionserver handler數量:如果寫請求比較多則可以適當調高hbase.regionserver.handler.count的數量以提高寫吞吐。此參數調高很消耗內存,請注意。
b. 調整blockCache大小:hfile.block.cache.size來設置regionserver查詢的內存設置。默認0.25指讀緩存占用堆內存25%。讀場景比較多可以適當調高。
c. 設置MemStore的上下限:hbase.regionserver.global.memstore.upperLimit表示regionserver上所有region的Memstore的大小上限,超過上限會引發全局flush,這個參數主要防止regionserver內存占用過大被OOM Kill掉。
讀為主的集群中,可以調小此參數,調高blockCache; 寫則相反
d. 調整影響合并的文件數:hbase.hstore.blockingStoreFiles值用于控制超過此值的storefile則會出發合并。可以調大此值減少合并次數
e. 調整MemStore的flush因子:當Memstore占用內存大小超過hbase.hregion.memstore.flush.size倍數時將阻塞region所有請求,出發flush,釋放內存。如果正常不會出現寫入或寫入數據量突然增大則可以保持默認,否則要調高此值。
f. 調整單個文件大小:hbase.hregion.max.filesize用于定義單個hstorefile大小,超過此值則引發region文件split。 Region比較小則合并和split都很快,當然會造成集群響應時間波動。 大合并和split則造成較長時間阻塞。應該根據自己場景來定義
5. 分布式協調系統zookeeper的優化:zookeeper的優化方法也很多,我就主要講hbase優化。只是說明下zookeeper優化也非常重要。
6. 表設計優化
a. 開啟布隆過濾器:布隆過濾器可以減少讀盤次數以降低延遲。原理和redis的hyperloglog一樣(我們以前有用此功能對用戶數量進行估算)
b. 調整列族塊大小:較小的塊大小可以提高隨機讀的速度,同時導致塊索引變大。
c. 設置in memory屬性:對于經常訪問的列族可以設置in memory,但是要考慮消耗內存的問題
d. 調整列族最大版本數量:數量大占用磁盤空間,且導致集群變大。根據自己應用場景來選擇。像我們做畫像由于要統計用戶場景變化,所以版本數量有根據自己需求設置
e. 設置TTL屬性:超過TTL的列將自動刪除。這個也根據自己場景選擇。我們做用戶畫像時會將某些用戶行為超過時間的就認為沒有必要在進行存儲分析了,所以可以設置TTL來自動刪除
7. 關閉mapreduce的預測執行功能:若使用mapreduce來訪問hbase集群應該關閉,否則有可能導致hbase客戶端鏈接數陡增影響集群運行
8. 修改負載均衡執行周期:當集群寫入頻繁時,可以調小,否則可以調大。

感謝各位的閱讀!關于“Hbase如何優化”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


當前標題:Hbase如何優化
文章分享:http://www.xueling.net.cn/article/jhjish.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 日本丰满妇人成熟免费中文字幕 | 操人网址| 动漫AV永久无码精品每日更新 | 99热手机在线观看 | av色在线观看 | av色站| 少妇的丰满3中文字幕 | 亚洲日韩欧美综合不卡在线 | 亚洲欧美日韩综合久久久久久 | 国产精品奇米一区二区三区小说 | 国产精品丝袜高跟鞋 | 色婷婷亚洲精品 | 久久久久久毛片免费看 | 在线视频一区二区三区三区不卡 | 久久婷婷五月综合中文字幕 | 欧美黑人xxxx性高清版 | 91色影视 | 伊人久久综合精品无码 | 无码免费H成年动漫在线观看网站 | 亚洲最大色大成人av | 国产精品伊人影院 | 婷婷五月六月综合缴情 | 一二三四中文在线 | 我要一级毛片 | 欧美国产精品久久久 | 丰满的少妇XXXXX青青青 | 国产欧美一区二区三区精品酒店 | 亚洲精品无码久久千人斩探花 | 97人人超碰在线 | 国内揄拍国内精品少妇国语 | 久久免费视频播放 | 久草一区| 亚洲成人黄色av | 99久久全国免费观看 | 天天干天天草天天爽 | 国产精品页 | 国产一区在线精品 | 国产老肥熟精品大全 | 人人玩人人添人人澡免费 | 91精品国产中文字幕 | 精品国产一区二区三区高潮视 |