存储的数据:单个数据,最简单的数据存储类型,也是最常用的数据存储类型
存储数据的格式:一个存储空间保存一个数据
存储内容:通常使用字符串,如果字符串以整数的形式展示,可以作为数字操作使用
大型企业级应用中,分表操作是基本操作,使用多张表存储同类型数据,但是对应的主键 id必须保证统一性,不能重复。Oracle 数据库具有sequence设定,可以解决该问题,但是MySQL数据库并不具有类似的机制,那么如何解决?
Tips 1:
“最强女生”启动海选投票,只能通过微信投票,每个微信号每 4 小时只能投1票。
电商商家开启热门商品推荐,热门商品不能一直处于热门期,每种商品热门期维持3天,3天后自动取消热门。
新闻网站会出现热点新闻,热点新闻最大的特征是时效性,如何自动控制热点新闻的时效性。
针对着三个场景,可以对数据指定声明周期
Tips 2:
主页高频访问信息显示控制,例如新浪微博大V主页显示粉丝数与微博数量
eg: user:id:3506728370:fans → 12210947
eg: user:id:3506728370:blogs → 6164
eg: user:id:3506728370:focuss → 83
eg: user:id:3506728370 →{“id”:3506728370,”name”:”春晚”,”fans”:12210862,”blogs”:6164, “focus”:83}
Tips 3:
表名 : 主键名 : 主键值 : 字段名
eg1: order: id : 29437595 : name
eg2: equip: id : 390472345 : type
eg3: news : id : 202004150 : title
电商网站购物车设计与实现(这里仅分析购物车redis存储模型,添加、浏览、更改数量、删除、清空)
但是当前这种设计仅仅是将数据存储到了redis中,并没有起到加速的作用,商品信息还需要二次查询数据库,所有可以在属性中加入商品信息
Tips 4:
Tips 5:
数据存储需求:存储多个数据,并对数据进入存储空间的顺序进行区分
微信朋友圈点赞,要求按照点赞顺序显示点赞好友信息 如果取消点赞,移除对应好友信息。
Tips 6:
twitter、新浪微博、腾讯微博中个人用户的关注列表需要按照用户的关注顺序进行展示,粉丝列表需要将最 近关注的粉丝列在前面
新闻、资讯类网站如何将最新的新闻或资讯按照发生的时间顺序展示?
企业运营过程中,系统将产生出大量的运营数据,如何保障多台服务器操作日志的统一顺序输出?
Tips 7:
每位用户首次使用今日头条时会设置3项爱好的内容,但是后期为了增加用户的活跃度、兴趣点,必须让用户对其他信息类别逐渐产生兴趣,增加客户留存度,如何实现?
系统分析出各个分类的最新或最热点信息条目并组织成set集合
随机挑选其中部分信息
配合用户关注信息分类中的热点信息组织成展示的全信息集合
Tips 8:
脉脉为了促进用户间的交流,保障业务成单率的提升,需要让每位用户拥有大量的好友,事实上职场新人不具有更多的职场好友,如何快速为用户积累更多的好友?
系统分析出各个用户的好友列表,并组成set集合
将各个用户的好友列表与好友的好友列表进行交、并、差集
将交、并、差集的筛选出的结果推送给用户
Tips 9:
Tips 10:
set 类型不允许数据重复,如果添加的数据在 set 中已经存在,将只保留一份
set 虽然与hash的存储结构相同,但是无法启用hash中存储值的空间
公司对旗下新的网站做推广,统计网站的PV(访问量),UV(独立访客),IP(独立IP)。
PV:网站被访问次数,可通过刷新页面提高访问量
UV:网站被不同用户访问的次数,可通过cookie统计访问量,相同用户切换IP地址,UV不变
IP:网站被不同IP地址访问的总次数,可通过IP地址统计访问量,相同IP不同用户访问,IP不变
Tips 11:
网站的黑白名单设置
Tips 12:
票选广东十大杰出青年,各类综艺选秀海选投票
各类资源网站TOP10(电影,歌曲,文档,电商,游戏等)
聊天室活跃度统计
游戏好友亲密度
为所有参与排名的资源建立排序依据
Tips 13:
基础服务+增值服务类网站会设定各位会员的试用,让用户充分体验会员优势。例如观影试用VIP、游戏 VIP体验、云盘下载体验VIP、数据查看体验VIP。当VIP体验到期后,如果有效管理此类信息。即便对于正式 VIP用户也存在对应的管理方式。
网站会定期开启投票、讨论,限时进行,逾期作废。如何有效管理此类过期信息。
对于基于时间线限定的任务处理,将处理时间记录为score值,利用排序功能区分处理的先后顺序
Tips 14:
任务/消息权重设定应用
当任务或者消息待处理,形成了任务队列或消息队列时,对于高优先级的任务要保障对其优先处理,如何实现任务权重管理。
如果权重条件过多时,需要对排序score值进行处理,保障score值能够兼容2条件或者多条件,例如外贸订单优先于国内订单,总裁订单优先于员工订单,经理订单优先于员工订单
Tips 15:
Tips 1: redis用于控制数据库表主键id,为数据库表主键提供生成策略,保障数据库表的主键唯一性