Amazon EMR
Amazon EMR 版本指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

Apache Spark

Apache Spark 一个分布式处理框架和编程模型,可帮助您使用 Amazon EMR 集群进行机器学习、流处理或图形分析。Spark 与 Apache Hadoop 类似,也是一款常用于大数据工作负载的开源、分布式处理系统。但 Spark 与 Hadoop MapReduce 有一些明显的不同。Spark 拥有经过优化的有向无环图 (DAG) 执行引擎并会积极地在内存中缓存数据,这可提高性能,尤其是对于某些算法和交互式查询。

Spark 内在支持使用 Scala、Python 和 Java 编写的应用程序。它还包含几个紧密集成的库,适用于 SQL (Spark SQL)、机器学习 (MLlib)、流式处理 (Spark Streaming) 和图形处理 (GraphX)。这些工具可让您更轻松地在各种使用案例中充分发挥 Spark 框架的优势。

您可以在 EMR 集群上与其他 Hadoop 应用程序一同安装 Spark,它还能借助 EMR 文件系统 (EMRFS) 直接访问 Amazon S3 中的数据。Hive 也与 Spark 集成,以便您使用 HiveContext 对象运行使用 Spark 的 Hive 脚本。Hive 上下文作为 sqlContext 包含在 Spark 外壳中。

有关使用 Spark 设置 EMR 集群和分析示例数据集的示例教程,请参阅 AWS 新闻博客上的新 - Amazon EMR 上的 Apache Spark

要查看在 Amazon EMR 上使用 Spark 的机器学习示例,请参阅 AWS 大数据博客上的通过 Amazon EMR 上的 Spark 实现大规模机器学习

下表列出了最新版的 Amazon EMR 附带的 Spark 的版本,以及 Amazon EMR 随 Spark 一起安装的组件。

有关随此版本中的 Spark 一起安装的组件的版本,请参阅发行版 5.14.0 组件版本

emr-5.14.0 的 Spark 版本信息

Amazon EMR 发行版标签 Spark 版本 随 Spark 安装的组件

emr-5.14.0

Spark 2.3.0

aws-sagemaker-spark-sdk、emrfs、emr-goodies、emr-ddb、hadoop-client、hadoop-hdfs-datanode、hadoop-hdfs-library、hadoop-hdfs-namenode、hadoop-httpfs-server、hadoop-kms-server、hadoop-yarn-nodemanager、hadoop-yarn-resourcemanager、hadoop-yarn-timeline-server、livy-server、r、spark-client、spark-history-server、spark-on-yarn、spark-yarn-slave