Redis:数据类型

一、Redis字符串(String)

1、String类型

String字符串:string类型是redis最基本、最简单的数据类型,一个key对应一个value。

String类型的二进制是安全的,可以包含任何数据,但是每一个value最大时512M

2、String命令

设置和获取键值

Redis:数据类型_第1张图片

 数值增减:一定是数字才能进行增减

INCR:设置value自增1             DECR:设置value自减1

INCRBY:随意设置value自增数字         DECR:随意设置value自减数字

Redis:数据类型_第2张图片

 分布式锁

setex:设置带过期时间的key,动态设置。

setex 键 秒值 真实值

setnx命令当且仅当设置的key不存在哦。

Redis:数据类型_第3张图片

二、Redis哈希(Hash)

1、Hash结构

KV模式,但是value是一个键值对。Hash结构可以对随意的字段做CRUD操作。

2、Hash命令

设置和获取Hash

 HSET HGET HMSET HMGET  HGETALL  HKEYS  HVALS

Redis:数据类型_第4张图片

Redis:数据类型_第5张图片

HLEN:key的全部个数、HEXISTS:判断某个key是否存在 

 Redis:数据类型_第6张图片

 三、Redis列表(List)

1、List类型

Redis中的List类型与Java中的LinkedList类似,是一个无头结点的双向链表。既可以支持正向检索和也可以支持反向检索,但是对中间元素的操作比较差。

特点:有序可重复,查询速度快

2、List命令

LPUSH:各个 value 会按从左到右的顺序依次插入到表头

RPUSH:各个 value 会按从左到右的顺序依次插入到表尾

 Redis:数据类型_第7张图片

LPOP:移除左边元素 RPOP:移除右边元素 

 Redis:数据类型_第8张图片

 四、Redis集合(SET)

1、SET集合

Redis的Set结构与Java中的HashSet类似,可以看做是一个value为null的HashMap。

特点:无序不可重复

2、SET命令

SADD:添加元素 SMEMBERS:遍历所有元素  SCARD:查看元素个数 

Redis:数据类型_第9张图片

五、Redis有序集合(sorted set)

1、sorted set类型

Redis的SortedSet是一个可排序的set集合,与Java中的TreeSet有些类似,但底层数据结构却差别很大。SortedSet中的每一个元素都带有一个score属性,可以基于score属性对元素排序,底层的实现是一个跳表(SkipList)加 hash表。

特点:有序不可重复

2、sort set命令

Redis:数据类型_第10张图片

 六、Redis位图(bitmap)

1、位图bitmap

用String类型作为底层数据结构实现的一种统计二值状态的数据类型。

位图本质是数组它是基于String数据类型的按位的操作。该数组由多个二进制位组成,每个二进制位都对应一个偏移量(称为一个索引)。

2、命令

bitmap的偏移量是从0开始计算的。

Redis:数据类型_第11张图片

 七、Redis流(stream)

1、stream流

八、key操作

Redis:数据类型_第12张图片

 TTL  PTTL

key 不存在时,返回 -2
key 存在但没有设置剩余生存时间时,返回 -1

你可能感兴趣的:(redis,redis,缓存,数据库)