云数据库 GAUSSDB-EXPLAIN:参数说明

时间:2024-11-13 14:46:09

参数说明

  • statement

    指定要分析的SQL语句。

  • ANALYZE boolean | ANALYSE boolean

    显示实际运行时间和其他统计数据。当两个参数同时使用时,在option中排在后面的一个生效。

    取值范围:

    • TRUE(缺省值):显示实际运行时间和其他统计数据。
    • FALSE:不显示。
  • VERBOSE boolean

    显示有关计划的额外信息。

    取值范围:

    • TRUE(缺省值):显示额外信息。
    • FALSE:不显示。
  • COSTS boolean

    包括每个规划节点的估计总成本,以及估计的行数和每行的宽度。

    取值范围:

    • TRUE(缺省值):显示估计总成本和宽度。
    • FALSE:不显示。
  • CPU boolean

    打印CPU的使用情况的信息。需要结合ANALYZE或ANALYSE选项一起使用。

    取值范围:

    • TRUE(缺省值):显示CPU的使用情况。
    • FALSE:不显示。
  • DETAIL boolean

    打印DN上的信息。需要结合ANALYZE或ANALYSE选项一起使用。

    取值范围:

    • TRUE(缺省值):打印DN的信息。
    • FALSE:不打印。
  • NODES boolean

    打印query执行的节点信息。

    取值范围:

    • TRUE(缺省值):打印执行的节点的信息。
    • FALSE:不打印。
  • NUM_NODES boolean

    打印执行中的节点的个数信息。

    取值范围:

    • TRUE(缺省值):打印DN个数的信息。
    • FALSE:不打印。
  • BUFFERS boolean

    包括缓冲区的使用情况的信息。需要结合ANALYZE或ANALYSE选项一起使用。

    取值范围:

    • TRUE:显示缓冲区的使用情况。
    • FALSE(缺省值):不显示。
  • TIMING boolean

    包括实际的启动时间和花费在输出节点上的时间信息。需要结合ANALYZE或ANALYSE选项一起使用。

    取值范围:

    • TRUE(缺省值):显示启动时间和花费在输出节点上的时间信息。
    • FALSE:不显示。
  • PLAN boolean

    是否将执行计划存储在plan_table中。当该选项开启时,会将执行计划存储在plan_table中,不打印到当前屏幕,因此该选项为on时,不能与其他选项同时使用。

    取值范围:

    • TRUE(缺省值):将执行计划存储在plan_table中,不打印到当前屏幕。执行成功返回EXPLAIN SUC CES S。
    • FALSE:不存储执行计划,将执行计划打印到当前屏幕。
  • BLOCKNAME boolean

    是否显示计划的每个操作所处于的查询块。当该选项开启时,会将每个操作所处于的查询块的名字输出在Query Block列上,方便用户获取查询块名字,并使用Hint修改执行计划:

    • TRUE(缺省值):显示计划时,将每个操作所处于的查询块的名字输出在新增列Query Block列上。该选项需要在pretty模式下使用。见指定Hint所处的查询块Queryblock章节。
    • FALSE:不对计划显示产生影响。
  • FORMAT

    指定输出格式。

    取值范围:TEXT,XML,JSON和YAML。

    默认值:TEXT。

  • PERFORMANCE

    使用此选项时,即打印执行中的所有相关信息。下述为部分信息描述:

    • ex c/r:代表平均每行使用cpu周期数,等于(ex cyc)/(ex row)。
    • ex row:执行行数。
    • ex cyc:代表使用的cpu周期数。
    • inc cyc:代表包含子节点使用的总cpu周期数。
    • shared hit:代表算子的share buffer命中情况。
    • loops:算子循环执行次数。
    • total_calls:生成元素总数。
    • remote query poll time stream gather:算子用于侦听各DN数据到达CN的网络poll时间。
    • deserialize time:反序列化所需时间。
    • estimated time:估计时间。
    • Network Poll Time:分布式stream网络通信时,表示libcomm接收侧等待数据耗时。
    • Stream Send time:分布式stream网络通信时,表示libcomm或libpq发送数据耗时。
    • OS Kernel Send time:分布式stream网络通信时,表示操作系统层发送数据耗时,大于0才会显示。
    • Wait Quota time:分布式stream网络通信时,表示libcomm等待对端发送quota流控大小耗时,大于0才会显示。
    • Data Serialize time:分布式stream网络通信时,表示数据序列化时间 。
    • Data Copy time:分布式stream网络通信时,表示数据复制时间,大于0才会显示。
support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0632.html