2014-10-08 82 views
1

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

在我的应用程序中,我在帖子和主题之间有多对多的关系。每篇文章也有一个分数。

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

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

回答

2

该设计可以存储帖子并通过分数跟踪每个主题的帖子。

就可扩展性而言,我没有看到数百万个主题和帖子出现问题,但是您会更安全地做一些“餐后计算”数学工作,需要和需要的内存量。此外,从外观看,你可以很容易地使用两个数据库 - 一个用于文章,一个用于主题 - 以更好地处理潜在的负载。

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

相关问题