redis的五大数据类型

只要是考虑到缓存,必问redis;只要问到redis,必然要问 五大数据类型;

1 string

  redis最基本的数据类型;

  string 类型是二进制安全的,意思是 Redis 的 string 可以包含任何数据,比如图片或者序列化的对象

  一个 redis 中字符串 value 最多可以是 512M。

2 hash数据类型

  也就是映射表;key,value形式的;

  类比于 Java里面的 Map<String,Map<String,Object>> 集合

3 list

  也就是链表结构

  特点当然也是链表的特点 a : 有序 b:可以重复

       list典型使用场景

   一、栈

  通过命令 lpush+lpop

  二、队列

  命令 lpush+rpop

  三、有限集合

  命令 lpush+ltrim

  四、消息队列

  命令 lpush+brpop

4    set

  特点:a --无序 b---不可重复

5 zset

  zset(sorted set 有序集合),和上面的set 数据类型一样,也是 string 类型元素的集合,但是它是有序的。

6、Redis5.0新数据结构-stream

Redis的作者在Redis5.0中,放出一个新的数据结构,Stream。Redis Stream 的内部,其实也是一个队列,每一个不同的key,对应的是不同的队列,每个队列的元素,也就是消息,都有一个msgid,并且需要保证msgid是严格递增的。在Stream当中,消息是默认持久化的,即便是Redis重启,也能够读取到消息。那么,stream是如何做到多播的呢?其实非常的简单,与其他队列系统相似,Redis对不同的消费者,也有消费者Group这样的概念,不同的消费组,可以消费同一个消息,对于不同的消费组,都维护一个Idx下标,表示这一个消费群组消费到了哪里,每次进行消费,都会更新一下这个下标,往后面一位进行偏移。

---------------------------------------------------------------------------------------------------------------------------------

这几种数据类型底层是由什么数据结构构造的呢

 

posted @ 2020-05-13 17:36  dangerous_11  阅读(136)  评论(0)    收藏  举报