Redis:查找所有旧于某个对象的对象
我在哈希集合里存储了几个对象的属性。其中包括“创建日期”这样的信息。数据库里有好几个哈希集合。
所以,我的问题是,怎么才能找到所有创建时间超过一周的对象呢?你能建议一个比O(n)更快的算法吗?(O(n)是指最简单的实现方式)
谢谢,
Oles
1 个回答
2
我最开始的想法是把数据存储在其他地方,比如关系型数据库,或者可能使用一个叫做zset的东西。
如果你有持续的数据(也就是说这些数据是在固定的时间间隔内不断更新的),那么你可以把哈希键当作成员,把日期(用整数时间戳表示)当作值来存储。这样的话,你就可以用zrank来查找特定日期的排名,然后用zrevrange从第一个排名开始查询,直到你从zrank得到的值为止。