继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第12天 数据冗余 和范式说再见

Miss圈
关注TA
已关注
手记 32
粉丝 3
获赞 6

课程名称Java架构师-十项全能

课程章节

数据冗余-和范式说再见

主讲老师

姚半仙

课程内容

尽信书不如无书

在互联网场景下往往用大宽表做冗余,不建议使用关联表,最多只允许做一次Join。

对于有复杂关联关系的数据:

  • 用图形数据库存储,解决join关联查询性能问题

  • 数据异构

  • 快照、冗余

http://img.mukewang.com/6324921f0001897d10960598.jpg

数据异构冗余举例:

一条订单记录,会被异构到一个以订单ID维度做分库分表的查询库、以用户ID维度做分库分表的查询库、以订单时间维度做分库分表的查询库,为了满足前端复杂的查询,还需要把订单数据同步到搜索引擎中, 如Solr、opensearch、ES等。数据异构的其实已经有很成熟的结局方案了, 比如Canal,它可以从订单库中将数据同步给不同的存储介质。

http://img3.mukewang.com/632492200001470011960637.jpg

传统场景方案:订单快照通常是订单的历史版本,中间再做一个关联表,关联到商品的历史版本记录中。

互联网场景方案:订单的快照信息,会做一个聚合,冗余大量数据,如营销计算、商品信息、用户信息,冗余到订单库里。业务第一,怎么快怎么来。

 

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP