数据库拆分分为两种:水平拆分和垂直拆分。
案例:
简单购物系统暂设涉及如下表:
1.产品表(数据量10w,稳定)
2.订单表(数据量200w,且有增长趋势)
3.用户表 (数据量100w,且有增长趋势)
以mysql为例讲述下水平拆分和垂直拆分,mysql能容忍的数量级在百万静态数据可以到千万。
做垂直拆分:
解决问题:表与表之间的io竞争
不解决问题:单表中数据量增长出现的压力
方案:把产品表和用户表放到一个server上,订单表单独放到一个server上
做水平拆分:
解决问题:单表中数据量增长出现的压力
不解决问题:表与表之间的io争夺