HBase:列族TTL

HBase:列族TTL,hbase,ttl,Hbase,Ttl,根据HBase规范: ColumnFamilies可以以秒为单位设置TTL长度,一旦达到过期时间,HBase将自动删除行。这 适用于行的所有版本-即使是当前版本。TTL时间 在HBase中编码的行以UTC指定。“ 具体地说,我不明白的是“一旦到期”这句话……是什么意思?所有单元格的所有版本?一个单元格至少有一个版本 假设我有一个表,它有一个列族,TTL设置为X 我正在插入一个时间戳为1的单元格:这一行的到期日期是什么?1+X 接下来,我将插入另一个时间戳为2的单元格(使用相同的行键):整行的过

根据HBase规范:

ColumnFamilies可以以秒为单位设置TTL长度,一旦达到过期时间,HBase将自动删除行。这 适用于行的所有版本-即使是当前版本。TTL时间 在HBase中编码的行以UTC指定。“

具体地说,我不明白的是“一旦到期”这句话……是什么意思?所有单元格的所有版本?一个单元格至少有一个版本

假设我有一个表,它有一个列族,TTL设置为X

  • 我正在插入一个时间戳为1的单元格:这一行的到期日期是什么?1+X
  • 接下来,我将插入另一个时间戳为2的单元格(使用相同的行键):整行的过期日期是什么?还是1+X还是2+X

这似乎是HBase参考指南中的输入错误。它应该说“cell”,而不是“row”;一行除了其单元格的时间戳之外没有内置的时间戳

此外,你应该为此打开一个JIRA,或者如果你愿意的话提供一个doc补丁:谢谢你的回复。这意味着,假设我有一行有两个单元格(每个单元格有不同的时间戳),该行将逐渐“删除”(首先是最旧的单元格,然后在第二个时刻是最年轻的单元格)?@Andrea我亲自测试了它,将TTL设置为60秒,并每10秒在一个单元格中插入6个值,然后发现它们逐渐被删除--每10秒一个一个地删除。