Redis数据结构与对应开发的场景

Redis数据结构对应开发的场景

目录

Redis数据结构对应开发的场景

五种数据结构

String字符串

List列表

Sets

Sorts set

Hashes

各数据结构及其应用的场景

字符串场景

列表场景

集合使用场景

有序集合

哈希场景


Redis不是一个普通的key-value存储,实际上是一个数据结构服务器。

key-value中,key代表String类型,而value则可以是数据结构 String(字符串),List(列表),Set(集合),Sorts Set(排序集合),Hashes(哈希)。

五种数据结构

String字符串

二进制安全字符串,就向java中String类。

List列表

根据插入顺序排序的字符串元素集合。它们基本上就是链表,可以充当栈或队列的角色。

Sets

集合(set)类型也是用来保存多个的字符串元素,但和列表类型不一样的是,集合中不允许有重复元素,并且集合中的元素是无序的

Sorts set

有序集合,它和集合必然有着联系,它保留了集合不能有重复成员的特性,但不同的是,有序集合中的元素可以排序。但是它和列表使用索引下标作为排序依据不同的是,我们可以给每个元素设置一个分数(score)作为排序的依据。score可以重复。

Hashes

Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。

 

各数据结构及其应用的场景

 

字符串场景

缓存 ,网站首页所有信息及其他热点信息都可以缓存在Redis中。

一个资源点的计数器,如视频,文章等

分布式服务中Session共享

列表场景

使用有限长度的列表存储用户在社交网站发布的最新更新。

消息队列,栈,队列。

集合使用场景

集合类型比较典型的使用场景是标签(tag)。例如一个用户可能对娱 乐、体育比较感兴趣,列如blibli 会根据你的标签去推荐相应的视频给你。

有序集合场景

可以做排行榜单的维度可能是多个方面的:按照时间、按照播放数量、按照获得的赞数。本节使用赞数这个维度,记录每天用户上传视频的排行榜,该榜单和列表的榜单有区别列表排序是按照插入顺序来的。

哈希场景

用来存储用户信息。

 

有点点收获的朋友,捧个人场(点个赞撒),如果有大佬知道更多的场景教教我呀。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值