1. 太多的列
MySQL的存储引擎API工作时需要在服务器层和存储引擎层之间通过行缓冲格式拷贝数据,然后在服务器层将缓冲内容解码成各个列。从行缓冲中将解码过的列转换成行数据结构的操作代价是非常高的。
2. 太多的关联
MySQL限制了每个关联操作最多只能有61张表。一个粗略的经验法则,如果希望查询执行得速度快且并发性好,单个查询最好在12个表以内做关联。
MySQL性能优化
本文探讨了MySQL性能优化的两个关键方面:过多的列和过多的关联。对于过多的列,介绍了行缓冲格式拷贝数据和解码操作所带来的高成本;对于过多的关联,则提到了MySQL对关联操作的表数量限制,并给出了一条经验法则来指导如何提高查询的速度和并发性。
1. 太多的列
MySQL的存储引擎API工作时需要在服务器层和存储引擎层之间通过行缓冲格式拷贝数据,然后在服务器层将缓冲内容解码成各个列。从行缓冲中将解码过的列转换成行数据结构的操作代价是非常高的。
2. 太多的关联
MySQL限制了每个关联操作最多只能有61张表。一个粗略的经验法则,如果希望查询执行得速度快且并发性好,单个查询最好在12个表以内做关联。

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