定义
TTL(Time to Live) 用于限定数据的超时时间。
设置TTL
创建 test 表,列族 info, TTL设置86400秒过期
# 创建表
create 'test',{NAME => 'info', TTL=>'86400'}
# 查看 test 表结构
hbase(main):004:0> desc 'test'
{NAME => 'info', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => '86400 SECONDS (1 DAY)', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
修改TTL过期时间
# 禁用表
hbase(main):004:0> disable "test"
# 设置TTL值,作用于列族 info
hbase(main):005:0> alter "test",NAME=>'info',TTL=>'200'
# 启用表
hbase(main):006:0> enable "test"
# 查看表结构
hbase(main):004:0> desc 'test'
{NAME => 'info', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => '200 SECONDS', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}