【Spark】Spark2.x版新特性
一、API
-
出现新的上下文接口:SparkSession,统一了SQLContext和HiveContext,并且为SparkSession开发了新的流式调用的configuration API
-
统一了DataFrame和DataSet。DataFrame相当于DataSet[Row],以及DataSet的增强聚合API
-
增强了累加器accumulator的功能,支持Web UI,便捷的API,性能更高
二、SQL
-
支持SQL2003标准
-
支持ansi-sql 和hive ql的sql parser(SQL解析器)
-
支持DDL,支持子查询(in/not in 、 exists/ not exists)
三、性能
-
通过whole-stage-code generation(全流程代码生成)技术将SparkSQL和DataSet的性能提升了2~10倍。(在下一篇博文中会浅谈全流程代码生成技术)
-
通过vectorization(向量化)技术提升parquet文件的扫描吞吐量
-
提升orc文件的读写性能
-
提升catalyst查询优化器的性能
-
通过native实现方式提升窗口函数的性能
四、 Spark Streaming
-
Structured Streaming在Spark2.0中是测试版,2.0之后是released版,它基于SparkSQL和Catalyst引擎构建,支持DataFrame风格的AP

Spark2.x引入了SparkSession接口,统一SQLContext和HiveContext;DataFrame与DataSet整合,提供增强聚合API;性能大幅提升,如全流程代码生成技术提高2~10倍速度;Structured Streaming成为正式版,支持DataFrame风格API;MLlib更新,支持更多算法和DataFrame的持久化;新增对csv、hive风格bucket表的支持,移除akka依赖并转向Scala2.11。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



