对 pureXML 应用程序应用 DB2 优化准则
2010-03-22 00:00:00 来源:WEB开发网可以使用以下命令告诉优化器不要使用任何优化配置文件。优化器将通过基于成本的决策返回最佳计划。
db2 "set current optimization profile=''"
各种选项的优先顺序如下所示:
不管使用何种设置,OPTPROFILE 绑定选项适用于所有静态语句。
对于静态语句,CURRENT OPTIMIZATION PROFILE 专用寄存器的值根据以下顺序确定:
应用程序中的最后一个 SET CURRENT OPTIMIZATION PROFILE 语句 [最高优先级]
CURRENTOPTIMIZATIONPROFILE 客户机配置选项,如果已设置的话
OPTPROFILE 绑定选项,如果已设置的话
发出查询
启用所需的概要文件后,用户就可以不加修改地运行他们的工作负载。对于匹配当前概要文件的查询,优化器将尽最大的努力来生成准则所要求的计划。对于不与任何准则匹配的查询,将选择常规的基于成本的访问计划。
检验准则是否得到执行
DB2 Explain 工具对于判断某个概要文件是否成功匹配查询非常有用。在解释输出的 “Profile Information” 部分,指定了合适的优化概要文件名和语句概要文件名。
清单 11. 概要文件信息
OPT_PROF: (Optimization Profile Name)
TPOX.PROFILE1
STMTPROF: (Statement Profile Name)
Listing 3
db2exfmt 输出的 “Profile Information” 部分可以用来检验是否已将正确的优化概要文件和语句概要文件应用到当前的查询。
如果优化器无法应用准则,那么它将返回警告 437,其原因代码为 13:
SQL0437W Performance of this complex query may be sub-optimal. Reason code: "13". SQLSTATE=01602
更多精彩
赞助商链接