在直接讨论这个问题之前,让我先介绍一下背景知识。
我使用hbase作为nosql存储。我正在使用JavaHBase api与hbase接口。我正在存储用户信息,其中一列是用户执行的操作。每当用户执行某个操作时,我们都会在“操作”列中更新该特定操作,并用执行操作的时间更新“上次更新的时间”列。我的那排看起来像
reverse_time_stamp#user_id(这里我计算reverse_time_stamp=max_number_in_java-current_time_stamp)
现在我的问题来了,我必须根据上次更新的时间获取用户列表,所以最近执行了一些操作的用户应该首先获取。为此,我现在正在做的是,每当用户执行某个操作时,我就删除前一行,将该行数据复制到另一行,并生成具有更新的反向时间戳的新键。通过这样做,我总是得到最新的用户谁执行了一些行动,在我的扫描。
因为每次用户执行某个操作时,我都会删除现有的行并创建另一行,所以他们还有其他的方法吗?
我的用户数可以是百万。每次用户执行任何操作(如单击)时,我都会更新操作。
暂无答案!
目前还没有任何答案,快来回答吧!