redis五種資料型別常用指令

2021-09-29 04:57:10 字數 3339 閱讀 2250

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...