# Schema 与数据类型优化

良好的逻辑设计和物理设计是高性能的基石,应该根据系统将要执行的查询语句来设计 schema,这往往需要权衡各种因素。例如,反范式化的设计可以加快某些类型的查询,但同时可能使另一些类型的查询变慢。MySQL 独有的特性和实现细节对性能的影响也很大。

本章聚焦在索引优化的下一章,覆盖了 MySQL 特有的 schema 设计方面的主题。假设你已经知道如何设计数据库,不会讲解数据库设计方面的入门或则深入内容。主要关注 MySQL 数据库的设计与其他关系型数据库管理系统的区别。

本章是为接下来的两个章节做铺垫。在这三章中,我们将讨论逻辑设计、物理设计和查询执行,以及他们之间的相互作用。这既需要关注全局,也需要专注细节。还需要了解整个系统以便弄清楚各个部分如何相互影响。

在阅读完索引和查询优化章节后,建议再回过头来看看本章,也许会发现本章很有用,很多讨论的议题不能孤立的考虑。