Oracle DB通过SQL优化管理性能(三)
2014-11-24 14:36:27
·
作者:
·
浏览: 3
使用“Advisor Central(指导中心)”页可以列出所有已完成的SQL 访问指导任务。选择要查看建议的任务,然后单击“View Result (查看结果)”按钮。使用“Results for Task(任务结果)”的“Summary (概要)”页,可以访问指导查找结果的概览。该页中给出了图表和统计信息,提供了建议可能对整体工作量性能和查询执行时间产生的改进。使用该页可以显示语句计数和建议操作计数。
要查看指导任务结果的其它方面,可单击该页上其它三个选项卡之一:“Recommendations(建议)”、“SQL Statements(SQL 语句)”或“Details (详细资料)”。
“Recommendations(建议)”页中提供了一个图表和一个表,其中按建议对整个工作量总开销的改进百分比显示顶级建议。顶级建议对总体性能的改进幅度最大。
单击“Show SQL(显示SQL )”按钮,可以查看为所选建议生成的SQL 脚本。在表中单击相应的建议标识符,可以查看实施建议所需执行的操作列表。在“Actions(操作)”
页上,可以查看实施操作需要执行的所有相应SQL 语句。对于不希望实施的建议,请使对应的复选框处于未选中状态。然后,单击“Schedule Implementation(安排实施)”按钮来实施保留的操作。此步骤以调度程序作业的形式执行。
目标用户:DBA、QA、应用
程序开发人员
帮助预测系统更改对SQL 工作量响应时间的影响
构建不同版本的SQL 工作量性能数据(即SQL 执行计划和执行统计信息)
以串行方式执行SQL(不考虑并发)
分析性能差异
针对单个SQL 提供细粒度性能分析
与SQL 优化指导相集成以优化回归
Oracle Database 11 g 包括SQL 性能分析程序,该工具可以准确地评估更改对构成工作量的SQL 语句的影响。SQL 性能分析程序有助于预测潜在的更改对SQL 查询工作量的性能影响。此功能可为DBA 提供有关SQL 语句性能的详细信息,如执行前后的统计信息,以及性能有所提高或降低的语句。这样您便可以(例如)在测试环境中进行更改,以确定
数据库的升级是否会改进工作量性能。
SQL 性能分析程序可用于预测和防止任何影响SQL 执行计划结构的
数据库环境更改所带来的潜在性能问题。这些更改可包括(但不限于)以下任何更改:
数据库升级
实施优化建议
方案更改
收集统计信息
更改数据库参数
更改操作系统和硬件
可以使用SQL 性能分析程序分析最复杂的环境更改所导致的SQL 性能变化。随着应用程序在开发生命周期中的推进,数据库应用程序开发人员可以测试对方案、数据库对象和重写应用程序的更改,以减轻任何潜在的性能影响。
SQL 性能分析程序还可以比较SQL 性能统计信息。
可以通过
Oracle Enterprise Manager 或使用DBMS_SQLPA程序包访问SQL 性能分析程序。
1. 捕获生产环境的SQL 工作量。
2. 将SQL 工作量传输至测试
系统。
3. 构建“更改前”性能数据。
4. 进行更改。
5. 构建“更改后”性能数据。
6. 比较步骤3 和步骤5 的结果。
7. 优化回归的SQL。
1. 收集SQL:在此阶段中,将收集代表生产系统中的 SQL 工作量的SQL 语句集。
2. 传输:必须将得到的工作量结果传输到测试系统。将 STS 从生产系统中导出,然后再导入测试系统。
3. 计算“之前版本”性能:在进行任何更改之前,先执行 SQL 语句,收集评估未来更改对工作量性能可能产生的影响所需的基线信息。
4. 进行更改:获得了之前版本数据后,即可实施计划的更改,然后开始查看对性能的影响。
5. 计算“之后版本”性能:在数据库环境中进行了更改之后,执行此步骤。SQL 工作量中的每个语句都在虚拟执行模式下运行(仅收集统计信息),收集与步骤3 所捕获的
相同的信息。
6. 比较和分析SQL 性能:在获得了两个版本的 SQL 工作量性能数据后,可以比较之后与之前版本的数据,进行性能分析。
7. 优化回归的SQL:在此阶段中,已经准确地确认了哪些SQL 语句在进行数据库更改时可能导致性能问题。你可以使用任何一种数据库工具来优化系统。在实施了任何优
化操作后,应重复该过程来创建新的之后版本数据,然后分析性能差异以确保新的性能是可接受的。
将SQL 优化指导用于:
– 确定使用资源最多的 SQL 语句
– 优化使用资源最多的 SQL 语句
使用SQL 访问指导优化工作量