Spark发布1.2.0 - 支持Netty NIO / SQL增强

Spark 1.2.0


         Spark 1.2.01.X线第三个版本此版本带来了Spark的核心引擎性能和可用性方面的改进一个重要的MLlibAPIPython的扩展ML支持一个完全高可用的Spark模式等等。GraphX已经看到主要性能和API改进,已经从alpha组件毕业。Spark1.2代表来自60多个机构的172贡献者的1000补丁的工作。

下载Spark 1.2,访问下载页面

 

Spark Core


        在Spark 1.2 升内核两个主要的子系统,以改善超大规模混洗的性能和稳定性首先是Spark批量传输使用通信管理器升级成了Netty化实现二是Spark洗牌机制,升级最初Spark1.1发布的基于排序洗牌机制。提高了超大规模洗牌的性能和稳定性Spark也在长期运行的ETL式的Job中增加了旨在提高联网使用的弹性缩放机制。目前仅在YARN上支持后续会未来的版本中支持其他群集管理器。最后,Spark1.2增加了对Scala的2.11支持有关Scala2.11的介绍,请参阅介绍文档。


Spark Streaming

      

        此版本包括Spark Streaming两个主要的功能补充,一个PythonAPI,一个写日志之前完整的H / A驱动程序Python的API涵盖了几乎所有DSTREAM转换和输出操作目前支持基于文本文件通过套接字的文本输入源将在下一版本中添加PythKafkaflume的输入流其次,Spark Streaming通过现在拥有H / A驱动程序支持日志(WALSpark1.1及更早的版本一些缓冲的(收到但尚未处理),数据可以在驱动程序的重新启动会丢失为了防止这种情况,Spark1.2增加了一个可选的WAL,该缓冲器接收数据转换成容错的文件系统(例如,HDFS)

Spark SQL

        在此版本中,Spark SQL增加了对外部数据源的一个新的API。此API支持安装外部数据源临时表并支持谓语下推的优化SparkparquetJSON绑定已使用这些API重新写入,我们希望各种社区项目,以1.2的生命周期过程中与其他系统和格式集成。

        Hive集成固定精度小数Hive0.13支持。Spark SQL还增加了动态分区插入,一个流行的Hive的功能。围绕缓存内部的重新架构提高了性能和缓存SchemaRDD实例的语义,增加了对基于统计的分区修剪缓存数据的支持


GraphX

        GraphX1.2alpha版本毕业了,并增加了一个稳定的API。这意味着,编写GraphX应用程序能够保证未来Spark版本一起使用无需更改代码一个新的核心APIaggregate Messages引入取代现在已经过时的mapReduce Triplet API。aggregate Messages API提供一个更迫切的编程模型并提高性能。一些早期测试用户发现,通过切换到新的API性能提升20 - 1倍

        此外Spark现在支持检查点,并血缘截断这是必要的,以支持大量重复生产岗位最后少数性能改进已经增加了PageRank和图形负载。

已知问题:

       一些小Bug没有给出发布窗口。他们将在星Spark1.2.1中修复:

    Netty洗牌没有遵从保护的端口配置。解决 - 恢复到NIO洗牌:SPARK-4837
    创建外部Hive表时发生java.io.FileNotFound 异常。解决 - 设置hive.stats.autogather=false。 SPARK-4892。
    除了PySpark上输入文本文件压缩功能:SPARK-4841
    MetricsServlet不正确初始化:SPARK-4595
  


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。