BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Spark 1.2版本发布: MLlib支持工作流,SQL支持源数据筛选

| 作者 张天雷 关注 4 他的粉丝 发布于 2014年12月25日. 估计阅读时间: 4 分钟 | AICon 关注机器学习、计算机视觉、NLP、自动驾驶等20+AI热点技术和最新落地成功案例。

12月18日,Spark宣布发布1.2版本,和以往发布的版本相比,1.2版本算得上是最大的一次改进,代码来自172个开发者的多达一千次提交。更新内容涵盖核心性能改进、MLlib的新API、Streaming的H/A模式、GraphX相关等等。更多细节可以在下载页查看。在本次的发布中,主要改进包括下面几个方面:

  • Spark Core:对操作和性能方面做了改进,更新了两个主要的子系统,来针对大规模shuffle的情况。第一个改进的是通信管理系统,升级使用了基于Netty的实现。第二个改进是shuffle的机制,升级使用了基于sort的实现。这两个改进,都对大规模shuffle情况下的性能和稳定性做出了贡献。除此之外,Spark还增加了一个弹性机制,用于增强那些长时间运行的ETL任务对集群的利用率。目前这种机制在YARN上已经支持了,后续版本发布的时候应该会覆盖到其他管理平台。最后,核心功能还添加了对Scala 2.11版本的支持。
  • Spark Streaming:本次升级对Streaming部分来讲包括了两个主要特性,一个是Python的API,可以调用DStream和输出操作几乎全部的功能。目前输入来源支持文本文件和socket传递过来的文本。预计下一个版本发布的时候会添加Kafka和Flume的输入支持。另一个是WAL(write ahead log)机制下的全H/A模式,在此之前的版本,如果硬盘出了问题,一些尚在缓存区还没有来得及被处理的数据会丢失,该改进可以有效地防止硬盘出问题时的数据丢失问题。
  • MLLib:最大的改进应该是发布了称为spark.ml的机器学习工具包,支持了pipeline的学习模式,即多个算法可以用不同参数以流水线的形式运行。在工业界的机器学习应用部署过程中,pipeline的工作模式是很常见的。新的ML工具包使用Spark的SchemaRDD来表示机器学习的数据集合,提供了Spark SQL直接访问的接口。此外,在机器学习的算法方面,增加了两个基于树的方法,随机森林和梯度增强树。
  • Spark SQL:增加了对外部数据来源的支持。可以将外部数据来源作为临时表挂在的文件系统之中,减少了全部加载数据过来的种种纠结。为了做到这一点,Spark重写了Parquet和JSON绑定。后续应该会有更多的对其他系统和数据格式的支持发布出来。此外,对于Hive的支持也增加了定点数类型以及动态划分的插入。
  • GraphX:终于在这个版本里,Spark将GraphX从一个alpha初级开发版本更换到了稳定版本。这意味着目前用GraphX开发的代码将来移植到Spark新版本的时候,也不用做太多的代码改动了。另外mapReduceTriplet接口被新的aggreateMessages替换。
  • 其他细节升级包括PySpark支持大数据集、一些UI上的改动以及可以读取二进制图像等内容。

12月16日的Spark的社区聚会上,作者Andrew和Aaron Davidson向前来的热心开发者详细讲解了此次升级的情况(Youtube视频)。另外,明年1月13日,Databricks的Patrick Wendell也会以Webcast的形式来分享Spark 1.2的更多细节


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT