课程简介
课程内容:数据库性能评价指标,数据库性能相关的因素,数据处理原理,分析当前的数据库,数据库逻辑设计与性能优化,物理设计与性能优化,优化数据访问性能等内容
本课程阐述性能调优方法论,不仅仅结合案例讲述调优的方法,并且会将原理性内容阐述清楚,让您不仅仅明白How,而且明白Why。
目标收益
课程中的理论和经验来自于在SQLServer顾问过程中实际经验的总结升华,结合实际案例,不仅仅讲述如何进行调优,还阐述调优背后的原理,在课程结束后,在课程中所学到的原理、方法、工具能立刻应用于生产环境从而带来价值。
培训对象
软件设计师、程序员、数据库管理员。对于数据库调优疑问和问题,需要梳理解答的团队和个人,效果最佳。
课程大纲
SQLServer体系结构 |
内容一:典型数据库的运行原理 1.数据库思维与程序开发思维的差异 2.SQLServer整体架构 3.内存分配与管理 4.日志管理 5.事务管理 6.缓存与页面切换 7.SQL查询执行原理 8.相关配置参数 内容二:IO管理 1.I/O基础 2.什么是I/O子系统 3.理解SQLServerI/O模式 4.存储类型 内容三:索引的原理与维护 1.索引的定义 2.索引的结构、填充因子 3.聚集索引和非聚集索引 4.唯一索引和包含列索引 5.过滤索引 6.索引视图 7.索引碎片整理以及索引重建 8.删除从未使用过的索引 9.创建更合适的索引 |
数据库设计 |
内容四:数据库设计方法与原则 1.需求分析 2.模块化设计 3.什么是三范式 4.对象命名规范 5.设计出数据库、表、视图和其他数据库对象 6.数据的一致性原则 7.使用数据库设计工具 8.设计之前考虑性能问题 内容五:如何设计优秀的数据库 1.数据类型的选择 2.数据库逻辑设计和物理设计的规范化 3.合理的冗余 4.主键的设计 5.外键的设计 6.字段的设计 7.数据库物理存储和环境的设计 8.系统设计 9.索引的设计 |
SQLServer性能调优 |
内容六:读懂执行计划 1.执行计划的捕捉 2.读懂执行计划 3.逻辑执行计划与物理执行计划 4.执行计划的分类 5.扫描和查找类操作 6.连接类操作 7.Spools类操作 内容七:SQL语句的改进 1.只返回需要的数据 2.尽量少做重复的工作 3.注意事务和锁 4.注意临时表和表变量的用法 5.子查询的用法 6.慎用游标 7.尽量使用索引 8.注意连接条件的写法 9.其他需要注意的地方 内容八:系统调优 1.TempDB的角色以及调优 2.定期转移不需要的历史数据 3.解决死锁和阻塞 4.多表JOIN考虑临时表 内容九:事务和锁的基本概念 1.隔离等级的概念 2.高峰的并发访问 3.大数据量的联合查询和统计 4.长事务处理 5.大数据容量的数据操作(查询,更新,修改,删除)性能 内容十:性能调优方法论 1.性能的关键概念 2.影响SQLServer性能的因素 3.是否存在资源瓶颈 4.分析数据库正在发生的事情 5.分析数据库已经发生的事情 6.调优成本高昂的查询语句 7.SQLServer性能调优工具与服务端跟踪 内容十一:常见性能模式 1.整体问题模式 2.IO问题模式 3.并发问题模式 4.内存问题相关模式 5.TempDB问题模式 6.CPU问题模式 7.应用程序设计相关模式 8.执行计划质量相关模式 |
SQLServer体系结构 内容一:典型数据库的运行原理 1.数据库思维与程序开发思维的差异 2.SQLServer整体架构 3.内存分配与管理 4.日志管理 5.事务管理 6.缓存与页面切换 7.SQL查询执行原理 8.相关配置参数 内容二:IO管理 1.I/O基础 2.什么是I/O子系统 3.理解SQLServerI/O模式 4.存储类型 内容三:索引的原理与维护 1.索引的定义 2.索引的结构、填充因子 3.聚集索引和非聚集索引 4.唯一索引和包含列索引 5.过滤索引 6.索引视图 7.索引碎片整理以及索引重建 8.删除从未使用过的索引 9.创建更合适的索引 |
数据库设计 内容四:数据库设计方法与原则 1.需求分析 2.模块化设计 3.什么是三范式 4.对象命名规范 5.设计出数据库、表、视图和其他数据库对象 6.数据的一致性原则 7.使用数据库设计工具 8.设计之前考虑性能问题 内容五:如何设计优秀的数据库 1.数据类型的选择 2.数据库逻辑设计和物理设计的规范化 3.合理的冗余 4.主键的设计 5.外键的设计 6.字段的设计 7.数据库物理存储和环境的设计 8.系统设计 9.索引的设计 |
SQLServer性能调优 内容六:读懂执行计划 1.执行计划的捕捉 2.读懂执行计划 3.逻辑执行计划与物理执行计划 4.执行计划的分类 5.扫描和查找类操作 6.连接类操作 7.Spools类操作 内容七:SQL语句的改进 1.只返回需要的数据 2.尽量少做重复的工作 3.注意事务和锁 4.注意临时表和表变量的用法 5.子查询的用法 6.慎用游标 7.尽量使用索引 8.注意连接条件的写法 9.其他需要注意的地方 内容八:系统调优 1.TempDB的角色以及调优 2.定期转移不需要的历史数据 3.解决死锁和阻塞 4.多表JOIN考虑临时表 内容九:事务和锁的基本概念 1.隔离等级的概念 2.高峰的并发访问 3.大数据量的联合查询和统计 4.长事务处理 5.大数据容量的数据操作(查询,更新,修改,删除)性能 内容十:性能调优方法论 1.性能的关键概念 2.影响SQLServer性能的因素 3.是否存在资源瓶颈 4.分析数据库正在发生的事情 5.分析数据库已经发生的事情 6.调优成本高昂的查询语句 7.SQLServer性能调优工具与服务端跟踪 内容十一:常见性能模式 1.整体问题模式 2.IO问题模式 3.并发问题模式 4.内存问题相关模式 5.TempDB问题模式 6.CPU问题模式 7.应用程序设计相关模式 8.执行计划质量相关模式 |