Hbase Cell版本的用法



有一个问题困扰了我很长时间,我对Hbase细胞版本很困惑,我知道如何设置版本和获取版本等API操作,但我不知道为什么有版本概念,以及如何使用版本。有什么好的例子可以帮助我理解细胞版本的目的吗?提前感谢

版本可以用于存储一列的多个但固定数量的值。想象一下,您想要存储用户最后10次登录的时间戳。您可以有一个名为"loginTime"的列,并在定义表时将最大版本设置为10。现在,您所需要做的就是在每次用户登录时更新"loginTime"列的值,HBase将不会覆盖该列的上一个值,而是将前一个值向下推到版本列表中,并将最新值存储在顶部。它将在内部存储该列的最近10次更新,并删除较旧的条目。想象一下,在RDBMS中执行这样的操作,最终会显式地删除旧条目。

您可以使用"Get"方法检索任意多个版本。

另一个可能的用例可以是,比如说你正在构建一个版本控制系统,比如说一个Wiki页面。您可以将页面的旧版本存储为"pagecontent"列中的版本。

最新更新