Redis key 設計技巧

甄城發表於2015-06-10

1: 把表名轉換為key字首 如, tag:
2: 第2段放置用於區分割槽key的欄位–對應mysql中的主鍵的列名,如userid
3: 第3段放置主鍵值,如2,3,4…., a , b ,c
4: 第4段,寫要儲存的列名

使用者表 user , 轉換為key-value儲存
userid username passworde email
9 Lisi 1111111 lisi@163.com

set user:userid:9:username lisi
set user:userid:9:password 111111
set user:userid:9:email lisi@163.com

keys user:userid:9*

2 注意:
在關係型資料中,除主鍵外,還有可能其他列也步驟查詢,
如上表中, username 也是極頻繁查詢的,往往這種列也是加了索引的.

轉換到k-v資料中,則也要相應的生成一條按照該列為主的key-value
Set user:username:lisi:uid 9

這樣,我們可以根據username:lisi:uid ,查出userid=9,
再查user:9:password/email …

完成了根據使用者名稱來查詢使用者資訊

相關文章