

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Apache Spark
<a name="emr-spark"></a>

[Apache Spark](https://aws.amazon.com/emr/features/spark/) は、Amazon EMR クラスターでの機械学習、ストリーム処理、グラフ分析に役立つ分散処理フレームワークおよびプログラミングモデルです。Apache Spark は、Apache Hadoop と同様に、ビッグデータのワークロードを処理するために一般的に使用されているオープンソースの分散処理システムです。ただし、Spark には Hadoop MapReduce との大きな違いがいくつかあります。Spark は、最適化された Directed Acyclic Graph (DAG) 実行エンジンを備えており、データをインメモリにアクティブにキャッシュするため、特に特定のアルゴリズムやインタラクティブクエリの場合にパフォーマンスが向上します。

Spark アプリケーションは、Scala、Java、および Python をネイティブでサポートしています。また、SQL (「[Spark](https://spark.apache.org/sql/)」)、機械学習 (「[MLlib](https://spark.apache.org/mllib/)」)、ストリーム処理 (「[Spark Streaming](https://spark.apache.org/streaming/)」)、グラフ処理 (「[GraphX](https://spark.apache.org/graphx/)」) 用の緊密に統合されたライブラリもいくつか含まれています。これらのツールを使用すると、さまざまなユースケースで Spark フレームワークを活用しやすくなります。

Spark は、他の Hadoop アプリケーションと同時に Amazon EMR クラスターにインストールすることができ、Amazon EMR ファイルシステム (EMRFS) を利用して Amazon S3 のデータに直接アクセスすることができます。Hive は Spark と統合されているため、HiveContext オブジェクトを使用することで、Spark を使用して Hive スクリプトを実行することもできます。Hive コンテキストは、spark-shell に `sqlContext` として含められます。

Spark で EMR クラスターをセットアップし、サンプルデータセットを分析するチュートリアルの例については、 AWS ニュースブログの[「チュートリアル: Amazon EMR の開始方法](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-gs.html)」を参照してください。

Apache Spark トラブルシューティングエージェントを使用して、EC2 上の EMR、Amazon EMR Serverless、EMR on EKS 上の Apache Spark アプリケーションのトラブルシューティングを行うことができます。詳細については[Amazon EMR と Glue 用の Apache Spark AWS トラブルシューティングエージェントとは](spark-troubleshoot.md)を参照してください。

**重要**  
Apache Spark バージョン 2.3.1 は Amazon EMR リリース 5.16.0 以降で利用でき、[CVE-2018-8024](https://nvd.nist.gov/vuln/detail/CVE-2018-8024) および [CVE-2018-1334](https://nvd.nist.gov/vuln/detail/CVE-2018-1334) に対処します。Spark の以前のバージョンを Spark バージョン 2.3.1 以降に移行することをお勧めします。

次の表は、Amazon EMR 7.x シリーズの最新リリースに含まれている Spark のバージョンと、Amazon EMR で Spark と共にインストールされるコンポーネントを示しています。

このリリースで Spark と共にインストールされるコンポーネントのバージョンについては、[「リリース 7.13.0 コンポーネントバージョン](emr-7130-release.md)」を参照してください。


**emr-7.13.0 の Spark バージョン情報**  

| Amazon EMR リリースラベル | Spark バージョン | Spark でインストールされるコンポーネント | 
| --- | --- | --- | 
| emr-7.13.0 | Spark 3.5.6-amzn-2 | delta, emrfs, emr-goodies, emr-ddb, emr-s3-select, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-hdfs-zkfc, 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-6150-release.md)」を参照してください。


**emr-6.15.0 の Spark バージョン情報**  

| Amazon EMR リリースラベル | Spark バージョン | Spark でインストールされるコンポーネント | 
| --- | --- | --- | 
| emr-6.15.0 | Spark 3.4.1-amzn-2 | 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 への移行](emr-spark-configure.md#spark-migrate-logj42)」を参照してください。

次の表は、Amazon EMR 5.x シリーズの最新リリースに含まれている Spark のバージョンと、Amazon EMR で Spark と共にインストールされるコンポーネントを示しています。

このリリースで Spark と共にインストールされるコンポーネントのバージョンについては、「[Release 5.36.2 Component Versions](emr-5362-release.md)」を参照してください。


**emr-5.36.2 の Spark バージョン情報**  

| Amazon EMR リリースラベル | Spark バージョン | Spark でインストールされるコンポーネント | 
| --- | --- | --- | 
| emr-5.36.2 | Spark 2.4.8-amzn-2 | 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 | 

**Topics**
+ [Apache Spark を使用したクラスターの作成](emr-spark-launch.md)
+ [Amazon EMR 6.x を使用して Docker で Spark アプリケーションを実行する](emr-spark-docker.md)
+ [Amazon EMR AWS で Spark で Glue データカタログを使用する](emr-spark-glue.md)
+ [Amazon EMR で Spark を使用して AWS Glue Data Catalog でマルチカタログ階層を操作する](emr-multi-catalog.md)
+ [Spark の設定](emr-spark-configure.md)
+ [Amazon EMR と Glue 用の Apache Spark AWS トラブルシューティングエージェントとは](spark-troubleshoot.md)
+ [Spark パフォーマンスの最適化](emr-spark-performance.md)
+ [Spark 結果フラグメントキャッシュ](emr-spark-fragment-result-caching.md)
+ [Apache Spark 用の Nvidia RAPIDS アクセラレータの使用](emr-spark-rapids.md)
+ [Spark シェルにアクセスする](emr-spark-shell.md)
+ [機械学習で Amazon SageMaker Spark を使用する](emr-spark-sagemaker.md)
+ [Spark アプリケーションを作成する](emr-spark-application.md)
+ [Amazon S3 で Spark のパフォーマンスを向上させる](emr-spark-s3-performance.md)
+ [Spark ステップを追加する](emr-spark-submit-step.md)
+ [Spark アプリケーション履歴を表示する](emr-spark-application-history.md)
+ [Spark ウェブ UI にアクセスする](emr-spark-webui.md)
+ [Spark 構造化ストリーミング Amazon Kinesis Data Streams コネクタの使用](emr-spark-structured-streaming-kinesis.md)
+ [Amazon EMR での Apache Spark 用の Amazon Redshift インテグレーションの使用](emr-spark-redshift.md)
+ [Spark リリース履歴](Spark-release-history.md)
+ [Amazon EMR でのマテリアライズドビューの使用](emr-spark-materialized-views.md)