這篇文章主要為大家展示了“hbase如何預分配region”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“hbase如何預分配region”這篇文章吧。
創(chuàng)新互聯(lián)公司專注于元氏企業(yè)網站建設,響應式網站,商城網站定制開發(fā)。元氏網站建設公司,為元氏等地區(qū)提供建站服務。全流程定制設計,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務
在create一個表時如果不指定預分配region,則默認會先分配一個region,這樣在大數據并行載入時性能比較低,因為所有的數據都往一個region灌入,容易引起單節(jié)點負載升高,從而影響入庫性能,一個好的方法時在建立表時預先分配數個region。方法有兩種,主要針對不同版本可供選擇。
使用RegionSplitter方法,主要針對hbase-0.90.X版本
(1) 首先使用RegionSplitter建表,預分配region,例如建立一個poidb表,列簇為info,預分配9個region,
hbase org.apache.hadoop.hbase.util.RegionSplitter -c 9 -f info poidb
(2) 修改建表參數(可選)
默認建表是沒有開啟Bloomfilter和壓縮參數的,這里為了提供讀性能,建議開啟Bloomfilter,同時使用壓縮SNAPPY,進入hbase shell,首先需要disable 'poidb',然后使用使用
alter 'poidb',{NAME => 'info',BLOOMFILTER => 'ROWCOL',COMPRESSION => 'SNAPPY',VERSIONS => '1'}
最后
enable 'poidb'
2.使用hbase shell建表參數,真多0.94.x版本
0.94版本可以直接在建表時直接使用預分配regions:
create 'poidb', { NAME => 'info', COMPRESSION => 'snappy' }, {NUMREGIONS => 9, SPLITALGO => 'HexStringSplit'}
以上是“hbase如何預分配region”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!