提交sql后执行过程

news/2024/11/24 7:58:13/

摘要:

在如今大数据时代,为了提升研发效率各个公司基本都是用sql进行数据开发,那么一条sql在提交后是怎样运行在spark中呢?回答以上问题需要先了解sql执行的主要流程,以及这个流程中每一步骤具体都是做什么的。

主要流程

语法树解析-逻辑分析-语法优化-计划执行

详细拆解如下步骤:

1、Unresolved Logical Plan阶段:此阶段是语法树的解析生成计划,关注查询的方式(什么样的查询,查询数据源在哪里)

2、AnalyzedLogicalPlan阶段:此阶段是通过Hive中元数据对Unresolved Logical Plan中涉及到的数据源Schema信息、地址进行校验,在进行优化(其中涉及到AQE:在shufflemap阶段完毕后 进行后续逻辑计划 物理执行优化的调整,还会涉及启发式规则:谓词下推、列剪裁和常量替换)

3、Optimized plan阶段:此阶段在Transform后的AnalyzedLogicalPlan后,根据规则进行转换,选取近似最优模型生成Physic plan (其中经历了优化Spark Plan(join策略)和生成Physical Plan(EnsureRequirements 添加操作符 排序 shuffle)。

4、Physic plan阶段:此阶段是进行转换RDD,生成DAG调度图。


注意:在生成物理逻辑计划(Physic Plan)后,此时的物理逻辑计划存在多个。Spark内部存在代价模型(CastModule),会对候选计划比对,选取消耗最小的Physic Plan。


http://www.ppmy.cn/news/36703.html

相关文章

0504反常积分-定积分

文章目录1 无穷限的反常积分1.1 定义1.2 计算公式1.3 例题2 无界函数的反常积分2.1 定义2.2 计算公式2.3 例题结语1 无穷限的反常积分 1.1 定义 设函数f(x)在区间[a,∞)上连续,人去t>a,做定积分∫atf(x)dxf(x)在区间[a,\infty)上连续,人去t\gt a,做…

优先级队列和TopK问题

一、优先级队列PriorityQueue 优先级队列是基于堆实现的: 入队:堆的add()方法 出队:按照优先级出队,优先级最高的先出(堆顶元素) 调用堆的extractMax方法,按降序排列输出 查看队顶元素&#xf…

vue3与vue2的区别

文章目录1.性能提升:2.Composition API:3.更好的 TypeScript 支持:4.Teleport 组件:5.其他改进:1.性能提升: Vue3 重写了响应式系统,使得它的性能比 Vue 2 更高。Vue 3 中使用了 Proxy 来代替 …

嵌入式硬件设计与实践(从硬件到产品)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 很多同学会画电路板,也会写固件代码,但是他们做的这项工作很难称之为产品。这中间的原因是多方面的,第一&#…

MySQL-配置优化

目录 🍁连接请求的变量 🍂max_connections 🍂back_log 🍂wait_timeout和interactive_timeout 🍁缓冲区变量 🍂key_buffer_size 🍂query_cache_size 🍂max_connect_errors &#x1f3…

二叉树刷题专练(一)

文章目录前言一、单值二叉树1.题目介绍2.思路3.代码解析二、二叉树的最大深度1.题目介绍2.思路3.代码三、翻转二叉树1.题目介绍2.思路3.代码总结前言 继承以往刷题训练营的风格,文章会采用循序渐进的过程,本篇是二叉树的刷题训练营,所以不会讲…

【创作赢红包】[BJDCTF2020]The mystery of ip

目录 信息收集 模块注入 判断类型 SSTI 信息收集 <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and mediaqueries --><!-- WARNING: Respond.js doesnt work if you view the page via file://--><!--[if lt IE 9]><script src&qu…

Mybatis+Mysql 实现向下递归查询

介绍 说到递归查询&#xff0c;大家可以想到的技术实现方式主要如下几种&#xff1a; 1、各种主流应用开发语言本身通过算法实现 2、各种数据库引擎自身提供的算法实现 本文提到主要是针对第二种和第一种的结合 主要技术栈 1、ORM&#xff1a;Mybatis 2、DB&#xff1a;MyS…