Redis資料型別Hash

2021-10-25 07:45:27 字數 1369 閱讀 7648

hash 型別資料操作的注意事項

hash和string型別的區別

有時候我們往往不是在快取中存乙個值,而是選擇存乙個物件,比如乙個購物車訊息,我們就需要使用到hash了

hash儲存的結構會被優化
 如果field數量較少,儲存結構優化為類陣列結構

 如果field數量較多,儲存結構使用hashmap結構

新增/修改資料

hset key field value

 獲取資料

hget key field

hgetall key

 刪除資料

hdel key field1 [field2]

ps:刪除乙個不存在的鍵,只會返回0 不會刪除成功

 新增/修改多個資料

hmset key field1 value1 field2 value2 …

 獲取多個資料

hmget key field1 field2 …

 獲取雜湊表中字段的數量

hlen key

 獲取雜湊表中是否存在指定的字段

hexists key field

 獲取雜湊表中所有的欄位名或字段值

hkeys key

hvals key

 設定指定欄位的數值資料增加指定範圍的值

hincrby key field increment

hincrbyfloat key field increment

 hash型別下的value只能儲存字串,不允許儲存其他資料型別,不存在巢狀現象。如果資料未獲取到,對應的值為(nil)  每個 hash 可以儲存 2^32 - 1 個鍵值對

 hash型別十分貼近物件的資料儲存形式,並且可以靈活新增刪除物件屬性。但hash設計初衷不是為了儲存大量物件而設計的,切記不可濫用,更不可以將hash作為物件列表使用

 hgetall 操作可以獲取全部屬性,如果內部field過多,遍歷整體資料效率就很會低,有可能成為資料訪問瓶頸

著重更新的話就是hash

著重呈現的就是string

Redis 資料型別 Hash

對一系列儲存的資料進行編組,方便管理,典型應用儲存物件資訊 乙個儲存空間儲存多個鍵值對資料 底層使用雜湊表結構實現資料儲存 注意 hash型別下的value只能儲存字串,不允許儲存其他資料型別,不存在巢狀現象 每個 hash 可以儲存 2 32 1 個鍵值對 hash型別十分貼近物件的資料儲存形式,...

redis資料型別 hash

hash在redis中是一種比較常用的資料型別,資料儲存結構以key value,可以儲存複雜的資料結構,比如 物件,巢狀 list set zset 資料 命令測試127.0.0.1 6379 127.0.0.1 6379 hset ikang name tom integer 1 127.0.0...

redis資料型別 Hash型別

hash型別,是乙個string型別的field和value的對映表。hash存放的是鍵值對,可以很方便的存放物件。常用操作 hset 設定hash field為指定值,如果key不存在,則先建立 hset user1 name jack hset uer1 age 18 hget 獲取指定的has...