Redis 排序集
Redis sorted sets
我有一个 table 的 ID 列表,我想将其存储在 Redis 排序集中。这些 id 中的每一个都有与之关联的日期和实体。计划是使用 id 作为分数,并允许 Redis 对它们进行相应的排序。当需要查找时,我将根据开始日期和结束日期从 table 中获取最大 ID 和最小 ID。使用此最小和最大 ID,我可以使用 Redis 的 zrangebyscore 命令获取它们之间的 ID 列表。
entities' values = zrangebyscore ids (min max
由于 ID 是按数字排序的,因此我可以可靠地获取两个日期(最小 ID 和最大 ID)之间属于我的实体的所有 ID。我的问题是在创建我的排序集时,我不知道要为 "key score value".
中的值输入什么
zadd key score value
创建列表时,我没有任何适合 "value" 参数的信息。这可以是空白还是某个任意 ID?
zadd ids 123 ???
我对 Redis 还是比较陌生,如果能提供任何有关该主题的信息,我们将不胜感激。
谢谢
您不需要 Sorted Set,您只需要一个 Set:
1. 定义一个类似这样的键:entity1:ids
2. 将您的 ID 添加到此键
使用 SADD entity1:ids 1
添加并使用 SMEMBERS
和 SUNION
检索一个实体或多个实体的联合的所有 ID,doc here。
我有一个 table 的 ID 列表,我想将其存储在 Redis 排序集中。这些 id 中的每一个都有与之关联的日期和实体。计划是使用 id 作为分数,并允许 Redis 对它们进行相应的排序。当需要查找时,我将根据开始日期和结束日期从 table 中获取最大 ID 和最小 ID。使用此最小和最大 ID,我可以使用 Redis 的 zrangebyscore 命令获取它们之间的 ID 列表。
entities' values = zrangebyscore ids (min max
由于 ID 是按数字排序的,因此我可以可靠地获取两个日期(最小 ID 和最大 ID)之间属于我的实体的所有 ID。我的问题是在创建我的排序集时,我不知道要为 "key score value".
中的值输入什么 zadd key score value
创建列表时,我没有任何适合 "value" 参数的信息。这可以是空白还是某个任意 ID?
zadd ids 123 ???
我对 Redis 还是比较陌生,如果能提供任何有关该主题的信息,我们将不胜感激。
谢谢
您不需要 Sorted Set,您只需要一个 Set:
1. 定义一个类似这样的键:entity1:ids
2. 将您的 ID 添加到此键
使用 SADD entity1:ids 1
添加并使用 SMEMBERS
和 SUNION
检索一个实体或多个实体的联合的所有 ID,doc here。