前言

今天Spark最终跨出了里程碑的一步,1.0.0版本号的公布标志着Spark已经进入1.0时代。1.0.0版本号不仅增加了非常多新特性,而且提供了更好的API支持。Spark SQL作为一个新的组件增加,支持在Spark上存储和操作结构化的数据。已有的标准库比方ML、Streaming和GraphX也得到了非常大程度上的增强,对Spark和Python的接口也变得更稳定。下面是几个基本的改进点:

融合YARN的安全机制

Hadoop有着自己的安全机制,包含认证和授权。Spark如今能够和Hadoop/YARN的安全模型并存,也就是说Spark能够对任务提交(job submission)进行认证,能够使用HDFS的认证机制进行数据的安全传输,各组件之间也添加了互相认证。

改善了任务提交的流程

这个版本号在非常大程度上增强了Spark应用的提交。Spark启用新的任务提交工具spark-submit tool以便可以通过一个普通进程向任一Spark集群提交应用程序。Spark的UI界面中也添加了历史任务的记录,方便了用户查看已经结束了任务执行情况。

Spark SQL的增加

Spark SQL作为一个新组建添加到1.0.0版本号中,它能够利用Spark进行结构化数据的存储和操作,结构化数据既能够赖在外部结构化数据源(当前支持Hive和Parquet),也能够通过向已有RDD添加schema的方式得到。

Spark SQL提供了方便的调用接口,用户能够通过SQL语句来与Spark代码交互。当前Spark SQL使用Catalyst优化器来对SQL语句进行优化从而得到更有效的运行方案,而且能够将结果存储到Parquet格式中,在将来Spark SQL还会兼容其它的存储系统。

MLib的改进

这个版本号的MLib添加了对Scala、Java、Python中稀疏特征向量的支持,其主要利用了线性方法、k-means和朴素贝叶斯在存储和计算上的稀疏性。1.0.0的MLib还添加了几个新的算法,包含为分类和回归添加了可扩展的决策树、矩阵算法的分布式实现(包含SVD和PCA)、模型评估函数以及L-BFGS算法。

GraphX和Streaming的改进

GraphX在图载入、边反转和邻接计算方面对通信的要求更低,产生的RDD图更简单,从而在性能方面得到了非常大提升。

Spark Streaming提供了对Flume的支持,在状态流转换方面进行了很多优化,而且可以对长时间执行任务的状态进行自己主动清理。

另外,Spark还对调用接口提供了更好的支持,包含对Java 1.8的支持,对Python很多其它版本号的兼容,使用对外内存进行RDD的cache,对小文件的更好支持等。

后记

非常荣幸从0.7.3版本号就開始熟悉、使用Spark,也非常开心自己介入了Spark开源项目的贡献,1.0.0的release note中已经有了自己的身影。尽管做了仅仅是非常小的贡献,可是还是感到一点点的满足感,未来会继续关注开源社区。

近期会增强对Spark的使用,并開始从架构上源代码级别的分析Spark。

參考:http://spark.apache.org/releases/spark-release-1-0-0.html

声明:

本文为原创,禁止用于不论什么商业用途,转载请注明出处:http://blog.csdn.net/asongoficeandfire/article/details/27725401

