HBase 列族 定義:算法
參考 http://blog.csdn.net/qq_20641565/article/details/56486121緩存
HColumnDescriptor colDesc = new HColumnDescriptor("f"); //塊緩存,保存着每一個HFile數據塊的startKey colDesc.setBlockCacheEnabled(true); //塊的大小,默認值是65536 //加載到內存當中的數據塊越小,隨機查找性能更好,越大,連續讀性能更好 colDesc.setBlocksize(64*1024); //bloom過濾器,有ROW和ROWCOL,ROWCOL除了過濾ROW還要過濾列族 colDesc.setBloomFilterType(BloomType.ROW); //寫的時候緩存bloom colDesc.setCacheBloomsOnWrite(true); //寫的時候緩存索引 colDesc.setCacheIndexesOnWrite(true); //存儲的時候使用壓縮算法 colDesc.setCompressionType(Algorithm.SNAPPY); //進行compaction的時候使用壓縮算法 colDesc.setCompactionCompressionType(Algorithm.SNAPPY); //壓縮內存和存儲的數據,區別於Snappy colDesc.setDataBlockEncoding(DataBlockEncoding.PREFIX); //寫入硬盤的時候是否進行編碼 colDesc.setEncodeOnDisk(true); //關閉的時候,是否剔除緩存的塊 colDesc.setEvictBlocksOnClose(true); //是否保存那些已經刪除掉的kv colDesc.setKeepDeletedCells(false); //讓數據塊緩存在LRU緩存裏面有更高的優先級 colDesc.setInMemory(true); //最大最小版本 colDesc.setMaxVersions(3); colDesc.setMinVersions(1); //集羣間複製的時候,若是被設置成REPLICATION_SCOPE_LOCAL就不能被複制了 colDesc.setScope(HConstants.REPLICATION_SCOPE_GLOBAL); //生存時間 colDesc.setTimeToLive(18000); tableDesc.addFamily(colDesc);