Apache Spark - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Apache Spark

Apache Spark 是一種分散式處理架構和程式設計模型,可協助您使用 Amazon EMR 叢集執行機器學習、串流處理或圖形分析。與 Apache Hadoop 類似,Spark 是一種開放原始碼、分散式處理系統,通常用於大數據的工作負載。然而,星火具有從 Hadoop MapReduce 的幾個顯著差異。Spark 有一個最佳化有向無環圖 (DAG) 執行引擎,並主動快取記憶體內的資料,可以提高效能 (尤其是針對某些演算法和互動式查詢)。

Spark 原本就支援 Scala、Python 和 Java 編寫的應用程式。它還包含數個緊密整合程式庫,可供 SQL (Spark SQL)、機器學習 (MLlib)、串流處理 (Spark 串流) 和圖形處理 (GraphX) 使用。這些工具可讓您更輕鬆地將 Spark 架構用於各式各樣的使用案例。

您可以在 Amazon EMR 叢集上安裝 Spark 以及其他 Hadoop 應用程式,也可以利用 Amazon EMR 檔案系統 (EMRFS) 直接存取 Amazon S3 中的資料。蜂巢還集成了星火,這樣就可以使用一個 HiveContext 對象使用星火運行蜂巢腳本。Hive 內容包含在 spark-shell 做為 sqlContext

如需使用 Spark 設定 EMR 叢集和分析範例資料集的範例教學課程,請參閱 AWS 新聞部落格上的教學課程:Amazon EMR 入門

重要

自 Amazon EMR 5.16.0 版開始提供 Apache Spark 版本 2.3.1,以因應 CVE-2018-8024CVE-2018-1334。建議您將舊版 Spark 遷移至 Spark 版本 2.3.1 或更高版本。

以下表格列出了 Amazon EMR 7.x 系列最新版本中包含的 Spark 版本,以及 Amazon EMR 隨 Spark 一起安裝的元件。

如需此發行版本中隨 Spark 一起安裝的元件版本,請參閱 7.1.0 版元件版本

火花版本信息 EMR 7.1.0
Amazon EMR 發行標籤 Spark 版本 與 Spark 一起搭配安裝的元件

埃姆尔 -7.1.0

Spark 3.5.0

delta, emrfs, emr-goodies, emr-ddb, emr-s3-select, 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, hudi, hudi-spark, iceberg, livy-server, nginx, r, spark-client, spark-history-server, spark-on-yarn, spark-yarn-slave

下表列出 Amazon EMR 6.x 系列最新版本中包含的 Spark 版本,以及 Amazon EMR 隨 Spark 一起安裝的元件。

如需此版本中與 Spark 一起搭配安裝的元件版本,請參閱發行版本 6.15.0 元件版本

emr-6.15.0 的 Spark 版本資訊
Amazon EMR 發行標籤 Spark 版本 與 Spark 一起搭配安裝的元件

emr-6.15.0

Spark 3.4.1

aws-sagemaker-spark-sdk, delta, emrfs, emr-goodies, emr-ddb, emr-s3-select, 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, hudi, hudi-spark, iceberg, livy-server, nginx, r, spark-client, spark-history-server, spark-on-yarn, spark-yarn-slave

注意

Amazon EMR 6.8.0 版隨附 Apache Spark 3.3.0。此 Spark 版本使用 Apache Log4j 2 和 log4j2.properties 檔案,以設定 Spark 程序中的 Log4j。如果您在叢集中使用 Spark,或使用自訂組態參數建立 EMR 叢集,並且想要升級至 Amazon EMR 6.8.0 版,則必須為 Apache Log4j 2 遷移至新的 spark-log4j2 組態分類和金鑰格式。如需詳細資訊,請參閱 從 Apache Log4j 1.x 遷移至 Log4j 2.x

下表列出 Amazon EMR 5.x 系列最新版本中包含的 Spark 版本,以及 Amazon EMR 隨 Spark 一起安裝的元件。

如需此版本中隨 Spark 一起安裝的元件版本,請參閱版本 5.36.2 元件版本。

火花版本信息為 emr-5.36.2
Amazon EMR 發行標籤 Spark 版本 與 Spark 一起搭配安裝的元件

埃姆尔 -5.36.2

Spark 2.4.8

aws-sagemaker-spark-sdk, emrfs, emr-goodies, emr-ddb, emr-s3-select, 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, hudi, hudi-spark, livy-server, nginx, r, spark-client, spark-history-server, spark-on-yarn, spark-yarn-slave