https://www.cnblogs.com/xiaowangbangzhu/p/17457604.html
对于MySQL
,InnoDB
存储引擎的话,单表最多可以存储10亿
级数据。但是的话,如果真的存储这么多,性能就会非常差。一般数据量千万级别,B+
树索引高度就会到3
层以上了,查询的时候会多查磁盘的次数,SQL
就会变慢。
阿里巴巴的《Java开发手册》
提出:
1 | 单表行数超过500万行或者单表容量超过2GB,才推荐进行分库分表。 |
---|---|
那我们是不是等到数据量到达五百万,才开始分库分表呢?
1 | 不是这样的,我们应该提前规划分库分表,如果估算3年后,你的表都不会到达这个五百万,则不需要分库分表。 |
---|
MySQL服务器如果配置更好,是不是可以超过这个500万这个量级,才考虑分库分表?
1 | 虽然配置更好,可能数据量大之后,性能还是不错,但是如果持续发展的话,还是要考虑分库分表 |
---|
一般什么类型业务表需要才分库分表?
1 | 通用是一些流水表、用户表等才考虑分库分表,如果是一些配置类的表,则完全不用考虑,因为不太可能到达这个量级。 |
---|