Hive企业级调优[3]—— Explain 查看执行计划

Explain 查看执行计划

Explain 执行计划概述

EXPLAIN 命令呈现的执行计划由一系列 Stage 组成。这些 Stage 之间存在依赖关系,每一个 Stage 可能对应一个 MapReduce Job 或者一个文件系统的操作等。如果某 Stage 对应了一个 MapReduce Job,则该 Job 在 Map 端和 Reduce 端的计算逻辑分别由 Map Operator Tree 和 Reduce Operator Tree 描述。Operator Tree 包含了一系列 Operator,每个 Operator 表示 Map 或 Reduce 阶段中的一个单独逻辑操作,如 TableScan Operator、Select Operator、Join Operator 等。

常见的 Operator 及其作用如下:

  • TableScan:表扫描操作,通常在 Map 端的第一个操作是表扫描。
  • Select Operator:选取操作。
  • Group By Operator:分组聚合操作。
  • Reduce Output Operator:输出到 Reduce 操作。
  • Filter Operator:过滤操作。
  • Join Operator:Join 操作。
  • File Output Operator:文件输出操作。
  • Fetch Operator:客户端获取数据操作。
基本语法
sql 复制代码
EXPLAIN [FORMATTED | EXTENDED | DEPENDENCY] query-sql

其中,FORMATTEDEXTENDEDDEPENDENCY 是可选关键字,各自的作用如下:

  • FORMATTED:将以 JSON 字符串形式输出执行计划。
  • EXTENDED:输出执行计划中的额外信息,通常是读写文件名等信息。
  • DEPENDENCY:输出执行计划中读取的表及分区。
案例实操

1)查看以下 SQL 语句的执行计划:

sql 复制代码
hive (default)> explain
select
    user_id,
    count(*)
from order_detail
group by user_id;

2 )执行计划如下图

相关推荐
簌簌曌42 分钟前
CentOS7 + JDK8 虚拟机安装与 Hadoop + Spark 集群搭建实践
大数据·hadoop·spark
Theodore_10223 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
Aurora_NeAr3 小时前
Apache Spark详解
大数据·后端·spark
IvanCodes5 小时前
六、Sqoop 导出
大数据·hadoop·sqoop
workflower5 小时前
以光量子为例,详解量子获取方式
数据仓库·人工智能·软件工程·需求分析·量子计算·软件需求
代码匠心5 小时前
从零开始学Flink:揭开实时计算的神秘面纱
java·大数据·后端·flink
weixin_472339466 小时前
Doris查询Hive数据:实现高效跨数据源分析的实践指南
数据仓库·hive·hadoop
归去_来兮7 小时前
图神经网络(GNN)模型的基本原理
大数据·人工智能·深度学习·图神经网络·gnn
TDengine (老段)8 小时前
TDengine 支持的平台汇总
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据