key的一個格式約定:object-type:id:field
。用":"分隔域,用"."作為單詞間的連接,如"comment:12345:reply.to
"。不推薦含義不清的key和特別長的key。
一般的設(shè)計方法如下: 1: 把表名轉(zhuǎn)換為key前綴 如, tag: 2: 第2段放置用于區(qū)分區(qū)key的字段--對應(yīng)mysql中的主鍵的列名,如userid 3: 第3段放置主鍵值,如2,3,4...., a , b ,c 4: 第4段,寫要存儲的列名
例如用戶表 user, 轉(zhuǎn)換為key-value存儲:
userid | username | password | |
---|---|---|---|
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*
如果另一個列也常常被用來查找,比如username,則也要相應(yīng)的生成一條按照該列為主的key-value,例如:
user:username:lisi:uid 9
此時相當(dāng)于RDBMS中在username上加索引,我們可以根據(jù)
username:lisi:uid
,查出userid=9,再查user:9:password/email
...