Redis學習之緩存數據類型

Redis緩存數據類型有5種,分別是String(字符串)、List(列表)、Hash(哈希)、Set(無序,不重複集合)、ZSet(sorted set:有序,不重複集合)。


String(字符串)

string類型是redis最近的類型,一個key對應一個value。

Redis中的String類型是二進制安全的,可以包含任何數據。例如序列化的對象或者圖片。

String類型一個鍵最大能存儲 512M。

Redis中對String類型的賦值命令是SET,取值命令是GET。

實例:


通過set命令,加入key爲myKey,對應的值爲testString的緩存數據


List(列表)

Redis列表類型是簡單的字符串列表,按照插入的順序排序。

每個List最多可存儲 232 - 1 個元素(40多億)。

Redis中List類型通過lpush命令賦值,通過lrange命令取值。

實例:


key值爲test-list,存入的value值分別爲Java、PHP、C++。


Hash(哈希)

Redis的hash是一個鍵值對集合,特別適合用於存儲對象。

每個hash最多可存儲 232 - 1 個元素(40多億)。

Redis中的hash類型通過HMSET命令賦值,HEGTALL命令取值。

實例:


key值時user,對應的value值是裏面的鍵值對集合。


Set(無序,不重複集合)

Redis的set是沒有順序和不重複的集合類型,String類型的無序集合。

通過sadd命令添加元素到集合,smembers命令獲取集合。

集合中最大的成員數爲 232 - 1 個(40多億)。

實例:


用sadd命令添加緩存數據,若添加成功,則放回1。若返回0,則代表添加失敗,例如value值重複。

上面的實例中C++被添加了兩次,set是不重複集合,元素的唯一性,第二次添加會被忽略。


ZSet(有序,不重複集合)

Redis中的zset集合有順序但裏面元素不會重複,String類型的有序集合。

zset每個元素都會綁定一個double類型的數值,集合按照該數值升序排序,數值可以重複,但value值不可以重複。

通過zadd命令添加元素到集合,如果元素在集合中已經存在,則更新對應的double類型數值。通過ZRANGEBYSCORE命令獲取zset集合元素。

實例:



keys * 命令

通過keys * 命令查找緩存中所有的key值。

實例:


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