2018大數據學科就業指導材料06面試問題hbase的優化_第1頁
2018大數據學科就業指導材料06面試問題hbase的優化_第2頁
免費預覽已結束,剩余3頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Hbase Hbase 默認 單個region 可小的region。(小 這個參數的意思是:RegionServer的請求處理IO假如當前內存比較充足,而且還是要做大數據量操作(scanput大量的數據),那就嘴好把線程數量設置的小一些。這樣反倒效率高而且不會出現內存 的事 有時候正在運行的regionserver會因為網絡或者其他問題,造成不按照規定時間報活;如果regionserver在規定的時間內沒有響應,那么zookeeper會把這個regionserverhmasterregionserver上負責的一些重新balance,也就是給遷移走,由其他的regionserver.timeo

2、ut這個參數就是控制合適把出故障的hbase進行 比如說既然出故障了,調低timeout的時間的確是可以加速failoverhbase,因為既有可能會做批量的查詢,那很難保證客戶要查詢的基于 rowkey 的數據不再壞掉的 regionserver上,所以快速點也是有好處的;但是時間也不能太短,比如把超時時間設置成 50 秒,50 秒之后,zookeeper regionserver移除了。然后hmaster也開始做balanceregionserver被運維用WALmemstore大小的,先說upperLimit,這個參數是防止因為占用內存過大,在你flush的時候出現OOM因為如果這個up

3、perLimit 過大的話,在flush 的時候,會把內存所有的數據放到一個隊列里 memstore占用的內存,如果這時候消費者速度跟不上,就會出現積壓消息過多,嚴重了就會OOM所以 限制這個upperLimitmemstore占用內存達到推內存的upperLimit的時候,就強制flushblobk住寫操作,來 memstore占用的內存,避免出現OOM這樣嚴重的和upperLimit差不多,只不過lowerLimit會在memstore達到heap內存的lowerLimit值得時候,會做flush所有的,而是去找占用內存最大的那個region去做flush默認值 默認值 如果region

4、小的話,那么region的storefile 也很小,這樣但是如果 Hbase.hregion.max.filesize 這個值調節的小,也意味著 region 的和 compact 操甚至會導致一些bug 出現;(大Hbase.hregion.max.filesizeregion compact storefile compact 的時候,還可能內存不夠,導致OOM; 讓region 首先要把Hbase.hregion.max.filesizeregionserver不可能200Gregion就 不會自動 然后在一個低谷的時間, 使用hbase的s hbase .apache.hadoop.

5、hbase.util.RegionSplitter HexStringSplit -c 要分割的區域數量 -f 列族名字r(默認值8、,hbase r(默認值8、,hbase 在region 下的store 里面的storefile 過多的時候,因為會影響所以會做compaction 操作,但是這個storeFile 到底怎么算是過多? 到指定的值后,hbaseblock主讀寫操作,然后開始但是盡這個值設置的非常小,因為這樣會導致頻繁的compaction操作,因為會默認值是 有一個參數:hbase.hregion.memstore.flush.size(64M),每次hbase做完更 reg

6、ion memstore 大于 hbase.hregion.memstore.flush.size (64M)flush 操作Hbase.hregion.memstore.block.multip r(2)這個參數就是為了防止:突然出現大的 put OOM設置的hbase.hregion.memstore.flush.size=100M ,但是突然之間要put數據,大小是310M,那么這個310M 已經超出了hbase.hregion.memstore.flush.size =100M 3 倍,所以此時需要 Hbase.hregion.memstore.block.multip r(2)這個參

7、數做一下最大限制 , 意思是說:memStoreHbase.hregion.memstore.block.multip r(2)這個值得時候,hbase block 住所有的請求操作,然后開始做flush 操作這里HBaseRegionserverMemstore,主要用來寫; BlockCache,主要用于讀BlockCache大小+memstoreheap80%大小,否則hbase在調節upLimit 和lowerLimit 的時候也要考慮到Hfi到時候就看你這個hbase 的庫是寫操作重 還是 讀操作重9、盡量不要超過2個列族(Column10、避免CMSconcurrentmode9、

8、盡量不要超過2個列族(Column10、避免CMSconcurrentmode12、在scan表的時候,盡量以少的RPC請求去獲的數 Scan 的操作是是一次的時候,都是一次RPC 的請求。那么每次的RPC 請求所以可以在代碼這樣就可以一次 RPC,返的數據,效率是的操作客戶端向表put 的數據時候,默認是一條put 一次的,這種方式會有可以命令客戶端去做批量的putnewPut填滿客戶端flush采用CMS方式做回收是沒問題的,也是正確方式。但是這CMS 90%的時候,開始做回收;90%,老年 始 CMS的并發收集,此時年輕代還在不斷的把對CMS還沒完成標記,老年代的空間就滿了,那么這個時候就會出現比較嚴重的fullGC ,停掉所有正在運行的線程,然后以單線所以 最好用:-XX:CMSInitiatingOccupancyFraction=N(默認90)這個參數去控制,不要 把老年代的GC設置的這么高,調節到60%就可首先說, 查詢,按照 rowkey做查詢的時候,具體的數據是存在列族上面的,但是列族的region去做管理的,regionregionServer負責的,所以如果一個hbase數據庫的列族特別多的話, 寫操作都是比較占用IO 的操作;而且se很難保證存在2個以的列的時會處不發生題的這也是se的方,另就

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論