问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Hive SQL语句执行顺序

发布网友 发布时间:2022-10-10 10:46

我来回答

1个回答

热心网友 时间:2023-10-08 16:01

Hive 中 sql 语句的执行顺序如下:

from .. where .. join .. on .. select .. group by .. select .. having .. distinct .. order by .. limit .. union/union all

下面我们通过一个 sql 语句分析下:

上面这条 sql 语句是可以成功执行的,我们看下它在 MR 中的执行顺序:

Map 阶段

Rece 阶段

上面这个执行顺序到底对不对呢,我们可以通过 explain 执行计划来看下,内容过多,我们分阶段来看。

我们看到 Stage-5 是根,也就是最先执行 Stage-5,Stage-2 依赖 Stage-5,Stage-0 依赖 Stage-2。

图中标 ① 处是表扫描操作,注意先扫描的 b 表,也就是 left join 后面的表,然后进行过滤操作(图中标 ② 处),我们 sql 语句中是对 a 表进行的过滤,但是 Hive 也会自动对 b 表进行相同的过滤操作,这样可以减少关联的数据量。

先扫描 a 表(图中标 ① 处);接下来进行过滤操作 idno > '112233'(图中标 ② 处);然后进行 left join,关联的 key 是 idno(图中标 ③ 处);执行完关联操作之后会进行输出操作,输出的是三个字段,包括 select 的两个字段加 group by 的一个字段(图中标 ④ 处);然后进行 group by 操作,分组方式是 hash(图中标 ⑤ 处);然后进行排序操作,按照 idno 进行正向排序(图中标 ⑥ 处)。

首先进行 group by 操作,注意此时的分组方式是 mergepartial 合并分组(图中标 ① 处);然后进行 select 操作,此时输出的字段只有两个了,输出的行数是 30304 行(图中标 ② 处);接下来执行 having 的过滤操作,过滤出 count_user>1 的字段,输出的行数是 10101 行(图中标 ③ 处);然后进行 limit *输出的行数(图中标 ④ 处);图中标 ⑤ 处表示是否对文件压缩,false 不压缩。

*最终输出的行数为 10 行。

通过上面对 SQL 执行计划的分析,总结以下几点:

hive sql执行顺序与mysql执行顺序

Hive SQL 执行顺序如下:先Map阶段:from .. where .. join .. on .. select .. group by 再reduce阶段:select .. having .. distinct .. order by .. limit .. union/union all Mysql 中sql执行顺序如下:from(tableA)->on->join->where -> group by ->having->select->distinct->...

Hive SQL语句执行顺序

Hive 中 sql 语句的执行顺序如下:from .. where .. join .. on .. select .. group by .. select .. having .. distinct .. order by .. limit .. union/union all 下面我们通过一个 sql 语句分析下:上面这条 sql 语句是可以成功执行的,我们看下它在 MR 中的执行顺序:Map 阶段 ...

详解HiveSQL执行计划

