产品概述
应用场景
产品架构
实例类型
兼容性说明
使用规范建议
HColumnDescriptor 设置每个列族中每个单元格保留的最大版本数。HColumnDescriptor 设置每个列族中每个单元格保留的最小版本数。MIN_VERSIONS:如果设置了最小版本数(MIN_VERSIONS)为非零值,TTL 功能将失效。TableName tableName = createTDSQLTableName("ht1");byte[] CF1 = Bytes.toBytes("cf1");byte[] CF2 = Bytes.toBytes("cf2");// 创建表描述符TableDescriptorBuilder tdb = TableDescriptorBuilder.newBuilder(tableName);// 配置第一个列族:TTL=2秒,最小版本=2,最大版本=5tdb.setColumnFamily(ColumnFamilyDescriptorBuilder.newBuilder(CF1).setTimeToLive(2).setMinVersions(2).setMaxVersions(5).build());// 配置第二个列族:TTL=3秒,最小版本=4,最大版本=10tdb.setColumnFamily(ColumnFamilyDescriptorBuilder.newBuilder(CF2).setTimeToLive(3).setMinVersions(4).setMaxVersions(10).build());// 构建表并创建try (Admin admin = connection.getAdmin()) {admin.createTable(tdb.build());}
TableName tableName = TableName.valueOf("ht1");byte[] CF2 = Bytes.toBytes("cf2");try (Admin admin = connection.getAdmin()) {// 获取当前列族配置ColumnFamilyDescriptor currentDesc = admin.getDescriptor(tableName).getColumnFamily(CF2);// 基于现有配置创建新配置(保留其他设置)ColumnFamilyDescriptor newDesc = ColumnFamilyDescriptorBuilder.newBuilder(currentDesc).setTimeToLive(10) // 修改 TTL=10秒.setMinVersions(2) // 修改最小版本=2.setMaxVersions(5) // 修改最大版本=5.build();// 应用修改admin.modifyColumnFamily(tableName, newDesc);System.out.println("列族配置更新成功");}
文档反馈