HBase 列族 定义:
参考
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);