Apache Spark 2.2.0新特性介绍(转载)

简介:

这个版本是 Structured Streaming 的一个重要里程碑,因为其终于可以正式在生产环境中使用,实验标签(experimental tag)已经被移除。在流系统中支持对任意状态进行操作;Apache Kafka 0.10 的 streaming 和 batch API支持读和写操作。除了在 SparkR, MLlib 和 GraphX 里面添加新功能外,该版本更多的工作在系统的可用性(usability)、稳定性(stability)以及代码的润色(polish)并解决了超过 1100 个tickets。

这篇文章中将详细介绍这些新特性,包括:

  • Structured Streaming的生产环境支持已经就绪;
  • 扩展 SQL 的功能;
  • R 中引入了新的分布式机器学习算法;
  • MLlib 和 GraphX 中添加了新的算法

Structured Streaming

Structured Streaming 是从 Spark 2.0 开始引入的,其提供了高层次的API来构建流应用程序;目的是提供一种简单的方式来构建端到端的流应用程序(end-to-end streaming applications),提供了一致性保证和容错方式。

从 Spark 2.2.0 开始,Structured Streaming 已经为生产环境的支持准备就绪,除了移除了实验性标签,还包括了一些高层次的变化,比如:

  • Kafka Source and Sink: Apache Kafka 0.10 的 streaming 和 batch API支持读和写操作;
  • Kafka Improvements: Kafka 到 Kafka 流操作中的producer 支持缓存以实现低延迟;
  • Additional Stateful APIs: [flat]MapGroupsWithState 操作支持复杂的状态处理以及超时处理;
  • Run Once Triggers:详情:Running Streaming Jobs Once a Day For 10x Cost Savings

SQL 和 Core APIs

自从 Spark 2.0 发布,Spark 已经成为大数据领域中功能最丰富并且符合标准的SQL查询引擎之一。它可以连接各种数据源,并且可以在这些数据上执行 SQL-2003 标准语句,包括分析函数以及子查询。Spark 2.2 还添加了许多 SQL 新功能,包括:

  • API 更新: 统一了数据源和hive serde表的 CREATE TABLE 语法;SQL查询支持广播提示(broadcast hints )比如BROADCAST, BROADCASTJOIN, 以及 MAPJOIN;
  • 总体性能和稳定性:
    • filter、join、aggregate、project 以及 limit/sample 操作支持基于成本优化器的基数统计(Cost-based optimizer cardinality estimation);
    • 使用星型启发式(star-schema heuristics)来提升 TPC-DS 性能;
    • CSV 和 JSON 文件 listing/IO 性能提升;
    • HiveUDAFFunction 支持部分集合;
    • 引入基于JVM对象的聚合运算符
  • 其他值得关注的改变:
    • 支持解析多行的JSON 和 CSV 文件
    • 分析分区表的命令

MLlib 和 SparkR

Spark 2.2.0 的最后一大变化主要集中在高级分析,MLlib 和 GraphX 添加了以下的新算法:

  • 局部敏感哈希(Locality Sensitive Hashing)
  • 多级逻辑回归(Multiclass Logistic Regression)
  • 个性化PageRank(Personalized PageRank)

Spark 2.2.0还在 SparkR 中添加了以下分布式算法:

  • 交替最小二乘(ALS,Alternating Least Squares )
  • 保序回归(Isotonic Regression)
  • 多层感知分类器(Multilayer Perceptron Classifier)
  • 随机森林(Random Forest)
  • 高斯混合模型(Gaussian Mixture Model)
  • 线性判别式分析(Linear Discriminant Analysis, LDA)
  • 多级逻辑回归(Multiclass Logistic Regression)
  • 梯度提升树(Gradient Boosted Trees)
  • Structured Streaming API 支持 R 语言
  • R 中支持 to_jsonfrom_json
  • 支持Multi-column approxQuantile

随着这些算法的增加,SparkR已经成为 R 中最全面的分布式机器学习库。

 

该文转载自 https://www.iteblog.com/archives/2194.html

英文原文参考 https://databricks.com/blog/2017/07/11/introducing-apache-spark-2-2.html








本文转自shishanyuan博客园博客,原文链接: http://www.cnblogs.com/shishanyuan/p/8456235.html   ,如需转载请自行联系原作者









相关文章
|
11月前
|
分布式计算 大数据 Apache
利用.NET进行大数据处理:Apache Spark与.NET for Apache Spark
【10月更文挑战第15天】随着大数据成为企业决策和技术创新的关键驱动力,Apache Spark作为高效的大数据处理引擎,广受青睐。然而,.NET开发者面临使用Spark的门槛。本文介绍.NET for Apache Spark,展示如何通过C#和F#等.NET语言,结合Spark的强大功能进行大数据处理,简化开发流程并提升效率。示例代码演示了读取CSV文件及统计分析的基本操作,突显了.NET for Apache Spark的易用性和强大功能。
281 1
|
分布式计算 大数据 Spark
Spark大数据处理:技术、应用与性能优化(全)PDF书籍推荐分享
《Spark大数据处理:技术、应用与性能优化》深入浅出介绍Spark核心,涵盖部署、实战与性能调优,适合初学者。作者基于微软和IBM经验,解析Spark工作机制,探讨BDAS生态,提供实践案例,助力快速掌握。书中亦讨论性能优化策略。[PDF下载链接](https://zhangfeidezhu.com/?p=347)。![Spark Web UI](https://img-blog.csdnimg.cn/direct/16aaadbb4e13410f8cb2727c3786cc9e.png#pic_center)
302 1
Spark大数据处理:技术、应用与性能优化(全)PDF书籍推荐分享
|
分布式计算 Hadoop 大数据
大数据处理框架在零售业的应用:Apache Hadoop与Apache Spark
【8月更文挑战第20天】Apache Hadoop和Apache Spark为处理海量零售户数据提供了强大的支持
243 0
|
分布式计算 Serverless 数据处理
EMR Serverless Spark 实践教程 | 通过 Apache Airflow 使用 Livy Operator 提交任务
Apache Airflow 是一个强大的工作流程自动化和调度工具,它允许开发者编排、计划和监控数据管道的执行。EMR Serverless Spark 为处理大规模数据处理任务提供了一个无服务器计算环境。本文为您介绍如何通过 Apache Airflow 的 Livy Operator 实现自动化地向 EMR Serverless Spark 提交任务,以实现任务调度和执行的自动化,帮助您更有效地管理数据处理任务。
402 0
|
分布式计算 大数据 数据处理
Apache Spark在大数据处理中的应用
Apache Spark是大数据处理的热门工具,由AMPLab开发并捐赠给Apache软件基金会。它以内存计算和优化的执行引擎著称,提供比Hadoop更快的处理速度,支持批处理、交互式查询、流处理和机器学习。Spark架构包括Driver、Master、Worker Node和Executor,核心组件有RDD、DataFrame、Dataset、Spark SQL、Spark Streaming、MLlib和GraphX。文章通过代码示例展示了Spark在批处理、交互式查询和实时数据处理中的应用,并讨论了其优势(高性能、易用性、通用性和集成性)和挑战。【6月更文挑战第11天】
421 6
|
消息中间件 分布式计算 关系型数据库
使用Apache Spark从MySQL到Kafka再到HDFS的数据转移
使用Apache Spark从MySQL到Kafka再到HDFS的数据转移
193 0
|
9月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
666 33
The Past, Present and Future of Apache Flink
|
11月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
1465 13
Apache Flink 2.0-preview released

热门文章

最新文章

推荐镜像

更多