在 Redis 中是否可以从 Set 中获取一系列项目?
我只注意到给你所有成员的 SMEMBERS。http://redis.io/commands#set
例如,如果我每次都必须在数百万个项目中使用 SMEMBERS,我只需要从索引 33,456 到 33,466 的 10 个。
每次我要求其中的 10 个时,SMEMBERS 都必须生成包含数百万个项目的完整列表。这不是性能杀手吗?还是因为 Redis 速度快而且可以这样使用,所以可以吗?
在 Redis 中是否可以从 Set 中获取一系列项目?
我只注意到给你所有成员的 SMEMBERS。http://redis.io/commands#set
例如,如果我每次都必须在数百万个项目中使用 SMEMBERS,我只需要从索引 33,456 到 33,466 的 10 个。
每次我要求其中的 10 个时,SMEMBERS 都必须生成包含数百万个项目的完整列表。这不是性能杀手吗?还是因为 Redis 速度快而且可以这样使用,所以可以吗?
你不能进入range
集合,因为它是无序的,因此没有索引。但是,您可以使用SMEMBERS获取集合的所有成员
在 redis-cli
SMEMBERS my_set
此外,ZRange可能会帮助您在 redis 中使用Sorted Sets
在 redis-cli
ZRANGE your_key 33455 33465