Redis是什么?
Redis基于內(nèi)存以Key-Value形式存儲的非關(guān)系型數(shù)據(jù)庫。
Redis支持的數(shù)據(jù)類型?
String字符串:
格式: set key value
string類型是二進(jìn)制安全的。意思是redis的string可以包含任何數(shù)據(jù)。比如jpg圖片或者序列化的對象 。
string類型是Redis最基本的數(shù)據(jù)類型,一個鍵最大能存儲512MB。
Hash(哈希)
格式: hmset name key1 value1 key2 value2
Redis hash 是一個鍵值(key=>value)對集合。
Redis hash是一個string類型的field和value的映射表,hash特別適合用于存儲對象。
List(列表)
Redis 列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素到列表的頭部(左邊)或者尾部(右邊)
格式: lpush name value
在 key 對應(yīng) list 的頭部添加字符串元素
格式: rpush name value
在 key 對應(yīng) list 的尾部添加字符串元素
格式: lrem name index
key 對應(yīng) list 中刪除 count 個和 value 相同的元素
格式: llen name
返回 key 對應(yīng) list 的長度
Set(集合)
集合是通過哈希表實(shí)現(xiàn)的,所以添加,刪除,查找的復(fù)雜度都是O(1)。
格式: sadd name value
Redis的Set是string類型的無序集合。
zset(sorted set:有序集合)
格式: zadd name score value
Redis zset 和 set 一樣也是string類型元素的集合,且不允許重復(fù)的成員。
不同的是每個元素都會關(guān)聯(lián)一個double類型的分?jǐn)?shù)。redis正是通過分?jǐn)?shù)來為集合中的成員進(jìn)行從小到大的排序。
zset的成員是唯一的,但分?jǐn)?shù)(score)卻可以重復(fù)。