壓縮格式:預設壓縮格式是NONE。可選值有GZ、LZO、SNAPPY。
版本數:HBase預設定義為3個版本。
以秒為機關的存活時間TTL:使用對象是行中的列簇,一旦達到過期時間,HBase會删除這些行。
快大小:HBase預設的塊大小是64KB,不同于HDFS預設64MB的塊大小。原因是HBase需要支援随機通路。一旦找到了行鍵所在的塊,接下來就會定位對應的單元格。使用64KB大小的塊掃描速度顯然優于64MB大小的塊。
記憶體模式:預設值是false。如果設定為true,HBase會嘗試将整個列簇儲存在記憶體中。隻有在需要儲存時才會持久化寫入磁盤。但是在運作時HBase會嘗試将整張表加載到記憶體裡。
塊緩存:預設值是true。塊緩存是記憶體存儲,HBase使用塊緩存将最近使用的塊加載到記憶體中。塊緩存會根據“最近沒有使用”(LRU)的規則删除塊資料。
布隆過濾:布隆過濾是一種空間高效的機率資料結構,它能檢測元素(行鍵,或行鍵與列辨別的結合)“确定不”存在于表中,或元素“可能”存在于表中。預設值是NONE。可以設定為ROW,表示使用行鍵級的布隆過濾,也可以設定為ROWCOL,表示使用行鍵與列辨別級别的布隆過濾。
(1)一般不建議設計多個列族。
具體原因如下,假如HBase表的表設定兩個兩個列族,若已一個列族1000萬行,另一個列族100行。當一個要求region分裂時候,會導緻100行的列會同樣分布到多個region中。這樣就出現基數問題,會導緻掃描列族A的性能低下。某個列族在flush的時候,它鄰近的列族也會因關聯效應出發flush,最終導緻系統産生更多的I/O。
(2)資料塊緩存配置
如果經常順序通路或者很少通路,可以關閉列族的緩存,讓BLOCKCACHE 參數設定false,列族緩存預設打開。
(3)激進緩存配置
可以選擇一個列族賦予更高的緩存,該參數IN_MEMORY 設定true。列族預設的關閉的。
(4)布隆過濾器(BLOOMFILTER)設定
減少硬碟讀取資料帶來的開銷。對存儲的資料塊做反向測試,占用額外的空間。
(5)生産時間配置
超過這個時間設定的就會在下一次大合并中被删除。TTL =>"18000"
(6)列族壓縮
壓縮可以節省空間,讀寫資料會增加CPU的使用率 LZO,SNAPPY,GZIP
(7)單元時間版本
預設為1個版本,可以通過指定多個版本,來儲存曆史資料
轉載于:https://www.cnblogs.com/zlslch/p/6140264.html