Spark 1.0.0版本号公布的更多相关文章

  1. jeecg-easypoi-2.0.3版本号公布

    EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,能够说是2.0版本号,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上eas ...

  2. 号外:Spark 1.3.0公布了,快来一起飞!

    Spark 1.3.0 Release Note Spark 1.3.0在上周五正式公布.真是千呼万唤始出来.本次公布最大的惊喜就是DataFrame.另外一个值得关注的是Spark SQL从Alph ...

  3. Bean Query 第一个版本号(1.0.0)已公布

    BeanQuery 是一个把对象转换为Map的Java工具库. 支持选择Bean中的一些属性.对结果进行排序和依照条件查询. 不只能够作用于顶层对象,也能够作用于子对象.很多其它具体的介绍能够看我的博 ...

  4. 【版本号公布】Jeecg-P3 1.0 公布,J2EE微服务框架(插件开发)

    JEECG-P3 1.0 公布了! JEECG-P3 1.0是一个J2EE微服务框架(插件开发). 特点:业务组件以JAR方式提供,插件模式.松耦合.可插拔.支持独立部署,也能够无缝集成Jeecg平台 ...

  5. Mybatis分页插件2.0版本号公布

    项目地址:http://git.oschina.net/free/Mybatis_PageHelper 软件介绍:http://www.oschina.net/p/mybatis_pagehelper ...

  6. Spark 1.0.0 横空出世 Spark on Yarn 部署(Hadoop 2.4)

    就在昨天,北京时间5月30日20点多.Spark 1.0.0最终公布了:Spark 1.0.0 released 依据官网描写叙述,Spark 1.0.0支持SQL编写:Spark SQL Progr ...

  7. What’s new in Spark 1.2.0

    What's new in Spark 1.2.0 1.2.0 was released on 12/18, 2014 在2014年5月30日公布了Spark 1.0 和9月11日公布了Spark1. ...

  8. Spark 1.0.0版本发布

    前言 如今Spark终于迈出了里程碑一步,1.0.0标记的版本号出版物Spark1.0时代.1.0.0版本号不仅增加了非常多新特性.而且提供了更好的API支持.Spark SQL作为一个新的组件增加. ...

  9. 2014年第一季度Oracle PSU更新(包括10.2.0.4+版本号全部PSU信息)

    2014年第一季度的PSU更新主要是3个版本号:12.1.11.2.0.4.11.2.0.3以及11.1.0.7. 在第2季度Oracle 将公布12.1.0.2,同一时候11.2.0.4版本号也将是 ...

随机推荐

  1. MySQL下Limit使用及性能分析

    对于一直用Oracle的我,今天可是非常诧异,MySQL中同一个函数在不同数量级上的性能居然差距如此之大. 先看表ibmng(id,title,info)  唯一  id key 索引title 先看 ...

  2. 从小白进阶ubuntu高手的必经之路—命令

    精选的十二个ubuntu下的命令,熟记于心,则能甩掉ubuntu小白标签,高手的伟岸形象焕然生发.一.管理员权限绝大部分情况下,命令的行为须要被赋予管理员权限才能执行.命令 sudo 作用:赋予当前命 ...

  3. 守望先锋overwatch美服外服设置方法

    打开:C:\Users\你的用户名\AppData\Roaming\Battle.net\Battle.net.config 替换为下方内容: { "Client": { &quo ...

  4. [转]HTTP Error 400. The request hostname is invalid.

    一般看到网站提示Bad Request(Invalid Hostname)错误我们都会说是iis,apache出问题了,iis出现这种问题解决办法大概是:IIS> 默认网站> > 属 ...

  5. rabbitmq 测试

    --*-- import pika import datetime connection = pika.BlockingConnection(pika.ConnectionParameters( 'l ...

  6. Oracle 基础知识

    SQLDevelop 1. 查看数据库版本 :  select  *  from   v$version; 2. 查看表结构:        desc     TABLE_NAME 3. 查看当前连接 ...

  7. 算法练习之:Doubles

    Doubles Time Limit: 1000MS Memory Limit: 65536KB Problem Description As part of an arithmetic compet ...

  8. RocketMQ在windows上安装和开发使用

    1.概述 RocketMQ是alibaba公司开源的一个纯java的开源消息中间件. 2.开发测试环境搭建 到github上面rocketMQ,我选择的是alibaba-rocketmq-3.2.6. ...

  9. PCR理解

    http://blog.csdn.net/niehanzi/article/details/4450154 PCR的物理意义: PCR存在于TS包的自适应域中,如下图: PCR用来同步前端编码器和后端 ...

  10. elevation 和 translationZ的区别

    Z轴阴影: Z = elevation + translationZ elevation 是静态值,是View在Z轴上的初始值 translationZ是动态值,是Z上的偏移变化 参考 http:// ...