引言
開(kāi)篇《Redis 小白指南(一)- 簡(jiǎn)介、安裝、GUI 和 C# 驅(qū)動(dòng)介紹》已經(jīng)介紹了 Redis 的安裝、GUI 和 C# 驅(qū)動(dòng)等基本知識(shí),這一篇主要是梳理一下 Redis 的 5 種類型的信息與指令。
目錄
字符串類型(String)
散列類型(Hash)
列表類型(List)
集合類型(Set)
有序集合類型(SortedSet)
其它命令
字符串類型(String)
1.介紹:
字符串類型是 Redis 中最基本的數(shù)據(jù)類型,可以存儲(chǔ)二進(jìn)制數(shù)據(jù)、圖片和 Json 的對(duì)象。
字符串類型也是其他 4 種數(shù)據(jù)庫(kù)類型的基礎(chǔ),其它數(shù)據(jù)類型可以說(shuō)是從字符串類型中進(jìn)行組織的,如:列表類型是以列表的形式組織字符串,集合類型是以集合的形式組織字符串。
2.命令:
【備注】包括 INCR 在內(nèi)的所有 Redis 命令都是原子操作。
3.命令測(cè)試:
圖:簡(jiǎn)單的命令測(cè)試
4.命名:
建議:“對(duì)象類型:對(duì)象ID:對(duì)象屬性”命名一個(gè)鍵,如:“user:1:friends”存儲(chǔ) ID 為 1 的用戶的的好友列表。對(duì)于多個(gè)單詞則推薦使用 “.” 進(jìn)行分隔。
5.應(yīng)用:
(1)訪問(wèn)量統(tǒng)計(jì):每次訪問(wèn)博客和文章使用 INCR 命令進(jìn)行遞增;
?。?)將數(shù)據(jù)以二進(jìn)制序列化的方式進(jìn)行存儲(chǔ)。
散列類型(Hash)
1.介紹:
散列類型采用了字典結(jié)構(gòu)(k-v)進(jìn)行存儲(chǔ)。
散列類型適合存儲(chǔ)對(duì)象??梢圆捎眠@樣的命名方式:對(duì)象類別和 ID 構(gòu)成鍵名,使用字段表示對(duì)象的屬性,而字段值則存儲(chǔ)屬性值。如:存儲(chǔ) ID 為 2 的汽車對(duì)象。
2.命令:
3.命令測(cè)試:
圖:簡(jiǎn)單的命令測(cè)試
4.應(yīng)用:
?。?)文章內(nèi)容存儲(chǔ):
列表類型(List)
1.介紹:
列表類型(list)可以存儲(chǔ)一個(gè)有序的字符串列表,常用的操作是向兩端添加元素。
列表類型內(nèi)部是使用雙向鏈表實(shí)現(xiàn)的,也就是說(shuō),獲取越接近兩端的元素速度越快,代價(jià)是通過(guò)索引訪問(wèn)元素比較慢。
2.命令:
3.命令測(cè)試:
【解析】向列表的左邊添加元素“1”,再依次加入“2”、“3”
然后:
在列表的右邊依次加入兩個(gè)元素“0”、“-1”:
4.應(yīng)用:
?。?)顯示社交網(wǎng)站的新鮮事、熱門評(píng)論和新聞等;
(2)當(dāng)隊(duì)列使用;
(3)記錄日志。
集合(Set)
1.介紹:
字符串的無(wú)序集合,不允許存在重復(fù)的成員。
多個(gè)集合類型之間可以進(jìn)行并集、交集和差集運(yùn)算。
2.命令:
3.圖解交、并、差集:
4.命令測(cè)試:
5.應(yīng)用:
?。?)文章標(biāo)簽。
有序集合(SortedSet)
1.介紹:
在集合類型的基礎(chǔ)上添加了排序的功能。
2.命令:
3.命令測(cè)試:
4.應(yīng)用:
?。?)點(diǎn)擊量排序
其它命令
1.獲得符合規(guī)則的鍵名列表
KEYS pattern
pattern 支持 glob 風(fēng)格通配符:
2.判斷一個(gè)鍵是否存在
EXISTS key
如果鍵存在則返回整數(shù)類型 1,否則返回 0
3.刪除鍵
DEL key [key ...]
可以刪除一個(gè)或者多個(gè)鍵,返回值是刪除的鍵的個(gè)數(shù)
4.獲得鍵值的數(shù)據(jù)類型
TYPE key
這里只是進(jìn)行了一些命令的整理,具體的使用很多時(shí)候還是需要自己進(jìn)行到官方文檔進(jìn)行學(xué)習(xí)和搜索。
系列
《Redis 小白指南(一)- 簡(jiǎn)介、安裝、GUI 和 C# 驅(qū)動(dòng)介紹》
《Redis 小白指南(二)- 聊聊五大類型:字符串、散列、列表、集合和有序集合》
《Redis 小白指南(三)- 事務(wù)、過(guò)期、消息通知、管道、優(yōu)化內(nèi)存空間》
《Redis 小白指南(四)- 數(shù)據(jù)的持久化保存》
【博主】反骨仔
【原文】http://www.cnblogs.com/liqingwen/p/6919308.html
【GitHub】https://github.com/liqingwen2015/Wen.Helpers/blob/master/Wen.Helpers.Common/Redis/RedisHelper.cs
【參考】《Redis 入門指南》
感謝您的閱讀。喜歡的、有用的就請(qǐng)大哥大嫂們賞幾個(gè)小錢花花,沒(méi)錢的就請(qǐng)高抬貴手“推薦一下”吧!你的物質(zhì)和精神支持是博主強(qiáng)大的寫作動(dòng)力。歡迎轉(zhuǎn)載!
博主的文章沒(méi)有高度、深度和廣度,只是湊字?jǐn)?shù)。由于博主的水平不高(其實(shí)是個(gè)菜B),不足和錯(cuò)誤之處在所難免,希望大家能夠批評(píng)指出。
博主是利用讀書(shū)、參考、引用、抄襲、復(fù)制和粘貼等多種方式打造成自己的純鍍 24k 文章,請(qǐng)?jiān)彶┲鞒蔀橐粋€(gè)無(wú)恥的文檔搬運(yùn)工!
http://www.cnblogs.com/liqingwen/p/6919308.html