1、string(字符串)
与memcached一样,一个key对应一个value,key的最大存储值为512MB,value的最大存储值也为512MB。string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。使用设置和获取的命令为SET和GET。
命令为【SET key value】【GET key】
2、hash(哈希)
键值(key=>value)对集合。 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象(每个hash可以存储2的32次方 -1 键值对(40多亿))。使用设置和获取的命令为 HMSET, HGET。
命令为【HMSET key key1 value1 key2 value2】【HGET key key1】
3、list(列表)
列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部或者尾部(列表最多可存储2的32次方 - 1 元素 (4294967295, 每个列表可存储40多亿))。进值命令为LPUSH或者RPUSH,获取值命令为LRANGE。
命令为【LPUSH key value】【LRANGE key 0 10】获取key列表从左边开始0到10个value。
4、set(集合)
Set 是 string 类型的无序集合。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。集合中最大的成员数为 2的32次方 - 1(4294967295, 每个集合可存储40多亿个成员)。SADD添加一个 string 元素到 key 对应的 set 集合中,成功返回 1,如果元素已经在集合中返回 0。
命令为【SADD key value】【SMEMBERS key】
5、zset(有序集合)
和 set 一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。ZADD添加元素到集合,元素在集合中存在则更新对应score。
命令为【ZADD key score value】【ZRANGEBYSCORE key 0 100】
注:以上各种类型都有很多其他的键值命令,这里不一一阐述。