分库分表方案

  • 为什么分库分表?
    单库单表性能时延扛不住,或者存储空间扛不住
  • 分库和分表有区别吗?
    存在批量查询的情况下,分表只能徒增单库的磁盘IO和存储空间,不能解决性能时延,也不能解决存储空间的问题,只能选择分库
  • 分库分表有什么技术方案吗?
    双写法:服务双写新旧库,数据迁移,数据校验
    追日志法:服务变更写日志表,数据迁移,数据校验
  • 如何可以让业务不需要迁移数据
    取模法,流量分布均匀,但是扩展需要迁移数据
    范围法,流量分布不均匀,存在热点数据问题,但是可以无限扩展
  • 一些数据指标,辅助分库分表策略
    mysql单机QPS一般在D5机器是5000~10000QPS
    单表一般2000万条为性能最优,实际上过亿数据时延差距不大,0.1跟0.2的区别
    用户库8亿数据为420G存储,一般1亿用户占用50G

推荐阅读更多精彩内容