我想显示customers
与pagination
的列表.DB的结构如下:
redis:> hset customerlist username userid (where username:almas userid:1)
redis:> hmset customerlog:1 userid value1 name value2 contactno value3
(where value1:1 , value2: almas sayyad, value3: 8676756556)
我使用过hash set
并希望继续使用相同的数据类型。
如果任何人能为我提供解决方案,我将非常感激。
答案 0 :(得分:1)
TL; DR分散哈希并不是一件容易的事 - 您应该考虑使用更适合该任务的不同数据结构,即排序集。
哈希没有顺序,唯一可以巧妙地迭代字段的方法是使用HSCAN
。但是,扫描是无序的,可以返回重复项,每次调用的结果数量也各不相同 - 在此基础上构建分页机制具有挑战性和低效率。
您可以将数据(即用户)保留在哈希值中,但也将字段名称存储在排序集中。您可以为每个用户分配一个分数来订购它们,或者只使用词典排序 - 无论哪种方式,您都可以使用排序集进行分页。