您的位置:首页技术文章
文章详情页

使用DB2look重新创建优化器访问计划

【字号: 日期:2023-11-11 13:49:11浏览:5作者:猪猪

步骤 3:当模拟整个数据库时,从生产中收集所有对象的 DDL 信息,并在测试中运行 db2look。

在生产中:db2look -d sample -e -a -m -o db2look.out

在测试中:db2 -tvf db2look.out

为了看到输出结果,可发出:db2look -tvf db2look.out > db2look.results

一旦完成了以上步骤,就请确保在测试中将 dbheap 数据库配置参数设置为与生产中相同的值。

步骤 4:使用 db2exfmt 从测试和生产中获得访问计划,并确保下列内容与生产中的相同:Database Context:----------------Parallelism: NoneCPU Speed: 4.762804e-07Comm Speed: 100Buffer Pool size: 128500Sort Heap size: 128Database Heap size: 5120Lock List size: 12250Maximum Lock List: 10Average Applications: 4Locks Available: 78400Package Context:---------------SQL Type: DynamicOptimization Level: 3Blocking: Block All CursorsIsolation Level: Cursor Stability---STATEMENT 1 SECTION 201 ----QUERYNO: 1QUERYTAG: CLPStatement Type: SelectUpdatable: NoDeletable: NoQuery Degree: 1

现在,查看访问计划。假如它们是相同的,那么您就成功地重新创建了访问计划。还请注重,您还应查看 db2exfmt 输出结尾以验证表空间配置是匹配的。

示例 4:生产:MPP,4 个逻辑分区/ 16 个物理分区。

测试:MPP,4 个逻辑分区,每个逻辑分区中只有 4 台可用的物理机器。

查询中所涉及的表、视图/MQT。

本示例中,该模拟可能不会准确工作。测试和生产中的分区数目必须相同。然而,您仍可以尝试重新创建,只是它不会正确。

因此,您必须向测试环境添加 16*4=64 个分区,以便重新创建正确。测试环境中不需要 16 台物理机器;即您可以具有 4 台物理机器,每台物理机器具有 16 个逻辑分区。这由您来决定,但总共必须有 64 个逻辑分区,与生产中相同。

标签: DB2 数据库
相关文章: