簡體   English   中英

Redis數據庫設計基礎

[英]Redis Database Design Basics

我已經設計了我的第一個Redis數據庫,並希望獲得一些反饋,建議或技巧。

概述:

我的redis數據庫存儲的文章可以按喜歡,創建日期,更新日期,作者等排序。

文章還包含“項目”,我還需要確定其中哪些文章的高度至少為1。

創建

創建新文章時,我將其ID寫入各種鍵

ZADD“文章:已創建”時間戳ArticleID

ZADD'文章:已更新'時間戳ArticleID

ZADD'文章:喜歡'0 ArticleID

SADD'user:USERID:articles'ArticleID

每當文章更新時

ZADD'文章:已更新'時間戳ArticleID

每當將項目添加到文章中

ZADD'articles:itemCount'ItemCount ArticleID

如果刪除了一個項目,並且沒有任何項目剩余,我只需刪除其成員

ZREM“文章:itemCount” ArticleID

因此,在排序時,請執行以下操作:

  1. 我用“ articles:likes”和“ articles:updated”執行一個ZUNIONSTORE
  2. 結果,我對結果和“ articles:itemCount”執行了一個ZINTERSTORE
  3. 結果,我只需執行一個ZREVRANGEBYSCORE

這一切都能找到並完成我想做的事情,但是我對Redis還是陌生的,可以提出建議和改進。

真誠的

- 詹姆士

我同意您的解決方案。

為了改進,請考慮Transaction

創建

ZADD“文章:已創建”時間戳ArticleID

ZADD'文章:已更新'時間戳ArticleID

ZADD'文章:喜歡'0 ArticleID

SADD'user:USERID:articles'ArticleID

執行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM