hbase的0.94.4版本一个问题

最近在使用过程中,发现了一个问题:

就是对某一个rowkey做delete操作后,马上重新插入一条相同的rowkey的值。然后使用get方式操作后无法显示新插入的记录。
 

注意两个timestamp的值。

上面all_fields的timestamp的值为1385477515000

下面all_fields的timestamp的值为1385609995481

很明显下面的时间戳比上面大,下面是最新数据,上面是按照时间戳获取。

而实际情况是:上面的应该是最新数据,因为是2013-11-26 22:51:55,下面的是老的数据2013-11-25 14:04:21

因为时间戳的设置有误导致了最新数据无法正常获取。

 

那么我们采用的解决方式是:先删除然后再插入(按照正常的时间戳设置进行)

正是为了解决此问题,就带出来了Hbase的一个问题(刚开始描述的)。

相关jira查连接:https://issues.apache.org/jira/browse/HBASE-2256

 

原因就是当我删除了这个rowkey后,然后按照2013-11-26 22:51:55这个时间戳插入一条记录后,使用get方法返回是空

 

补充:

另外在删除时,带上了timestamp的取值,如果是老的值,删除是正常的;但是如果timestamp是最新的值,那么就是将整个记录删除,后面通过老的timestamp也无法获取。

个人感觉删除操作如下:

1、如果没有timestamp,那么删除的是整个value

2、如果带上了timestamp,那么就只删除当前的对应的value

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值