Redis支持5種數(shù)據(jù)類型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
① 簡(jiǎn)介:String是Redis最基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型,它是二進(jìn)制安全的,可以存儲(chǔ)數(shù)字,圖片或者序列化的對(duì)象,值最大存儲(chǔ)為512M
簡(jiǎn)單使用舉例: set key value、get key等
應(yīng)用場(chǎng)景:共享session、分布式鎖,計(jì)數(shù)器、限流。
② 哈希類型是指v(值)本身又是一個(gè)鍵值對(duì)(k-v)結(jié)構(gòu)
簡(jiǎn)單使用舉例:hset key field value 、hget key field
內(nèi)部編碼:ziplist(壓縮列表) 、hashtable(哈希表)
應(yīng)用場(chǎng)景:緩存用戶信息等。
③ Redis list 列表是簡(jiǎn)單的字符串列表,按照插入順序排序。你可以添加一個(gè)元素到列表的頭部(左邊)或者尾部(右邊)。
底層雙向鏈表,可以通過(guò)push和pop操作從列表的頭部或者尾部添加或者刪除元素,這樣List即可以作為棧,也可以作為隊(duì)列
lpush+lpop=Stack(棧)
lpush+rpop=Queue(隊(duì)列)
④ Redis set是string類型的無(wú)序集合。不包含重復(fù)元素
⑤ Redis zset 和 set 一樣也是string類型元素的集合,且不允許重復(fù)的成員。但sorted set可以通過(guò)用戶額外提供一個(gè)優(yōu)先級(jí)(score)的參數(shù)來(lái)為成員排序,并且是插入有序的,即自動(dòng)排序。
Redis sorted set的內(nèi)部使用ziplist或跳表,跳表組合了skiplist和hash,HashMap里放的是成員到score的映射,而跳表里存放的是所有的成員,
跳表就是在鏈表的基礎(chǔ)上,增加多級(jí)索引提升查找效率。
跳表支持平均 O(logN),最壞 O(N)復(fù)雜度的節(jié)點(diǎn)查找,還可以通過(guò)順序性操作批量處理節(jié)點(diǎn)。
5種數(shù)據(jù)類型
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 上一篇 << >>Redis存放實(shí)體對(duì)象的方式及區(qū)別[http://www.itdecent.cn/p/9661...
- redis是鍵值對(duì)的數(shù)據(jù)庫(kù),有5中主要數(shù)據(jù)類型: 字符串類型(string),散列類型(hash),列表類型(li...
- 5種基本數(shù)據(jù)類型 String、 List、 Hash、 Set、 Sorted Set 基本操作 String ...
- 五種基本數(shù)據(jù)類型 String、Hash、List、Set和Zset。 1、String 等同于java中的,Ma...
- Redis 是一個(gè)鍵值對(duì)數(shù)據(jù)庫(kù)(key-value DB),數(shù)據(jù)庫(kù)的值可以是字符串、集合、列表等多種類型的對(duì)象,而...