我设计了我的第一个Redis数据库,并希望得到一些反馈,建议或提示。Redis数据库设计基础
概述:
可以通过喜欢在稍后进行排序,创建日期,更新我的Redis数据库存储的文章,作者等...
文章还含有“项目”我还需要以确定哪些物品在其中包含1个物品。
创作
当创建一个新的文章我写它的ID各种按键
ZADD '的文章:创建' 时间戳条款ArticleID
ZADD '的文章:更新' 时间戳条款ArticleID
ZADD'articles:likes'0 ArticleID
SADD'user:USERI d:文章条款ArticleID
每当文章更新
ZADD '的文章:更新' 时间戳条款ArticleID
每当一个项目添加到文章
ZADD '的文章:ITEMCOUNT' ItemCount中条款ArticleID
如果一个项目被删除,并且没有项目依然存在,我只是删除其成员
ZREM“阿尔季克莱斯:ITEMCOUNT”条款ArticleID
所以,当谈到排序我做到以下几点:
- 我进行ZUNIONSTORE与‘文章:喜欢’和‘文章:更新’
- 随着我对结果对结果的ZINTERSTORE和“文章:ITEMCOUNT”
- 有了结果,我只是执行ZREVRANGEBYSCORE
这一切工作查找和做什么,我想要它做的,但是我是新来的雷迪斯并接受建议和改进。
真诚,
- 詹姆斯
感谢您的答复,谢谢你提出了这个MULTI命令,我再有1后续问题。 我想要筛选结果的方法越多,为了特定目的需要创建的键越多,显然每个键都只包含文章ID和分数,目前我们有大约30种不同的筛选方式,来自SQL似乎很奇怪,因为每个ID都在30个不同的键上重复。 因此,简而言之,它是如何完成的,如果是这样,这是否使得redis成为我的要求的不好选择。 此致 - - James –