你当前所在的位置:首页 > 企业管理培训 > 企业内训 > Oracle 10g应用优化-上海工慧企业管理
学习对象
数据库管理人员,资深开发人员,项目经理,对数据库应用调优有兴趣的IT人员等
课程目标
1、掌握数据库应用优化的思路和技巧
2、掌握多种优化工具的使用和优化方法
3、能够进行SQL性能分析
4、掌握各种优化算法的优劣,根据应用需求选择合适的算法等
【课程背景】
80%以上的性能问题与应用的架构及SQL性能相关,如果能在项目前期对系统架构进行合理的规划设计,在开发阶段写出良好的SQL代码,在数据库中部署合理的索引,将极大地减少数据库的资源消耗,提高应用响应时间,增大数据库的吞吐量。不论是系统架构,还是代码开发,或者SQL算法的选择,这些性能点的合理优化都需要对数据库底层原理有深入的理解、经验和判断力。本课程正是希望解决这样的问题,课程重点放在数据库优化的原理和实践上,课程由浅入深的详细讲解了Oracle数据库应用优化的方法和工具,同时针对实际案例进行分析和指导。
课程内容
第一天引子 简单SQL的性能误区
讲述一些SQL使用技巧,描述开发人员容易出错或者低效的一些SQL语句写法,通过案例分析提高是开发人员SQL的书写能力。下面的SQL部分重点讲解一些有多年开发经验的开发人员也会忽略的SQL技巧和性能要点。
1、简单SQL的性能误区
一些SQL使用技巧,错误或者低效的一些SQL语句写法,通过Oracle内部性能优化工具展示不为我们所关注的那些性能隐患
2、集合操作、GROUP BY 子句的增强以及一些影响性能的高级子查询
3、数据操作的性能影响
了解影响DML操作的性能因素,分析锁竞争对DML性能下降的影响,以及其他可能带来DML慢的原因。
培训主题一、应用优化思路与高级优化工具
1、数据库应用调优概述
海量数据库优化的思路和一些误区
优化的三个阶段以及各阶段的步骤和方法
了解整个系统构建过程中各部分对性能的影响以及有哪些可以优化的部分,尤其对海量数据库的架构设计、E-R模型设计及开发中的一些性能要点进行了详细说明
大数据量数据库不同类型应用优化的方向和方法,根据应用需求确定优化方向,对大数据访问及高并发访问的应用优化方向进行分析
优化的基本步骤、方法以及注意事项
第二天2、优化工具介绍
性能优化的七种武器,通过各种案例学习如何通过Oracle提供给我们的工具发现、分析、解决性能问题:
诊断性能问题的帮手:STaTSPACk与AWR/ADDM,提供性能信息收集与性能差异报告,通过结合客户的性能差异报告掌握如何进行性能问题分析与诊断
培训主题二、数据库应用优化——应用存储优化
1、从性能的角度分析如何用好你的表:
怎么选择表
从作用上分析如何选择永久表和临时表
从数据访问需求上,根据分区表、索引组织表、聚簇表或者普通表对性能的影响,选择合理的数据存储方法
从数据特征上考虑字段类型选择
从竞争和I/O需求上考虑表的存储参数和属性设置
怎么管理表
松散表的判断方法,解决松散表的move与shrink的执行效率和性能影响
培训主题三、数据库应用优化——应用SQL优化
1、SQL语句的处理过程
了解Sql语句的优化思路和优化重点
分析Oracle数据库中SQL语句的处理过程,了解SQL解析、执行、取操作的每个环节对性能的影响,掌握SQL硬解析对性能的影响和优化硬解析的方法
2、CBO和RBO介绍
了解决定SQL语句执行计划生成方法的优化模式,并选择适合的优化模式以便得到正确的执行计划,对比CBO、RBO各自适合的场景
3、优化SQL语句的相关工具
了解数据库Sql语句的优化方法,通过相关工具定位具有高影响力的SQL,收集SQL语句的统计信息和执行计划,分析执行计划的正确性,对比统计信息,选择最佳执行计划。涉及到的SQL优化工具包括:
提供SQL优化集的Statspack与awr
使用Explain plan分析执行计划
通过autotrace分析故障语句的执行计划和统计信息
通过Sql trace查找有性能问题的SQL语句
通过10g的Sql tunning advise自动分析语句性能
通过10g的Sql Access advise自动分析语句算法
第三天4、数据访问方法(大量案例演示):
介绍执行计划中的数据访问方法以及各自的优缺点
分析索引加速查询的原理,确定索引与全表扫描到底如何选择
确定哪些因素影响索引访问的性能
索引适合建立在哪些字段上
B*tree索引与位图索引的选择
DML操作对索引的影响,以及如何设置索引的存储参数和属性
索引无效的原因以及如何书写语句以便选择正确的执行计划
如何通过索引加快COUNT
对比hash join、nest loop、sort MErge这三种夺表连接算法的优劣
对物化视图进行分析,确定这种最快的数据访问方法的特点和使用场景,并通过案例说明这些数据访问方法对性能的影响
5、收集统计信息
通过analyze或者dbms_stats方法收集统计信息
理解各种统计信息对性能有何种影响
分析绑定变量与统计信息的关系,确定使用绑定变量优化解析最适合的场景
6、应用或者强制执行计划)
通过对语句的修改影响RBO下的执行计划,通过修改参数值影响CBO生成的执行计划,通过hints直接强制执行计划
7、Sql语句优化经验
将实际经验中总结出的Sql使用方法和经验进行讲解,让大家了解什么样的Sql语句是比较好的语句,以及如何判断语句性能的问题
Oracle 10g应用优化-上海工慧企业管理
信息来源:工慧企业管理服务外包网更新时间:2017-5-31浏览量:258字体大小:大 中 小
学习对象
数据库管理人员,资深开发人员,项目经理,对数据库应用调优有兴趣的IT人员等
课程目标
1、掌握数据库应用优化的思路和技巧
2、掌握多种优化工具的使用和优化方法
3、能够进行SQL性能分析
4、掌握各种优化算法的优劣,根据应用需求选择合适的算法等
【课程背景】
80%以上的性能问题与应用的架构及SQL性能相关,如果能在项目前期对系统架构进行合理的规划设计,在开发阶段写出良好的SQL代码,在数据库中部署合理的索引,将极大地减少数据库的资源消耗,提高应用响应时间,增大数据库的吞吐量。不论是系统架构,还是代码开发,或者SQL算法的选择,这些性能点的合理优化都需要对数据库底层原理有深入的理解、经验和判断力。本课程正是希望解决这样的问题,课程重点放在数据库优化的原理和实践上,课程由浅入深的详细讲解了Oracle数据库应用优化的方法和工具,同时针对实际案例进行分析和指导。
课程内容
第一天引子 简单SQL的性能误区
讲述一些SQL使用技巧,描述开发人员容易出错或者低效的一些SQL语句写法,通过案例分析提高是开发人员SQL的书写能力。下面的SQL部分重点讲解一些有多年开发经验的开发人员也会忽略的SQL技巧和性能要点。
1、简单SQL的性能误区
一些SQL使用技巧,错误或者低效的一些SQL语句写法,通过Oracle内部性能优化工具展示不为我们所关注的那些性能隐患
2、集合操作、GROUP BY 子句的增强以及一些影响性能的高级子查询
3、数据操作的性能影响
了解影响DML操作的性能因素,分析锁竞争对DML性能下降的影响,以及其他可能带来DML慢的原因。
培训主题一、应用优化思路与高级优化工具
1、数据库应用调优概述
海量数据库优化的思路和一些误区
优化的三个阶段以及各阶段的步骤和方法
了解整个系统构建过程中各部分对性能的影响以及有哪些可以优化的部分,尤其对海量数据库的架构设计、E-R模型设计及开发中的一些性能要点进行了详细说明
大数据量数据库不同类型应用优化的方向和方法,根据应用需求确定优化方向,对大数据访问及高并发访问的应用优化方向进行分析
优化的基本步骤、方法以及注意事项
第二天2、优化工具介绍
性能优化的七种武器,通过各种案例学习如何通过Oracle提供给我们的工具发现、分析、解决性能问题:
诊断性能问题的帮手:STaTSPACk与AWR/ADDM,提供性能信息收集与性能差异报告,通过结合客户的性能差异报告掌握如何进行性能问题分析与诊断
培训主题二、数据库应用优化——应用存储优化
1、从性能的角度分析如何用好你的表:
怎么选择表
从作用上分析如何选择永久表和临时表
从数据访问需求上,根据分区表、索引组织表、聚簇表或者普通表对性能的影响,选择合理的数据存储方法
从数据特征上考虑字段类型选择
从竞争和I/O需求上考虑表的存储参数和属性设置
怎么管理表
松散表的判断方法,解决松散表的move与shrink的执行效率和性能影响
培训主题三、数据库应用优化——应用SQL优化
1、SQL语句的处理过程
了解Sql语句的优化思路和优化重点
分析Oracle数据库中SQL语句的处理过程,了解SQL解析、执行、取操作的每个环节对性能的影响,掌握SQL硬解析对性能的影响和优化硬解析的方法
2、CBO和RBO介绍
了解决定SQL语句执行计划生成方法的优化模式,并选择适合的优化模式以便得到正确的执行计划,对比CBO、RBO各自适合的场景
3、优化SQL语句的相关工具
了解数据库Sql语句的优化方法,通过相关工具定位具有高影响力的SQL,收集SQL语句的统计信息和执行计划,分析执行计划的正确性,对比统计信息,选择最佳执行计划。涉及到的SQL优化工具包括:
提供SQL优化集的Statspack与awr
使用Explain plan分析执行计划
通过autotrace分析故障语句的执行计划和统计信息
通过Sql trace查找有性能问题的SQL语句
通过10g的Sql tunning advise自动分析语句性能
通过10g的Sql Access advise自动分析语句算法
第三天4、数据访问方法(大量案例演示):
介绍执行计划中的数据访问方法以及各自的优缺点
分析索引加速查询的原理,确定索引与全表扫描到底如何选择
确定哪些因素影响索引访问的性能
索引适合建立在哪些字段上
B*tree索引与位图索引的选择
DML操作对索引的影响,以及如何设置索引的存储参数和属性
索引无效的原因以及如何书写语句以便选择正确的执行计划
如何通过索引加快COUNT
对比hash join、nest loop、sort MErge这三种夺表连接算法的优劣
对物化视图进行分析,确定这种最快的数据访问方法的特点和使用场景,并通过案例说明这些数据访问方法对性能的影响
5、收集统计信息
通过analyze或者dbms_stats方法收集统计信息
理解各种统计信息对性能有何种影响
分析绑定变量与统计信息的关系,确定使用绑定变量优化解析最适合的场景
6、应用或者强制执行计划)
通过对语句的修改影响RBO下的执行计划,通过修改参数值影响CBO生成的执行计划,通过hints直接强制执行计划
7、Sql语句优化经验
将实际经验中总结出的Sql使用方法和经验进行讲解,让大家了解什么样的Sql语句是比较好的语句,以及如何判断语句性能的问题