Redis使用——Redis支持的五種數(shù)據(jù)類型
背景
日常我們開發(fā)時,我們會遇到各種各樣的奇奇怪怪的問題(踩坑o(╯□╰)o),這個常見問題系列就是我日常遇到的一些問題的記錄文章系列,這里整理匯總后分享給大家,讓其還在深坑中的小伙伴有繩索能爬出來。
同時在這里也歡迎大家把自己遇到的問題留言或私信給我,我看看其能否給大家解決。
開發(fā)環(huán)境
- 系統(tǒng):Ubuntu
- 工具:Docker
- 鏡像:Redis
- 官方配置:redis.conf
內(nèi)容
本節(jié)我們對于Redis的數(shù)據(jù)類型進(jìn)行解析,Redis的數(shù)據(jù)類型共分為五種,其分別是:
- string(字符串)
- hash(哈希)
- list(列表)
- set(集合)
- zset(sorted set:有序集合)
1、string字符串類型
string字符串類型相信大家都比較容易理解,這和我們?nèi)粘J褂玫囊恍?shù)據(jù)庫一致,它在Redis中存儲時通常是key value的形式。當(dāng)我們進(jìn)行使用時可以將任意被轉(zhuǎn)為字符串格式的數(shù)據(jù)存儲到里面。它也是Redis中最基本的數(shù)據(jù)類型,最大存儲為512MB。
2、hash哈希類型
hash哈希類型是一個 string 類型的 field(字段) 和 value(值) 的映射表,通常用來存儲對象使用,例如張三的用戶信息、提交的一個工單草稿等場景,其在Redis中存儲時是key value集合的形式,也就是value中是一個集合。相當(dāng)于里面存儲了好多好多的string對象。每個hash可以存儲2^32 - 1 鍵值對(40多億)。
3、list列表
list列表類型是string列表,其按照插入順序進(jìn)行排列,在使用時可以在列表的頭部或者尾部進(jìn)行添加。一個列表可以存儲2^32-個元素(40多億)。一般我們用于消息隊(duì)列、消息交換、緩存列表等場景下。
4、set集合
set集合是string類型的無序集合,集合中不能出現(xiàn)重復(fù)的數(shù)據(jù),每個成員都是唯一的;同樣的這個集合也是可以存儲2^32-個元素(40多億)。使用場景例如求交集、IP訪問記錄等等。
5、sorted set
sorted set 集合是string類型的有序集合,每個元素都會關(guān)聯(lián)一個double類型的分?jǐn)?shù),Redis依據(jù)這個分?jǐn)?shù)進(jìn)行從小到大排序。成員同樣也是唯一的,不過分?jǐn)?shù)可以重復(fù)。使用場景例如用戶基礎(chǔ)信息緩存、全班學(xué)生成績、排行榜等等。
本文聲明:

知識共享許可協(xié)議
本作品由 cn華少 采用 知識共享署名-非商業(yè)性使用 4.0 國際許可協(xié)議 進(jìn)行許可。