查看执行计划的基本方法是在SQL语句前加入关键字`explain`。Hive提供的执行计划信息主要包括以下几点:查看执行计划的命令使用使用语法:在Hive CLI中输入`explain`命令,例如在Hive 2.3.7版本中输入`explain`命令,可获取查询的执行计划。Hive查询的执行流程一个Hive查询会被转换为一个包含多个stage的序列(...

大数据 Hive 类Sql语法大全,Hql Join语法详解

Hive SQL语法是基于MapReduce的底层执行机制,它将HQL语句解析为执行逻辑,通过一系列步骤产生结果。执行流程包括:首先,map阶段通过from加载并筛选表,接着where进行条件过滤,然后select确定输出项,group by阶段进行分组并计算相关函数,map端文件合并后,数据进入reduce阶段进行group by、select和排序,最后...

万字长文详解HiveSQL执行计划

一、前言 Hive SQL执行计划是理解SQL程序执行流程的关键。它揭示了SQL在转换为相应计算引擎执行逻辑的过程,掌握执行逻辑有助于识别程序瓶颈并针对性优化。此外,执行计划能揭示看似等价或不等价的SQL语句,使开发者更精准地进行优化。查看执行计划的基本方法是使用explain命令,只需在查询语句前加上此关键字...

详解HiveSQL执行计划

查看执行计划的命令与参数Hive的`explain`命令用于展示查询的详细执行计划,这对于优化和理解查询性能至关重要。通过在SQL语句前加上`explain`,如:sqlexplain SELECT * FROM table;我们可以得到一个包含多个阶段(Stage)和操作(Operator)的执行逻辑图。执行计划的结构与解读执行计划通常分为stage ...

sql如何查找某一数据在哪一列,并删除这一列?

Hive SQL查询执行顺序为:from、where、group(含聚合)、having、order、select。这意味着聚合语句优先于having子句执行,而where子句执行优先于聚合语句。理解这些查询执行规则对于编写高效SQL语句至关重要。高级查询功能包括SORT/ORDER/CLUSTER/DISTRIBUTE BY。ORDER BY用于对结果进行排序,CLUSTER BY则根据指定...

在shell中使用hiveSQL的注意事项

运行hiveSQL的方式主要有三种:交互式命令行、使用-hive-e方式和使用-hive-f方式。在交互式命令行下,直接在shell中使用hive命令,输入"hive>"进入hive环境,输入hiveSQL进行查询,语句间用英文分号隔开,适合于快速查询或调试较短的SQL语句。使用-hive-e方式时,将SQL语句放入引号内执行,适用于较长的...

hive如何同时执行多段sql

hive sql放到文件当中,之后 hive -f filename执行

如何查看hive的执行计划,并从执行计划中发现性能上的瓶颈?

要查看执行计划,只需在SQL查询前添加“explain”关键字。二、执行计划的用法 使用explain命令查看执行计划,了解底层原理、优化Hive操作和排查数据倾斜等问题。1. 案例解析 (1)Join语句如何处理NULL值?执行查询并查看结果,发现执行计划包含“id is not null”条件,说明在Join时会自动过滤掉关联字段为...

SQL语句执行的顺序 c语言语句执行顺序 select语句执行顺序 c语言双重循环语句执行顺序 if语句执行顺序 if嵌套语句执行顺序 oracle查询语句执行顺序 查询语句的执行顺序 mysql 语句执行顺序
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
文档文件夹可以删除吗? 文件夹中的文件能删除吗? 吃鸡进不去,重启也没用,开了加速器,如图 永劫无间用什么加速器好 好用的加速器推荐 PUBG加速器免费试用 亚服加速器推荐 吃鸡加速器选择 亚服国际服吃鸡加速器推荐 东芝2523ad提示维护怎么清除 请问清朝历皇帝顺序,开国皇帝到最后一个。还有就是年羹尧的妹妹叫什么... 这个外国小女孩是谁?附图 如何激活移动4G备卡 欧洲冠军联赛赛程表 花千骨漫画糖宝是什么时候出现的 花千骨里的糖宝照片,20张,是虫子的照片 攀钢钢钒复权历史最高价格 word里面如何设置分式上面的字体格式 如何办一个幼儿园 中国围棋棋盘有什么样的寓意? 古代围棋规则 逛超市作文450字 紧急求助 为什么电源的作用是能为电流提供自由电子 这句是错误的 还有电场线有什么意思 电源能为电路持续的提供电荷,怎么理解 红警OL手游只知道玩家的名字要怎么才能找到具体坐标? 全兵种及用法详解汇总 红警OL手游有哪些兵种 红警游戏大全(WESTWOOD即时战略游戏) 赶紧的近义词及造句 赶紧造句-用赶紧造句 贷款没扣钱会产生逾期吗 空调氟加多了会有什么问题 于国国王这则故事告诉我们什么道理 哈尔滨绕城高速起点和终点是哪里、全长多少公里 二月二十五哈尔滨高速路况查询 王者荣耀皮肤美化包怎么弄?苹果手机 求达人推荐款好的粉底霜 兰蔻哪款粉底液适合30岁女人用或者哪一款适合我是混合性皮肤 宝宝几个月可以用摇篮 宝宝几个月可以放摇篮 宝宝多大可以用摇篮 中国办的信用卡可以在国外刷吗 比如泰国 我女朋友是离婚的我想写一封情书给她怎么写才能够让她知道我是真心爱他的? 请各位好心人帮我写一份离婚告白书 离婚后我对妻子的告白 感动离婚女人的表白 疫情逾期了如何恢复征信 疫情征信逾期可以消除吗 职场写份好简历的技巧 制作个人简历的九个技巧 让简历别具一格的10个技巧 电视剧拍摄时在镜头前放的一块板子是干什么的?? 主持人万能的串词