----
扩展阅读 SparkSQL底层如何执行
RDD 和 SparkSQL 运行时的区别
RDD 的运行流程
大致运行步骤
先将 RDD 解析为由 Stage 组成的 DAG, 后将 Stage... 转为 Task 直接运行
问题
任务会按照代码所示运行, 依赖开发者的优化, 开发者的会在很大程度上影响运行效率
解决办法
创建一个组件, 帮助开发者修改和优化代码, 但这在 RDD 上是无法实现的...在 SparkSQL 中, 开发者的代码即使不够优化, 也会被优化为相对较好的形式去执行
为什么 SparkSQL 提供了这种能力?...Hive 的问题, SparkSQL 使用了一个新的 SQL 优化器替代 Hive 中的优化器, 这个优化器就是 Catalyst, 整个 SparkSQL 的架构大致如下:
1.API 层简单的说就是..., 随着 SparkSQL 的发展, 还会越来越多, 感兴趣的同学可以继续通过源码了解, 源码在 org.apache.spark.sql.catalyst.optimizer.Optimizer
Step