DB2 Access计划图的说明

时间:2012-09-06 07:36:51

标签: db2 db2-luw

我已使用 db2exfmt 实用程序为查询生成了访问计划,但我无法理解。

任何人都可以解释一下访问计划(比如括号中的数字是什么,/ ----- + ------ \等)

    Access Plan:
    -----------
    Total Cost:    15.1619
    Query Degree:  1

          Rows 
         RETURN
         (   1)
          Cost 
           I/O 
            |
            3 
         HSJOIN
         (   2)
         15.1619 
            2 
     /-----+------\
    4                3 
 TBSCAN           TBSCAN
 (   3)           (   4)
 7.58097          7.58036 
    1                1 
    |                |
    4                3 
 TABLE: DB2INST1  TABLE: DB2INST1
  TABA             TABB
   Q2               Q1

1 个答案:

答案 0 :(得分:5)

从下往上阅读。每个节点都是为满足查询而完成的操作。 TBSCAN意味着扫描整个表格(通常在您的表格较小时进行)。 HSJOIN是一个'Hash Join' - 使用hashmap连接内存中两个表的行。

让我们看一个节点

          4
       TBSCAN
       (   3)
       7.58097
          1
          |
          4
   TABLE: DB2INST1.TABA

顶部'4'是返回的行数 下一行'TBSCAN'是使用的算法(TBSCAN表示表扫描.HSJOIN表示通过hashmap连接)。在DB2中,这称为“运算符” '(3)'是序列号。您可以将此查询分解为4个步骤 7.58097是在此步骤中执行此查询的累积成本,称为“计时器”。它根据数据库的配置方式进行调整,优化器将选择最小化此成本的访问计划 底部4是I / O方面的操作成本。

您省略了db2exfmt的更多信息。但该图表告诉您DB2将如何执行查询。