HIVE执行计划(未完)

目录

语法

基本信息

扩展信息

依赖信息

授权信息

参考文章


语法

EXPLAIN [EXTENDED|DEPENDENCY|AUTHORIZATION] query

执行计划一共有三个部分:

  • 这个语句的抽象语法树
  • 这个计划不同阶段之间的依赖关系
  • 对于每个阶段的详细描述

基本信息

在查询sql前面添加EXPLAIN关键字,即可以展示sql基本信息,包含:

  1. 作业的依赖关系图,即STAGE DEPENDENCIES;
  2. 每个作业的详细信息,即STAGE PLANS。

例如sql:

EXPLAIN 
SELECT default_pay_class_name,
	default_sub_pay_class_name,
	COUNT(1)
  FROM mart_fspinno.rpt_maiton_cashier_pay_d
  WHERE partition_date='2020-01-18'
 AND default_pay_class_name='xx'
 GROUP BY 1,2

执行计划如下:

STAGE DEPENDENCIES: 
  Stage-1 is a root stage 
  Stage-0 depends on stages: Stage-1 
 
STAGE PLANS: 
  Stage: Stage-1 
    Map Reduce // 当前的计算引擎,为MR
      Map Operator Tree: // Map阶段操作
          TableScan // 表扫描操作
            alias: rpt_maiton_cashier_pay_d // 表示对表rpt_maiton_cashier_pay_d 进行扫描
            Statistics: Num rows: 4973 Data size: 994632 Basic stats: COMPLETE Column stats: NONE // 预估的统计信息
            Filter Operator // 过滤操作
              predicate: (default_pay_class_name = 'xx') (type: boolean) 
              Statistics: Num rows: 2486 Data size: 497215 Basic stats: COMPLETE Column stats: NONE 
              Select Operator // 列选择,之前操作结果上进行投影
                expressions: default_pay_class_name (type: string), default_sub_pay_class_name (type: string) // 需要投影的列
                outputColumnNames: _col0, _col1 
                Statistics: Num rows: 2486 Data size: 497215 Basic stats: COMPLETE Column stats: NONE 
                Group By Operator // 之前执行结果进行分组聚合
                  aggregations: count(1) 
                  keys: _col0 (type: string), _col1 (type: string) // 分组的列
                  mode: hash 
                  outputColumnNames: _col0, _col1, _col2 
                  Statistics: Num rows: 2486 Data size: 497215 Basic stats: COMPLETE Column stats: NONE 
                  Reduce Output Operator 
                    key expressions: _col0 (type: string), _col1 (type: string) 
                    sort order: ++  // 是否排序 +表示正序,- 表示倒序
                    Map-reduce partition columns: _col0 (type: string), _col1 (type: string) 
                    Statistics: Num rows: 2486 Data size: 497215 Basic stats: COMPLETE Column stats: NONE 
                    value expressions: _col2 (type: bigint) 
      Reduce Operator Tree: // Reduce阶段操作
        Group By Operator 
          aggregations: count(VALUE._col0) 
          keys: KEY._col0 (type: string), KEY._col1 (type: string) 
          mode: mergepartial 
          outputColumnNames: _col0, _col1, _col2 
          Statistics: Num rows: 1243 Data size: 248607 Basic stats: COMPLETE Column stats: NONE 
          File Output Operator 
            compressed: false // 是否压缩
            Statistics: Num rows: 1243 Data size: 248607 Basic stats: COMPLETE Column stats: NONE 
            table: 
                input format: org.apache.hadoop.mapred.TextInputFormat 
                output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat 
                serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe // 序列化与反序列化类型
 
  Stage: Stage-0 
    Fetch Operator 
      limit: -1 
      Processor Tree: 
        ListSink 
 

扩展信息

依赖信息

授权信息

参考文章

发布了28 篇原创文章 · 获赞 4 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/hysfwjr/article/details/104071583