一、字符串:
redis中最为基础的存储类型,以二进制存储,value的字符串最多512M,Key做多1024字节。
常用命令:赋值(set)、取值(get)、删除(del),递增(incr/incrby keyname 5)、递减(decr/decrby keyname 5)、追加(append返回值是长度)。
二、哈希
可以看作是一个String的key和String的value的map容器。非常适合存储对象的属性。
常用的命令:赋值(hset eg : hset myhash name niuyonggang)、取值(hget eg:hget myhash name)、hmset、hmget、hgetall、hdel、del、hincrby、hexists、hlen。
三、List
List类型是按照插入顺序排序的一个字符川的链表,和数据结构中的普通链表是一样的。
存储方式:1、ArrayList使用数组存储。LinkedList使用双向链方式存储。
操作命令:两端添加(lpush、rpush、lpushx)、查看列表(lrange)、两端弹出(lpop、rpop)、获取列表的元素的个数(llen)、删除(lrem)、中间添加(lset、linsert)、rpoplpush。
rpoplpush的使用场景:消息队列逻辑处理过程中,用于反转状态用到,原因是数据不至于丢失。
四、Set
将Set可以看作是没有排序的字符集、元素不允许重复。
常用命令:添加/删除(sadd/srem)、显示集合(smembers)、存在(sismember)、差集(sdiff)、交集(sinter)、并集(sunion),个数(scard)、srandmember、sdifferstore、sintersotre、sunionstore.
使用场景:跟踪一些唯一性数据、用于维护数据之间的关联关系。
五、sorted-set
和set类似,只不过元素在集合中的位置是有序的,使用场景:积分排行榜、构建索引数据。
常用命令:zadd、zrem、zcard、zscore、zrange、zrevrange...