当前位置:   article > 正文

Redis的数据类型及应用场景_redis类型使用场景

redis类型使用场景

类型简介特性场景String(字符串)二进制安全可以包含任何数据,比如jpg图片或者序列化的对象,一个键最大能存储512M—Hash(字典)键值对集合,即编程语言中的Map类型适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去)存储、读取、修改用户属性List(列表)链表(双向链表)增删快,提供了操作某一段元素的API1、最新消息排行等功能(比如朋友圈的时间线) 2、消息队列Set(集合)哈希表实现,元素不重复1、添加、删除、查找的复杂度都是O(1)  2、为集合提供了求交集、并集、差集等操作1、共同好友 2、利用唯一性,统计访问网站的所有独立ip 3、好友推荐时,根据tag求交集,大于某个阈值就可以推荐Sorted Set(有序集合)将Set中的元素增加一个权重参数score,元素按score有序排列数据插入集合时,已经进行天然排序1、排行榜 2、带权重的消息队列

string——适合最简单的k-v存储,类似于memcached的存储结构,短信验证码,配置信息等,就用这种类型来存储。
hash——一般key为ID或者唯一标示,value对应的就是详情了。如商品详情,个人信息详情,新闻详情等。
list——因为list是有序的,比较适合存储一些有序且数据相对固定的数据。如省市区表、字典表等。因为list是有序的,适合根据写入的时间来排序,如:最新的***,消息队列等。
set——可以简单的理解为ID-List的模式,如微博中一个人有哪些好友,set最牛的地方在于,可以对两个set提供交集、并集、差集操作。例如:查找两个人共同的好友等。
Sorted Set——是set的增强版本,增加了一个score参数,自动会根据score的值进行排序。比较适合类似于top 10等不根据插入的时间来排序的数据。

2.1.1 String的应用场景

1、缓存功能:字符串最经典的使用场景,redis最为缓存层,Mysql作为储存层,绝大部分请求数据都是在redis中操作,由于redis具有支撑高并发特性,所以缓存通常能起到加速读写和降低 后端压力的作用。

2、计数器:许多运用都会使用redis作为计数的基础工具,他可以实现快速计数、查询缓存的功能。

如:视频播放数系统就是使用redis作为视频播放数计数的基础组件。

比如:优酷视频的播放:incr video:videoId:playTimes

或者:文章浏览量:incr article:aricleId:clickTimes

或者粉丝数量:取关 decr author:authorId:fansNumber

这样的话就能极快的提高视频或者是文章的访问速度

简单总结就是:能够利用redis在缓存中做统计的工作,省去了在sql联表查询的功夫

3、id生成器:我们在使用mysql时,把数据存在mysql后,该数据就会自动生成一个自增长的id,这个id肯定是不重复的,那类似这种生成一个不重复的id也可以用redis的string数据结构来做

2,2.1 Redis的基本数据类型:List的应用场景
示例:1,点赞;
示例2:回复
比如twitter的关注列表,粉丝列表等都可以用Redis的list结构来实现。

2,3.1 Redis的基本数据类型:Set的应用场景
案例:在微博中,可以将一个用户所有的关注人存在一个集合中,将其所有粉丝存在一个集合。Redis还为集合提供了求交集、并集、差集等操作,可以非常方便的实现如共同关注、共同喜好、二度好友等功能,对上面的所有集合操作,你还可以使用不同的命令选择将结果返回给客户端还是存集到一个新的集合中。

2,4.1 SortedSet 应用场景
排行榜:有序集合经典使用场景。例如社交网站需要对用户的帖子或者微博做排行榜,榜单维护可能是多方面:
按照点击量、按照获得的赞数,安照评论数等等。

2,5.1 Redis的基本数据类型:Hash的应用场景
存储一个用户信息对象数据

Key仍然是用户ID, value是一个Map,这个Map的key是成员的属性名,value是属性值,这样对数据的修改和存取都可以直接通过其内部Map的Key(Redis里称内部Map的key为field), 也就是通过 key(用户ID) + field(属性标签) 就可以操作对应属性数据了,既不需要重复存储数据,也不会带来序列化和并发修改控制的问题,很好的解决了问题。

相关链接:https://www.cnblogs.com/jasonZh/p/9513948.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/798645
推荐阅读
相关标签
  

闽ICP备14008679号