Spark 1.3.0 Release Note

Spark 1.3.0在上周五正式公布。真是千呼万唤始出来。本次公布最大的惊喜就是DataFrame。另外一个值得关注的是Spark SQL从Alpha版毕业,我们最终可以欢快地使用Spark SQL了。本次公布还对Spark核心引擎改的可用性进行了改进。并扩展了Spark MLlib及Spark Streaming,详情见下。最后不得不提下。这次公布共接纳了1000多个patch,真是太火爆了

Spark 1.3.0的下载位置在这里

Spark Core

Spark 1.3.0在核心引擎中引入了非常多可用性改进。如今Core API支持多层聚合,有助于加速那些费时的reduce操作。对一些特定操作优化了错误信息。Spark的jetty依赖已经被shade,以避免和用户代码产生冲突。此外。Spark已经支持对Akka和HttpServer的连接进行SSL加密。最后。实时的GC统计信息记录计数器将会显示在Spark UI中。

DataFrame API

Spark 1.3.0加入了一个新的API,DataFrame,提供了更加强有力和便捷的方式来操作结构化数据。DataFrame发展自基础的RDD API。包括了命名域和schema信息。我们可以非常easy地从Hive表,JSON数据。JDBC数据库或者随意其它数据源中创建一个DataFrame。

DataFrame将成为Spark各个模块之间以及Spark和其它系统交换数据的通用接口。

Data frames支持Python。Scala和Java语言。

Spark SQL

在Spark 1.3.0中,Spark SQL正式从Alpha版毕业。向后兼容HiveQL原语并提供稳定的编程接口。Spark SQL支持在数据源API中写表操作。1.3.0版本号还提供了从JDBC读写数据表的能力,原生地支持同MySQL。Postgres及其它关系型数据库的交互能力,对HiveQL也做了大量的改进。

最后,Spark SQL支持以兼容方式从Parquet文件里载入数据

Spark ML/MLlib

Spark 1.3.0引入了一些新的算法:支持主题模型的LDA算法,支持多分类的多元逻辑回归,支持混合高斯模型PIC聚类,支持频繁集挖掘的FP-growth,此外还有为了支持分布式线性代数的块矩阵抽象。初步支持模型输入输出的交换格式,并将在今后的版本号中支持很多其它的格式。

K-means算法和ALS算法有了显著的性能提升。PySpark如今也支持ML pipeline APIGradient Boosted Trees以及混合高斯模型。

最后,ML Pipeline API也支持新的DataFrame抽象。

Spark Streaming

Spark 1.3.0引入了一个direct Kafka API(docs),不须要配置WAL就可保证数据的可靠交付。同一时候实现了Exactly-Once原语保证强一致性。

另外Python版的Kafka API也被加了进来。

支持online的逻辑回归算法,支持二进制数据的读取。对于那些有状态操作。添加了初始状态RDD的支持。

最后Spark Streaming的指导文档已经包括了SQL,DataFrame和容错等相关内容。

GraphX

Spark GraphX添加了非常多有用的接口,包括怎样将图转换成一个边规范化图

升级到Spark 1.3

Spark 1.3兼容1.X的版本号。所以不须要改动不论什么代码。当然不包括那些被隐含标识为不稳定的API。

作为稳定版Spark SQL API的一部分,SchemaRDD已经被重命名为DataFrame。Spark SQL指引文档已经具体说明了怎样去改动你的代码。

待解决Issue

以下这些issue将在Spark 1.3.1中修复

  • SPARK-6194: 解决PySpark collect()接口中的内存泄漏问题。
  • SPARK-6222: 修复Spark Streaming中一个失败恢复问题。
  • SPARK-6315: 解决Spark SQL无法读取Spark 1.1产生的parquet数据问题。

  • SPARK-6247: 解决Spark SQL中分析特定Join类型出错的问题。

官方正版

posted on 2017-06-26 20:39  yutingliuyl  阅读(152)  评论(0编辑  收藏  举报