華爲雲學院帶你7天入門Redis(3)
Redis常見數據結構介紹
1、keys鍵操作
什麼是數據結構?
1.基於內存的key-value數據庫
2.基於c語言編寫的,可以支持多種語言的api //set每秒11萬次,取get 81000次
3.支持數據持久化
4.value可以是string,hash, list, set, sorted set
使用場景
- 取最新n個數據的操作
- 排行榜,取top n個數據 //最佳人氣前10條
- 精確的設置過期時間
- 計數器
- 實時系統, 反垃圾系統
- pub, sub發佈訂閱構建實時消息系統
- 構建消息隊列
- 緩存
keys鍵操作
Redis是一種高級的key-value的存儲系統,其中的key是字符串類型,儘可能滿足如下幾點:
key不要太長,最好不要超過1024個字節,這不僅會消耗內存還會降低查找效率
key不要太短,如果太短會降低key的可讀性
在項目中,key最好有一個統一的命名規範(根據企業的需求)
常用的Keys鍵操作命令有:
exists-----測試key是否存在
del-----刪除key
type-----返回key的類型
keys-----匹配滿足的key
rename------改key名
dbsize-----當前數據庫key的數量
expire-----設置key過期時間
ttl-----key剩餘過期時間
move-----將key移動到指定數據庫
flushdb-----刪除當前數據庫的所有key
flushall-----刪除所有數據庫的key
2、String鍵操作
常用的String鍵操作命令有:
set-----設置單個key
mset-----批量添加key
mget-----批量獲取
incr-----key值+1
decr-----key值-1
incrby-----對key加指定值
decrby-----對key減定值
append-----在key值後追加
substr-----截取字符串(包前包後)
3、List類型操作
一個列表可以包含一個或以上數量的項,每個項按照它們被推入到列表的位置來排序。列表包含的項可以重複出現,它
們不一定是唯一的。
常用的List鍵操作命令有:
lpush-----在list頭部添加
rpop-----從list尾部移出
llen-----(存在對應key返回長度,反之-1,類型不對應會報錯)
lrange-----在指定區間查找元素
rpush-----從尾部增加
lpop-----刪除頭部元素
ltrim-----截取list(保留)
4、Set類型操作
Redis的集合(set)以無序的方式儲存多個各不相同的元素。用戶可以快速向集合添加元素、刪除元素,也可以對多個
集合進行集合操作,比如計算並集、交集等。
常用的Set鍵操作命令有:
sadd-----添加set
srem-----刪除set中的指定元素
smove set1 set2-----將元素從set1轉移到set2
scard-----返回set中元素的個數
sismember-----判斷元素是否在set中
sinter set1 set2 set3...-----給所定set的交集
sunion set1 set2 set3...-----給所定set的並集
sdiff set1 set2 set3...-----給所定set的差集
smembers-----返回set所對應的元素
5、Sorted Set類型實操
顧名思義,Sorted Set是Set類型的升級版,它在Set類型的基礎上增加了排序的屬性,可以使用命令方便的獲取根據
Score進行排序的集合。
常用的Sorted Set鍵操作命令有:
zadd
zcard
zcount
…
實操練習:
- 創建一個Sorted Set並且向其中寫入10個帶Score的Key
- 獲取Score最大的前5個key
- 修改Score第3大的key,使其變爲Score最大的Key
- 獲取Score最大的前5個key
以上內容出自於華爲雲學院(edu.huaweicloud.com),想要繼續學習,歡迎登陸雲學院,站內搜索“redis”即可獲得免費視頻課程。