如何在Redis中更新多个键值对

时间:2014-10-08 16:06:01

标签: database redis schema

因此,对于我的应用程序,我正在考虑添加Redis。我是Redis的新手,并且无法想出更新我需要不断更新的信息的好方法,所以我想知道是否有人可以提供帮助。

在我的应用中,我在帖子和主题之间有很多关系。每个帖子也有一个分数。

我的第一个想法是设置我的Redis数据库,因此每个主题都是一组有序的post_id,并且该有序集中的每个post_id都与该帖子的分数相关联。帖子现在都是他们自己的哈希,它将他们的ID与帖子的信息(score,user_id,url)相关联。我定期更新该帖子的分数,这让我遇到了问题。当我更新该帖子的分数时,根据我现在的设置,我需要找到与帖子相关联的每个主题,并更新该主题的有序集合中的post_id的分数。如果我将应用程序扩展到数百万个帖子和数百万个主题,这似乎不是最佳解决方案。

我的Redis数据库是否有更好的设置,我没有看到,或者我应该坚持使用我的SQL数据库?

1 个答案:

答案 0 :(得分:2)

该设计非常适合存储帖子并按分数跟踪每个主题的帖子。

就可扩展性而言,我没有看到数以百万计的主题和帖子存在问题,但是你会更安全地做一些背后的数学计算,以便有一种像你需要的东西一样的感觉和所需的内存量。此外,从外观上看,您可以轻松使用两个数据库 - 一个用于帖子,一个用于主题 - 以更好地处理潜在负载。

最后,不 - 如果Redis还不够,我不会看到你如何通过SQL数据库获得良好的性能和扩展性。