首先,提个问题:是否千万级的表就一定得优化?
答案是:否!
大表的性能差,是因为大小超过配置的Innodb buffer size从而产生了磁盘IO。如果一个大表行数过千万,但是大小并不超过Innodb buffer size,那么表的性能不见得就很差。
所以,这里说的"千万级数据表",指的是大小超过Innodb buffer size的表。
优化思路:
1、索引优化
2、针对读多写少的表开启query cache(谨慎开启:https://dinglin.iteye.com/blog/1625195)
3、应用层加缓存
4、读写分离
5、水平分表
6、垂直分表(拆服务)
7、搜索引擎

博客探讨千万级数据表是否一定需优化,指出大表性能差是因大小超Innodb buffer size产生磁盘IO,若未超则性能未必差。这里的千万级表指超该大小的表,并给出索引优化、开启query cache、应用层加缓存等优化思路。
1698

被折叠的 条评论
为什么被折叠?



