String是redis中最基础的数据结构,你可以把它用作缓存最基础的kv(key-value)类型的缓存(value最大为512MB),只需要把需要缓存的对象进行string的编解码即可。另外String也可以保存数值类型的数据,就可以来实现计数功能(redi提供了incr等原子操作)
创新互联是一家专业提供辉县企业网站建设,专注与网站制作、网站设计、H5场景定制、小程序制作等业务。10年已为辉县众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。
常见应用场景
List列表更多的时候是把它当成队列使用(最大2^32 - 1个元素),使用入队出队功能,如果来使用它作为各种列表的话,很多时候不具备防重功能在使用的时候不是很方便。
常见应用场景
Set是一种无序不重复的集合,添加删除检查是否存在都是O(1)的时间复杂度。
Sorted Set是结合了List和Set的一种数据结构,有序(按照元素score排序)的不重复(元素key不重复)的集合,Sorted Set是在业务开发中非常常用的数据结构(比List和Set应用面更广),因为在实际需求中,存在非常多的列表场景,比如视频列表、评论列表、关注列表、点赞列表、排行榜等等各种列表,每个列表都要按照一定规则排序,并且大部分都不能重复,所以使用Sorted Set就非常合适。
常见应用场景
hash是一个map结构,可以像存储对象的多个字段一样存储一个key的多类数据。
常见应用场景
redis中的pub/sub可以实现广播功能,类似rocketmq中的broadcast
常见应用场景
除了上述最基本的数据结构外,redis还提供了一些其他的数据结构,有的是需要安装相关redis stack来使用的。
bitmap本质上还是使用的string字符串,不过可以通过bit来进行操作,把这个key的value值想象成bit组成的数组。
常见应用场景
bloomfilter(也叫布隆过滤器)可以理解成一种特殊的set集合,它可以用来判断一个值是否在这个集合中,不过不同于普通的set,它的判断存在一定误判的可能(假阳性),如果bloomfilter判断一个值不在这个集合中,那么一定不在,但是如果判断在,那么有可能不在。
常见应用场景
减少请求量、缓存穿透量: 比如为了防止大量请求查询缓存不存在穿透到数据库中查询,我们可以在缓存查询前加一层布隆过滤器的查询,如果不在布隆过滤器中,说明数据肯定不在数据库和缓存中,就不需要继续查询了。
hyperloglog是一种概率性的去重计数数据结构,可以实现一定精度的去重计数
常见应用场景
geohash可以实现距离计算、距离查询等地理位置相关的功能
常见应用场景
当前标题:Redis常用数据结构介绍和业务应用场景分析
文章起源:http://www.kswsj.com/qtweb/news12/22262.html
网站建设、网络推广公司-成都快上网,一家网站设计、网站制作公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 成都快上网