通过会员价值有效地更新Redis

时间:2018-10-29 02:23:51

标签: python redis

假设我有以下三个k / v对:

user+123 = {
   'name': 'tom',
   'company': 'nike'
   'status': 0
}

user+199 = {
   'name': 'sarah',
   'company': 'nike'
   'status': 0
}

user+359 = {
   'name': 'brad',
   'company': 'nike'
   'status': 0
}

但是,假设这些用户ID可能有任意数量(实际上,会有其他各种对象类型,例如用户,公司,文档等),并且可能是数百万。

进行以下更新最有效的方法是

update user* set status=1 where company=nike

例如,要针对一个对象执行此操作,

r.set('user+123') = {
   'name': 'tom',
   'company': 'nike'
   'status': 1 // changed here
}

也许一种显示如何使用Redis搜索的解决方案是这里的最佳方法?而不是必须遍历所有对象并检查对象的值。

0 个答案:

没有答案