一、分库
1、垂直分库
数据库单库允许存放的数据量是5000W,超过5000w性能直线下降,解决单库这个瓶颈,可以将多个单库多表拆分到多个库中,最好一库一表,十库十表,百库百表。此过程叫做垂直分库
二、分表
1、垂直分表
单表承受量一般是500w~1000w,超过区间,性能下降。解决问题途径:根据表子段分类,不常用,数据量大等字段进行拆分,此过程叫做垂直分表;
2、水平分表
如果垂直分表之后单表数据量依旧很大,依然存在单表瓶颈,解决问题途径:将数据量水平拆分,也就是水平分表,但是涉及到多表同数据全局主键自增字段重复问题,解决途径是并发量小:使用Redis自增功能获取唯一自增序列; 并发量大: 每张表各自对应一个Redis,八位时间码+表后缀+自增值 = 自增字段id值,比如表user_001中:20190530+001+Redis自增值