当前位置: 首页 > article >正文

Hive查询计划

1、EXTENDED 语句会在执行计划中产生关于算子(Operator)的额外信息,这些信息都是典型的物理信息,如文件名称等

EXPLAIN [EXTENDED|CBO|AST|DEPENDENCY|AUTHORIZATION|LOCKS|VECTORIZATION|ANALYZE] query

最外层开始,包含两个大的部分:

stage dependencies:各个stage之间的依赖性

stage plan:各个stage的执行计划

(1)TableScan:表扫描操作,map端第一个操作肯定是加载表,所以就是表扫描操作,常见的属性:

alias:表名称;

Statistics:表统计信息,包含表中数据条数,数据大小等;

(2)Select Operator:选取操作,常见的属性 :

expressions:需要的字段名称及字段类型;

outputColumnNames:输出的列名称;

Statistics:表统计信息,包含表中数据条数,数据大小等;

(3)Group By Operator:分组聚合操作,常见的属性:

aggregations:显示聚合函数信息;

 mode:聚合模式,值有;

hash:随机聚合,就是hash partition;

partial:局部聚合;

final:最终聚合;

keys:分组的字段,如果没有分组,则没有此字段;

outputColumnNames:聚合之后输出列名;

Statistics:表统计信息,包含分组聚合之后的数据条数,数据大小等。

(4)Reduce Output Operator:输出到reduce操作,常见属性:

sort order:值为空 不排序;值为 + 正序排序,值为 - 倒序排序;

值为 ± 排序的列为两列,第一列为正序,第二列为倒序.

(5)Filter Operator:过滤操作,常见的属性:

predicate:过滤条件,如sql语句中的where id>=1,则此处显示(id >= 1);

(6)Map Join Operator:join 操作,常见的属性:

condition map:join方式 ,如Inner Join 0 to 1 Left Outer Join0 to 2 keys: join 的条件字段;

outputColumnNames:join 完成之后输出的字段;

Statistics:join 完成之后生成的数据条数,大小等。

(7)File Output Operator:文件输出操作,常见的属性:

compressed:是否压缩;

table:表的信息,包含输入输出文件格式化方式,序列化方式等。

(8)Fetch Operator 客户端获取数据操作,常见的属性:

limit,值为 -1 表示不限制条数,其他值为限制的条数。

2、explain dependency的用法

explain dependency用于描述一段SQL需要的数据来源,输出是一个json格式的数据,里面包含以下两个部分的内容:

input_partitions:描述一段SQL依赖的数据来源表分区,里面存储的是分区名的列表,如果整段SQL包含的所有表都是非分区表,则显示为空。

input_tables:描述一段SQL依赖的数据来源表,里面存储的是Hive表名的列表。

3、explain authorization 的用法

通过explain authorization可以知道当前SQL访问的数据来源(INPUTS)和数据输出(OUTPUTS),以及当前Hive的访问用户 (CURRENT_USER)和操作(OPERATION)。

原文地址:https://blog.csdn.net/qq_61645895/article/details/135990955
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/299813.html

相关文章:

  • 编程技巧:VUE 实现接口返回数据的流式处理
  • 景联文科技:以精准标注赋能AI未来,打造高质量数据基石
  • Spring Boot中使用Flyway进行数据库迁移
  • STM32:迎接汽车与AI时代MCU新挑战
  • 新用户冷启动阶段使用的推荐算法策略
  • 读取本地excel并生成map,key为第一列,value为第二列
  • 基于ts写法的一些 项目中会有所用到的功能函数
  • 助力汽车零部件产业发展,2025 第十二届广州国际汽车零部件加工技术及汽车模具展览会与您相约“羊城”广州
  • 未来数据中心网络的创新光互连解决方案
  • css 个人喜欢的样式 速查笔记
  • OSPFv2几类LSA、路由过滤、邻居建立
  • 在Ubuntu上使用阿里源安装docker
  • 基于 NIM 建构多模态 AI-Agent (代码解析)
  • 光影漫游者:沉浸式科技空间,打造未来体验—轻空间
  • 什么是边缘案例测试?如何查找并确定优先级
  • TCP协议多进程多线程并发服务器
  • .iso文件怎么打开?
  • 番外--自由切换java-jdk版本
  • Linux网络——socket编程与UDP实现服务器与客户机通信
  • GDB 查看汇编
  • P2858 [USACO06FEB] Treats for the Cows G/S 题解
  • # 键盘字母上有下标数字,输入时怎么一键去掉,关闭键盘上的下标数字。‌
  • String 的 replace replaceAll 方法 —— 将字符串中所有中文逗号替换为英文逗号
  • C/C++——野指针处理
  • 二叉树(中)
  • 自定义事件分发