08-02 底层数据设计策略 - 分库分表,热点热数据隔离

文章探讨了关系型数据库在面临大量业务时如何进行伸缩,包括读写分离、缓存和搜索引擎的运用,以及分库分表策略。同时,讨论了数据迁移和扩容的方法,如成倍扩容和增量存量同步。热点数据的管理和防范也是关键,通过预知和动态侦听热点,结合缓存和多级缓存策略来提升系统性能。此外,还涉及到了接口隔离、缓存降级、熔断限流等性能优化手段,以及在面试中设计高并发应用时应考虑的数据层面因素。
摘要由CSDN通过智能技术生成

关系型数据库的伸缩

读写分离

  • 缓存和搜索引擎本质上也是一种读写分离

  • 在这里插入图片描述

  • 商品是典型的读多写少的场景

  • 在这里插入图片描述

  • 在这里插入图片描述

  • 在这里插入图片描述

  • 在这里插入图片描述

分库分表

略知一二

分表

在这里插入图片描述

分库

在这里插入图片描述

  • 业务量大的数据基本都得使用分库分表,不然单表的数据量大之后,性能太差

数据迁移和扩容

成倍扩容
  • 在这里插入图片描述
  • 直接让备库变为主库,实现二变四。
  • 在这里插入图片描述
  • 扩容成倍增加
  • 在这里插入图片描述
增量存量同步
  • 增量同步,存量迁移
  • 在这里插入图片描述
  • 当数据同步好之后,修改路由表

热点数据

热点数据的隔离方案

  • 把访问频次特别高的数据单独抽取出来
  • 热点商品的特征
    • 数量少
    • 访问频次非常高
    • 存储方案
      • 热点散列
      • 热点库
      • 多级缓存:解决秒杀问题的杀手锏

侦听动态热点

  • 识别热点
    在这里插入图片描述

  • 隔离热点

    • 缓存预热
    • 访问单元隔离
    • 数据隔离
    • 接口隔离
  • 性能优化

    • 缓存
    • 降级熔断
    • 限流

面试题

设计一个支撑XXX并发量的应用,从数据层面有什么要考虑的?

  • 底层数据:读写分离 + 集群扩展、备库、异构 + 分库分表

热点数据怎么防范

  • 预知热点:热点库、本地缓存 + 多级缓存
  • 动态热点:热点数据的侦听(接口参数聚合,日志埋点统计) + 通知送达节点

分库分表之后,业务量增加需要扩容,如何处理

分库分表数据的迁移和扩容(备库转主库,2N扩容)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值