6. Redis數據類型-hash

redis中,哈希類型的也是鍵值對,而值本身又是一個鍵值對結構,形如value={{field1,value1}...{fieldN,valueN}}的Hashes基本看成java中的map,通過key value的形式保存數據。

1. 常用命令

  • hset hget hdel hgetall 用於操作的設置,獲取,刪除,獲取全部key-value的操作。
  • hexists hlen 判斷field是否存在以及獲取field的數量。
  • hsetnx不存在的時候才進行設置
  • hincrby hincrbyfloat原子加操作
  • hkeys hvalues 獲取所有filed和所有value
  • hmget hmset 批量獲取,設置

 

2. 內部編碼

a. ziplist: filed count < hash-max-ziplist-entries(512 by default)

b. hashtable: 無法滿足ziplist的條件時。

 3. 應用場景

微信聊天消息記錄:每個聊天室(羣)可以是一個hash key,hash value的filed是用戶ID,value是聊天內容。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章