大数据量表结构设计案例

在处理大数据量的表时,会消耗数据库的大量性能,所以,在设计数据库表时,要考虑到此种现象,将数据库设计的合理合法,来提高数据库性能减小数据库压力。

当表记录太多,如产品,的订单,大量客户等,是数据库访问压力的主要来源,此时,从数据库拆分表的角度来减轻压力,可以采用如下两种方法:

1,对表进行水平分割

水平分割:以该表主键PK的某个值为界限,将该表的记录水平拆分为两个表

2,对表进行垂直分割

垂直分割:表字段太多,按照表字段拆分,将一个表垂直分解为两个表


例:有产品表,数据量为10 w,数据量稳定,

,,,,订单表,数据量为200 w,数据量有增长趋势;

,,,,用户表,数据量为100 w,数据量有增长趋势

方案一:垂直分割,解决了表与表之间的io竞争,未解决单表种数量增长出现的压力

,,,,进一步解决方案:

,,,,,,,,,将产品表和用户表放在一个服务器上;

,,,,,,,,,订单表单独放到一个服务器上

方案二:水平分割,解决了单表种数据量的压力,未解决表与表之间io的竞争

,,,,进一步解决方案:

,,,,,,,,,用户表通过性别拆分为男用户和女用户

,,,,,,,,,订单表拆分成已完成订单和未完成订单

,,,,,,,,,产品表,未完成订单放在一个服务器上

,,,,,,,,,已完成订单和男用户放在一个服务器上

,,,,,,,,,女用户放在一个服务器上(女用户爱购物)


大数据量表结构设计案例