2、hash
3、list
4、set
5、sortset
6、redis訊息訂閱發布
redis命令平台:try.redis.io
string是最常用的一種資料型別,普通的key/value儲存都可以歸為此類。
1)設定key對應的值為string型別的value
2)獲取key對應的值
批量獲取多個key的值,如果可以不存在則返回nil
incr對key對應的值進行加加操作,並返回新的值;
incr age
incrby加指定值
incrby age 30
decr對key對應的值進行減減操作,並返回新的值;decrby減指定值
設定key對應的值為string型別的value,如果key已經存在則返回0
設定key對應的值為string型別的value,並設定有效期
1)getrange 獲取key對應value的子字串
2)mset
批量設定多個key的值,如果成功表示所有值都被設定,
否則返回0表示沒有任何值被設定
3)msetnx,同mset,不存在就設定,不會覆蓋已有的key
4)getset 設定key的值,並返回key舊的值
給指定key的value追加字串,並返回新字串的長度
類似於hashmap key,value
map> 第乙個string,map的名稱,
存多個map通過第乙個string 作為key來區分
1、hash是乙個string型別的field和value之間的對映表,
2、redis的hash資料型別的key(hash表名稱)對應的value實際的內部儲存結構為乙個hashmap
3、hash特別適合儲存物件。
相對於把乙個物件的每個屬性儲存為string型別,將整個物件儲存在hash型別中會占用更少記憶體。
4、所儲存的成員較少時資料儲存為zipmap,當成員數量增大時會自動轉成真正的hashmap,
此時encoding為ht。
5、運用場景:
如用乙個物件來儲存使用者資訊,商品資訊,訂單資訊等等。
1、 hset——設定key對應的hashmap中的field的value
hset myinfo name fbiao
hset myinfo age 25
hset myinfo address shpd
2、 hget——獲取key對應的hashmap中的field的value
hget myinfo name
3、 hgetall——獲取key對應的hashmap中的所有field的value
hgetall myinfo
4、hlen--返回key對應的hashmap中的field的數量
在key對應的list的頭部新增乙個元素,以資料棧進行儲存,先進後出
獲取key對應的list的指定下標範圍的元素,-1表示獲取所有元素
從key對應的list的尾部刪除乙個元素,並返回該元素
在key對應的list的尾部新增乙個元素
從key對應的list的尾部刪除乙個元素,並返回該元素
在key對應的set中新增乙個元素
獲取key對應的set的所有元素
隨機返回並刪除key對應的set中的乙個元素
求給定key對應的set並集
求給定key對應的set交集
set的基礎增加順序score,再根據score進行排序
應用場景:通過sortset實現排行榜
在key對應的zset中新增乙個元素
獲取key對應的zset中指定範圍的元素,-1表示獲取所有元素
刪除key對應的zset中的乙個元素
返回有序集key中,指定分數範圍的元素列表,排行榜中運用
返回key對應的zset中指定member的排名。其中member按score值遞增(從小到大);
排名以0為底,也就是說,score值最小的成員排名為0,排行榜中運用
返回key對應的元素數量
set是通過hashmap儲存,key對應set的元素,value是空物件
sortset是怎麼儲存並實現排序的呢,hashmap儲存,還加了一層跳躍表
跳躍表:相當於雙向鍊錶,在其基礎上新增前往比當前元素大的跳轉鏈結
作用:發布訂閱類似於資訊管道,用來進行系統之間訊息解耦,類似於mq,rabbitmq、rocketmq、kafka、activemq,
主要有訊息發布者和訊息訂閱者。比如運用於:訂單支付成功,會員系統加積分、錢包進行扣錢操作、發貨系統(下發商品)
將資訊message傳送到指定的頻道channel。返**到訊息的客戶端數量
訂閱給指定頻道的資訊
取消訂閱指定的頻道,如果不指定,則取消訂閱所有的頻道。
redis發布訂閱功能比較薄弱但比較輕量級,mq訊息會進行持久化,redis資料持久化會丟失資料,資料可靠性比較差,redis發布訂閱無後台功能通過msgid、msgkey進行查詢訊息
Redis 五種資料型別
一 前言 上篇部落格已經對redis的一些基本知識做了一些簡介,這篇部落格,將簡單介紹一些redis的五種資料型別。分別為string 字串 hash 雜湊 list 鍊錶 set 集合 zset 有序集合 對這些型別可以執行很多原子性的操作 比如向乙個string型別的value後面追加字串 向l...
Redis 五種資料型別
目錄 redis共有strings hashs lists sets sorted sets五種資料型別,可以說已經比較豐富了。下面只對這幾種資料型別的資料結構與用途做簡要介紹。至於每種資料型別的操作api,這裡只簡單一提,不再一一詳細介紹,有需要的使用者可以google即可。string是最簡單的...
Redis 五種資料型別
redis支援五種資料型別 string 字串 hash 雜湊 list 列表 set 集合 及zset sorted set 有序集合 資料型別一 字串 0.1 6379 set name hubotao2 ok127.0 0.1 6379 get name hubotao2 資料型別二 hash...