知识卡片
分库分表的三大驱动因素
内容
分库分表是三种考虑叠加:一是业务拆分,便于团队分工和独立扩展;二是应对高并发,读多写少先靠加从库加缓存,写入QPS触及瓶颈才需分库分表;三是数据隔离,核心与非核心业务分开避免互相拖累。分库后会连带产生分布式ID、跨维度查询、Join失效等新问题。发散:拆分粒度应服务于最主要的那个原因,而非一刀切。
参考来源
- 位置:第6章《数据库》6.2.1节「为什么要分」(源文件:_epub-src/text/part0026.html)
- 结论依据:原文明确列出分库分表的三个考虑:业务拆分(便于团队分工和扩展)、应对高并发(读多写少可加从库缓存,写多才需分库分表)、数据隔离(核心与非核心业务分开),直接支持卡片对分库分表是三种考虑叠加的论述。
- 原始内容:"分库的目的是做'业务拆分'……第二个考虑是应对高并发。但要针对读多写少,还是读少写多的场景分别讨论……如果是读少写多……这时就要考虑分库分表了。另外一个考虑角度是'数据隔离'。"