WEB开发网
开发学院数据库DB2 数据架构师:DB2 数据仓库性能,第 2 部分:寻找有... 阅读

数据架构师:DB2 数据仓库性能,第 2 部分:寻找有问题的 SQL 查询并进行调优

 2009-11-16 00:00:00 来源:WEB开发网   
核心提示:首要问题:选择目标在进行查询调优时,不但要追求良好的性能,数据架构师:DB2 数据仓库性能,第 2 部分:寻找有问题的 SQL 查询并进行调优,还要确保做正确的事,您很可能希望先调整长时间运行的查询,DB2 管理员可以使用 DB2 9 引入的管理视图(这些视图的高层限定词是 SYSIBMADM;可以通过 DB2 9 f

首要问题:选择目标

在进行查询调优时,不但要追求良好的性能,还要确保做正确的事。您很可能希望先调整长时间运行的查询,但是这些查询不一定是 “问题” 查询。如果一个查询会频繁地执行,而且用户期望包含它的过程在一两秒内完成,那么即使它的运行时间只有 10 秒,也会引起用户的抱怨。

对于判断什么地方最需要调优,最好的依据往往是 “用户的声音”。如果用户没有什么抱怨,那么可以花时间调整那些运行时间(和/或 CPU 时间)长和执行频率高的查询。

市场上有一些工具可以帮助选择查询调优目标(IBM 提供的产品包括 DB2 Query Monitor for z/OS 和 DB2 Performance Expert for Linux, UNIX, and Windows)。但是,可以从 DB2 本身获得有助于选择查询调优目标的信息。大型机管理员应该使用 EXPLAIN 语句的 STMTCACHE ALL 选项(这是在 DB2 for z/OS V9 中引入的,对于 V8 通过 APAR PQ88073 补丁提供)。对于动态语句缓存中的每个 SQL 语句,EXPLAIN STMTCACHE ALL 会在 DSN_STATEMENT_CACHE_TABLE 中插入一行。在 DSN_STATEMENT_CACHE_TABLE 中的 40 多列中,记录了查询的语句文本、累积的流逝时间、累积的 CPU 时间和执行次数等信息。这些信息应该有助于寻找可能产生良好的性能调优效果的语句。

在 Linux、UNIX 和 Windows (LUW) 上,DB2 管理员可以使用 DB2 9 引入的管理视图(这些视图的高层限定词是 SYSIBMADM;可以通过 DB2 9 for LUW System Monitoring Guide and Reference 了解这些视图)。其中特别有用的一个视图是 SYSIBMADM.TOP_DYNAMIC_SQL,它包含 STMT_TEXT、AVERAGE_EXECUTION_TIME_S 和 NUM_EXECUTIONS 列。

1 2 3  下一页

Tags:数据 架构 DB

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接