
目 录
目录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1 第一部分数据库性能概述 5
1.1 性能概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 什么是性能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 理解性能指标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.2.1 性能指标模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.2.2 数据库时间模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 理解可扩展性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.3.1 什么是可扩展性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.3.2 系统可扩展性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.3.3 影响可扩展性的因素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.4 性能问题产生模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.5 如何管理性能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.5.1 被动性能管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.5.2 主动性能管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 新系统性能规划(仅供参考) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.1 整体过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.2 系统体系架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2.1 硬件组件和软件组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2.1.1 硬件组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2.1.2 软件组件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.2.2 根据需要合理配置系统结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.3 应用程序设计原则 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.3.1 应用程序设计的简单性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.3.2 数据建模 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.3.3 表和索引的设计 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.3.3.1 将列追加到索引 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.3.3.2 使用其他索引类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.3.3.3 查找索引的成本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.3.3.4 对索引中的列排序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.3.4 使用视图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.3.5 SQL 执行效率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.2.3.6 应用开发趋势 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.4 工作负载测试,建模及实施 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.2.4.1 确定数据大小 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2.4.2 估计负载量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2.4.3 应用建模 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2.4.4 测试,调试,验证设计 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1
评论