Apache Spark 1.6 正式发布,Spark 1.6 包含 1000+ 分支,主要是三个大方面的改进:性能提升,新的 Dataset API 和数据科学功能的扩展。这是社区开发非常重要的一个里程碑:Spark 贡献者人数突破 1000 人,比 2014 年多一倍。
性能提升
根据 Apache Spark 官方 2015 年 Spark Survey,有 91% 的用户想要提升 Spark 的性能。
-
Parquet 性能
-
自动化内存管理
-
流状态管理速度提升 10X
Dataset API
Spark 团队引入了 DataFrames。
新的科学计算功能
-
机器学习管道持久性
-
新的算法和功能:
-
univariate and bivariate statistics
-
survival analysis
-
normal equation for least squares
-
bisecting K-Means clustering
-
online hypothesis testing
-
Latent Dirichlet Allocation (LDA) in ML Pipelines
-
R-like statistics for GLMs
-
feature interactions in R formula
-
instance weights for GLMs
-
univariate and bivariate statistics in DataFrames
-
LIBSVM data source
-
non-standard JSON data
-
更多改进内容请看发行说明。
Apache Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。
尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoo 文件系统中并行运行。通过名为 Mesos 的第三方集群框架可以支持此行为。Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开发,可用来构建大型的、低延迟的数据分析应用程序。