SparkSQL的前世今生

来源:互联网 发布:lte数据功能收费吗 编辑:程序博客网 时间:2024/05/21 13:25

SparkSQL的前世今生

标签(空格分隔): spark学习

HiveSQL

早期都是使用hiveSQL,hiveSQL的执行流程:
1. 语法解析
2. 生成逻辑计划
3. 优化
4. 生成物理计划
通过以上流程将hiveSQL语句转换成mapReduce运行在hadoop上的。
技术革新中…

SparkShark

套用hiveSQL的执行流程,只不过将SQL语句装换成RDD运行。shark(同SparkSQL)
1. 语法解析
2. 生成逻辑计划
3. 优化
4. 生成物理计划(Spark)
对于Spark产生的缺点:
* Hive升级了,shark这儿也要被迫的升级
* 自己升级的时候,也要考虑到Hive的版本。
技术革新中…

SparkSQl

大概在2014年7月份时,Spark放弃Shark,开发新的SparkSQL,而shark成为Hive的内容。
SparkSQl实现的效果和shark相类似,只不过不在依赖Hive。

版本的更新和发展

Spark 0.xx
一直在使用shark
Spark 1.0.2
废弃了Shark 出来了一个SparkSQL(在测试阶段)作为apache的顶级项目
Spark 1.3.0
SparkSQL变成正式版本了。(DataFrame)
Spark 1.5.0
提出了钨丝计划(重点优化SparkSQL)
Spark 1.6.0
提出来一个DataSet (只是在测试阶段)
Spark2.0.0
**DataSet 变为了正式的 功能(还有很多对于SparkSQL的优化)
Structured Streaming (测试阶段)**
Spark2.2.0
Structured Streaming (正式版本)

原创粉丝点击