Redis筆記(四) 基礎筆記

2021-09-01 19:07:19 字數 1887 閱讀 8239

1,keys pattern,獲得符合規則的鍵名列表

glob風格的萬用字元規則:

?  匹配乙個字元

* 匹配任意個包括0個字元

匹配任乙個字元,可以使用-表示乙個範圍

\x 匹配x,用於轉義字元

kyes命令需要遍歷redis中所有鍵,當鍵數量較多時會影響效能,因此不建議在生產中使用

2,redis的鍵名最佳命名規則:

物件型別:物件id:物件屬性,比如user:6:friends來儲存id為1的使用者的好友列表

對於多個單詞則推薦使用.分隔符,另外可讀性也非常重要,不要省這麼一點點空間。

3,生成自增id:

rdbs中科院使用auto_increment來實習自增id主鍵,redis中可以對每一類物件使用名為users:count的鍵來儲存當前型別的物件的數量,每次增加乙個新物件都使用incr原子命令獲取該新物件的id值即可。

4,雜湊型別hash

適合用來儲存物件,使用物件類別和id構成鍵名,使用字段表示物件的屬性,而字段值儲存屬性值。

一般來講儲存物件可以用json序列化的字串,可以用hash,如果是需要頻繁的獲取或者更新物件的某些屬性,為了防止傳輸開銷和序列化開銷,最好使用hash。

雜湊型別還有乙個好處,就是對於同一類物件,每個物件的屬性可以不一樣,這在關係型資料庫中不可能

# 增加數字

hincrby key field increment

# 只獲取欄位名或字段值

hkeys key  /  hvals key  /  hlen key

5,集合型別set

# 獲取set中元素個數

scard key

# 獲取set中所有元素

smembers key

# 進行集合運算並將結果儲存

sdiffstore dest key1 key2

sinterstore dest key1 key2

sunionstore dest key1 key2

# 隨機獲取set中元素

srandmember key count

count 為正數的時候隨機獲取count個不重複元素,為負數時候隨機獲取|count|個可能重複元素

6,有序集合sortedset型別

list和sortedset的應用場景區別:

1) list型別是通過linkedlist實現的,獲取靠近兩端的資料速度極快,而當元素增多後,訪問中間資料的速度會較慢,所以它更適合實現如 新鮮事  日誌  這樣很少訪問中間元素的應用。

2) sortedset型別使用雜湊表和跳躍表skiplist實現,所以即使讀取位於中間的部分的元素速度很非常快,時間複雜度是o(log(n)),不過比hash慢,hash是o(1)

3) list中不能簡單調整某個元素的位置,但是有序集合可以(通過更改元素的score)

4) sortedset比list更耗記憶體(ps:這不廢話嗎,沒有免費午餐)

sortedset可以說是redis中最高端的資料結構了,吊爆了~

# zrange key start end [withscores]

按照元素score分數從小到大的順序返回索引從start到stop之間的所有元素(包含兩端元素,索引從0開始)

# zrangebyscore key min max [withscores] limit offset count

如果希望分數範圍不包括端點值,可在分數前加上(符號。

zrangebyscore scoreboard (80 +inf

後面的offset和count跟mysql中的含義一樣,乙個是偏移量,乙個是數量

# zrevrangebyscore scoreboard 100 0 limit 0 3

注意上面的min和max是跟前面的zrangebyscore是相反的

redis 練習筆記(四) redis 管理

rename oldkey newkey 鍵的重新命名 renamenx oldkey newkey 重新命名,要求newkey不存在 dbsize 檢視庫 randomkey 返回隨機鍵 expire name second 設定name在second秒後過期 對於字串二次設值後,expire無效...

redis筆記(基礎一)

前言 你總是想的太多而讀書太少 使用redis,首先要安裝redis。1 redis安裝 gcc的安裝很簡單,首先要確保root登入,其次就是linux要能連外網 yum y install gcc automake autoconf libtool make注意 執行yum時出現 var run ...

學習筆記 Redis基礎

列儲存資料庫 hbase,用於分布式檔案系統,將同一列資料儲存在一起。文件型資料庫 mongodb,用於web應用,與鍵值對類似,但值是結構化的。2.1 基本 能支援的功能點 2.2 linux安裝與啟動 預設安裝路徑 usr local bin,目錄下有redis cli和redis server...