1.String
最基本的结构,普通的set和get,做简单的keyvalue缓存
2.hash
这个是类似map的一种结构,这个一般就是可以将结构化的数据.比如一个对象(前提是这个对象没嵌套其他的对象)给缓存在redis里,然后每次读写缓存的时候,可以就操作hash里的某个字段
Hash类的数据结构,主要是用来存放一些对象,把一些简单的对象给缓存起来,后续操作的时候,你可以直接修改这个对象的某个字段的值
3.list
有序列表,比如可以通过list存储一些列表型的数据结构,类似粉丝列表,文章评论列表之类的东西
比如可以通过lrange命令,就是从某个元素开始读取多少个元素,可以基于list实现分页查询,这个很棒的一个功能,基于redis实现简单的高性能分页,可以做类似微博那种下拉不断分页的东西,性能高,就一页一页走
比如可以搞个简单的消息队列,从list头进去,从list尾巴里出来
4.set
无序集合,自动去重
直接基于set将系统里需要去重的数据扔进去,自动就给去重了,如果你需要对一些数据进行快速的全局去,你当然也可以使用jvm内存的HashSet进行去重,但是如果你的某个系统部署在多台机器上呢?那就得基于redis在进行全局的set去重
也可以基于set做交集,并集,差集的操作,比如交集,可以把两个人的粉丝列表整一个交集,看两人的共同好友是谁?
5.sorted set
排序的set,去重但是可以排序,写进去的时候给一个分数,自动根据分数排序,这个可以玩很多的花样,最大的特点是有个分数可以自定义排序规则
比如你想要根据时间做数据排序,那么可以写入进去的时候用某个时间作为分数,人家自动就给你按照时间排序了
redis的数据类型
最新推荐文章于 2024-06-24 21:40:09 发布