从多个其他集中删除一组成员的最佳方法

时间:2012-05-12 21:26:38

标签: redis high-load

假设我有一个拥有5万名成员的社区。 因此,有一个名为community_###_members的Redis集,其中包含50 000个sha1密钥用户,并且对于每个用户,他自己的集user_###_communities存在上面的社区sha1哈希

在某些时候我决定删除社区..杀死所有成员的最佳算法是什么?

感谢。

1 个答案:

答案 0 :(得分:0)

假设您确实要删除不存在的社区成员,它就像(python代码示例):

memebrs = redis.smembers('community_members')
pipe = redis.pipeline()
pipe.delete('community_memebrs')
for member in members:
   pipe.delete(member)
pipe.execute()

如果社区非常大,你可能希望一次做那个N memebrs,所以服务器不会停止,直到你完成所有。