

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

# Amazon EMR を使用する利点
<a name="emr-overview-benefits"></a>

Amazon EMR を使用することには多くのメリットがあります。これには、 を通じて提供される柔軟性 AWS と、独自のオンプレミスリソースを構築する場合と比較して利用可能なコスト削減が含まれます。このセクションでは、このようなメリットの概要と、詳しい情報へのリンクを示します。

**Topics**
+ [コスト削減](#emr-benefits-cost)
+ [AWS 統合](#emr-benefits-integration)
+ [デプロイメント](#emr-benefits-deployment)
+ [スケーラビリティと柔軟性](#emr-benefits-scalability)
+ [信頼性](#emr-benefits-reliability)
+ [セキュリティ](#emr-benefits-security)
+ [モニタリング](#emr-benefits-monitoring)
+ [管理インターフェイス](#emr-what-tools)

## コスト削減
<a name="emr-benefits-cost"></a>

Amazon EMR の料金は、デプロイするインスタンスタイプと Amazon EC2 インスタンスの数、およびクラスターを起動するリージョンによって異なります。オンデマンド料金は低価格ですが、リザーブドインスタンスまたはスポットインスタンスを購入すると、コストをさらに抑えることができます。スポットインスタンスを利用すると大幅に節約できます。場合によっては、オンデマンド料金の 10 分の 1 になります。

**注記**  
EMR クラスターとともに Amazon S3、Amazon Kinesis、または DynamoDB を使用している場合、Amazon EMR の利用とは別個に請求されるサービスについては追加料金が発生します。

**注記**  
プライベートサブネットに Amazon EMR クラスターを設定するときは、[Amazon S3 の VPC エンドポイント](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html)も設定することをお勧めします。EMR クラスターが Amazon S3 の VPC エンドポイントのないプライベートサブネットに存在する場合、EMR クラスターと S3 間のトラフィックは VPC 内にとどまらないため、S3 トラフィックに関連する追加の NAT ゲートウェイ料金が発生します。

料金のオプションと詳細については、「[Amazon EMR 料金表](https://aws.amazon.com/elasticmapreduce/pricing/)」を参照してください。

## AWS 統合
<a name="emr-benefits-integration"></a>

Amazon EMR は他の AWS サービスと統合して、クラスターのネットワーク、ストレージ、セキュリティなどに関連する機能を提供します。次のリストに、この統合の例をいくつか示します。
+ クラスターのノードを構成するインスタンスの Amazon EC2
+ インスタンスを起動する仮想ネットワークを設定するための Amazon Virtual Private Cloud (Amazon VPC)
+ 入力データと出力データを保存するための Amazon S3
+ クラスターのパフォーマンスを監視し、アラームを設定する Amazon CloudWatch
+ AWS Identity and Access Management アクセス許可を設定するための (IAM)
+ AWS CloudTrail サービスに対して行われたリクエストを監査する
+ AWS Data Pipeline クラスターをスケジュールして起動するには
+ AWS Lake Formation Amazon S3 データレイク内のデータを検出、カタログ化、保護するには

## デプロイメント
<a name="emr-benefits-deployment"></a>

EMR クラスターは、クラスターに送信した処理を実行する EC2 インスタンスで構成されます。クラスターを起動すると、選択したアプリケーション (Apache Hadoop や Spark など) を使用してインスタンスが Amazon EMR により構成されます。クラスターの処理の必要に最も合うインスタンスサイズとタイプを選択します (バッチ処理、レイテンシークエリ、ストリーミングデータ、または大容量データストレージ)。Amazon EMR で利用可能なインスタンスタイプの詳細については、「[Amazon EMR クラスターハードウェアとネットワークを設定する](emr-plan-instances.md)」を参照してください。

Amazon EMR には、クラスター上のソフトウェアを設定するためのさまざまな方法があります。たとえば、Amazon EMR リリースは、Hadoop などの多用途フレームワークと Hive、Pig、Spark などのアプリケーションを含むアプリケーションセットを選択してインストールできます。いくつかの MapR ディストリビューションの 1 つをインストールすることもできます。Amazon EMR は Amazon Linux を使用するため、yum パッケージマネージャで、またはソースから手動でクラスターにソフトウェアをインストールすることもできます。詳細については、「[Amazon EMR クラスターを起動するときにアプリケーションを設定する](emr-plan-software.md)」を参照してください。

## スケーラビリティと柔軟性
<a name="emr-benefits-scalability"></a>

Amazon EMR には、コンピューティングニーズの変化に合わせてクラスターを拡大または縮小できる柔軟性が備わっています。クラスターのサイズを変更し、ピークワークロード用にインスタンスを追加したり、ピークワークロードが減少したときにインスタンスを削除してコストをコントロールしたりすることができます。詳細については、「[実行中の Amazon EMR クラスターのサイズを手動で変更する](emr-manage-resize.md)」を参照してください。

 Amazon EMR には、複数のインスタンスグループを実行することにより、あるグループでオンデマンドインスタンスを使用して処理能力を保証すると同時に、別のグループでスポットインスタンスを使用してジョブを高速に低コストで完了できるようにするオプションも用意されています。異なるインスタンスタイプを混ぜて、別のインスタンスタイプよりも有利なスポットインスタンスタイプの料金を活かすこともできます。詳細については、「[スポットインスタンスを使用すべき場合](emr-plan-instances-guidelines.md#emr-plan-spot-instances)」を参照してください。

さらに、Amazon EMR には入力データ、出力データ、中間データに複数のファイルシステムを使用する柔軟性も備わっています。例えば、クラスターのライフサイクル後は保存する必要がないデータを処理するために、クラスターのプライマリノードとコアノードで実行される Hadoop 分散ファイルシステム (HDFS) を選択することができます。Amazon S3 をクラスターで実行されるアプリケーションのデータレイヤーとして使用するために EMR File System (EMRFS) を選択し、コンピューティングとストレージを分離して、データをクラスターのライフサイクル外に保持することができます。EMRFS には、コンピューティングのニーズとストレージのニーズそれぞれに合わせて拡大または縮小できるという利点もあります。コンピューティングのニーズが変化した場合はクラスターのサイズを変更することができ、ストレージのニーズが変化した場合は Amazon S3 を使用することができます。詳細については、「[Amazon EMR でのストレージおよびファイルシステムの使用](emr-plan-file-systems.md)」を参照してください。

## 信頼性
<a name="emr-benefits-reliability"></a>

Amazon EMR は、クラスター内のノードを監視し、障害が発生した場合はインスタンスを自動的に終了して置き換えます。

Amazon EMR には、クラスターの終了方法 (自動または手動) をコントロールする設定オプションが用意されています。クラスターが自動的に終了されるように設定した場合、すべてのステップが完了すると終了されます。これは一時的なクラスターと呼ばれます。一方、クラスターが必要なくなったときに手動で終了を選択できるように、処理が完了した後もクラスターが実行され続けるように設定することもできます。または、クラスターを作成して、インストールされたアプリケーションを直接操作した後、必要なくなった時に手動で終了することもできます。このようなクラスターは*長時間稼働クラスター*と呼ばれます。

さらに、削除保護を設定し、処理中にエラーや問題が発生した場合にクラスター内のインスタンスが削除されないようにすることもできます。終了保護が有効になると、終了前にインスタンスからデータを回復できます。これらのオプションのデフォルト設定は、クラスターの起動方法 (コンソール、CLI、または API) によって異なります。詳細については、「[Amazon EMR クラスターを誤ったシャットダウンから保護するための終了保護の使用](UsingEMR_TerminationProtection.md)」を参照してください。

## セキュリティ
<a name="emr-benefits-security"></a>

Amazon EMR は、IAM や Amazon VPC などの他の AWS サービス、および Amazon EC2 キーペアなどの機能を活用して、クラスターやデータを保護できます。

### IAM
<a name="emr-benefits-iam"></a>

Amazon EMR は、アクセス権限を管理するため IAM と統合されています。アクセス権限は、ユーザーまたは IAM グループにアタッチする IAM ポリシーを使用して定義します。ポリシーで定義したアクセス権限により、それらのユーザーまたはグループのメンバーが実行できるアクションと、アクセスできるリソースが決まります。詳細については、「[Amazon EMR で IAM が機能する仕組み](security_iam_service-with-iam.md)」を参照してください。

さらに、Amazon EMR は Amazon EMR サービス自体の IAM ロールとインスタンスの EC2 インスタンスプロファイルを使用します。これらのロールは、サービスおよびインスタンスがユーザーに代わって他の AWS サービスにアクセスするためのアクセス許可を付与します。Amazon EMR サービスのデフォルトロールと EC2 インスタンスプロファイルのデフォルトロールが存在します。デフォルトのロールは AWS 管理ポリシーを使用します。このポリシーは、コンソールから EMR クラスターを初めて起動し、デフォルトのアクセス許可を選択するときに自動的に作成されます。デフォルト IAM ロールは、 AWS CLIから作成することもできます。の代わりにアクセス許可を管理する場合は AWS、サービスとインスタンスプロファイルのカスタムロールを選択できます。詳細については、「[サービスおよびリソースへの Amazon EMR アクセス許可の IAM AWS サービスロールを設定する](emr-iam-roles.md)」を参照してください。

### セキュリティグループ
<a name="emr-benefits-security-groups"></a>

Amazon EMR は、セキュリティグループを使用して、EC2 インスタンスのインバウンドトラフィックとアウトバウンドトラフィックをコントロールします。クラスターを起動すると、Amazon EMR はプライマリインスタンスのセキュリティグループと、コアインスタンス/タスクインスタンスによって共有されるセキュリティグループを使用します。Amazon EMR は、クラスター内のインスタンス間の通信を確実にするために、セキュリティグループルールを設定します。オプションで、追加のセキュリティグループを設定し、高度なルールで、プライマリインスタンスとコア/タスクインスタンスにそのグループを割り当てることができます。詳細については、「[Amazon EMR クラスターのセキュリティグループを使用してネットワークトラフィックを制御する](emr-security-groups.md)」を参照してください。

### 暗号化
<a name="emr-benefits-encryption"></a>

Amazon EMR では、Amazon S3 に保存するデータを保護できるようにするため、EMRFS を使用したオプションの Amazon S3 サーバー側の暗号化とクライアント側の暗号化がサポートされます。サーバー側の暗号化を使うと、Amazon S3 はアップロード後にデータを暗号化します。

クライアント側の暗号化を使用すると、暗号化および復号プロセスは EMR クラスターの EMRFS で行われます。( AWS Key Management Service AWS KMS) または独自のキー管理システムを使用して、クライアント側の暗号化用のルートキーを管理します。

詳細については、「[EMRFS プロパティを使用して Amazon S3 の暗号化を指定する](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-emrfs-encryption.html)」を参照してください。

### Amazon VPC
<a name="emr-benefits-vpc"></a>

Amazon EMR は、Amazon VPC の仮想プライベートクラウド (VPC) におけるクラスターの起動をサポートします。VPC は、ネットワーク設定とアクセスの高度な側面を制御する機能 AWS を提供する の独立した仮想ネットワークです。詳細については、「[Amazon EMR 用の VPC でネットワークを設定する](emr-plan-vpc-subnet.md)」を参照してください。

### AWS CloudTrail
<a name="emr-benefits-cloudtrail"></a>

Amazon EMR は CloudTrail と統合して、アカウントによって、または AWS アカウントに代わって行われたリクエストに関する情報をログに記録します。この情報を使用すると、クラスターにアクセスしたユーザーや日時に加え、リクエストの生成元 IP アドレスを追跡できます。詳細については、「[を使用した AWS EMR API コールのログ記録 AWS CloudTrail](logging-using-cloudtrail.md)」を参照してください。

### Amazon EC2 のキーペア
<a name="emr-benefits-key-pairs"></a>

リモートコンピュータとプライマリノードの間で安全な接続を確立することにより、クラスターを監視して操作できます。Secure Shell (SSH) ネットワークプロトコルを使用して接続するか、Kerberos で認証することができます。SSH を使用する場合は Amazon EC2 キーペアが必要です。詳細については、「[Amazon EMR の SSH 認証情報に EC2 キーペアを使用する](emr-plan-access-ssh.md)」を参照してください。

## モニタリング
<a name="emr-benefits-monitoring"></a>

Amazon EMR 管理インターフェイスとログファイルを使用して、障害やエラーなどのクラスターの問題をトラブルシューティングできます。Amazon EMR には、ログファイルを Amazon S3 にアーカイブする機能があるため、クラスターの終了後でもログを保存し、問題のトラブルシューティングを行うことができます。Amazon EMR には、Amazon EMR コンソールで、ステップ、ジョブ、およびタスクに基づいてログファイルを参照するためのオプションのデバッグツールも用意されています。詳細については、「[Amazon EMR クラスターのログ記録とデバッグを設定する](emr-plan-debugging.md)」を参照してください。

Amazon EMR は、クラスターとクラスター内のジョブのパフォーマンスメトリクスを追跡するため、CloudWatch と統合されています。クラスターがアイドル状態かどうかや使用されているストレージの割合など、さまざまなメトリクスに基づいてアラームを設定できます。詳細については、「[CloudWatch で Amazon EMR のメトリクスをモニタリングする](UsingEMR_ViewingMetrics.md)」を参照してください。

## 管理インターフェイス
<a name="emr-what-tools"></a>

 Amazon EMR とやり取りする方法はいくつかあります。
+ **コンソール** — クラスターの起動と管理に使用できるグラフィカルユーザーインターフェイス。起動するクラスターの詳細をウェブフォームに入力することで指定し、既存のクラスターの詳細を確認して、クラスターのデバッグや終了を行うことができます。コンソールは、最も簡単に Amazon EMR の使用を開始する手段です。プログラミングの知識は必要ありません。コンソールは、[https://console.aws.amazon.com/elasticmapreduce/home](https://console.aws.amazon.com/elasticmapreduce/home) からオンラインで使用できます。
+ **AWS Command Line Interface (AWS CLI)** — Amazon EMR に接続し、クラスターを作成および管理するためにローカルマシンで実行するクライアントアプリケーション。には、Amazon EMR に固有の機能豊富なコマンドのセット AWS CLI が含まれています。これを利用すると、クラスターの起動と管理のプロセスをスクリプトで自動化できます。コマンドラインから作業する場合は、 を使用するのが最適なオプション AWS CLI です。詳細については、「[https://docs.aws.amazon.com/cli/latest/reference/emr/index.html](https://docs.aws.amazon.com/cli/latest/reference/emr/index.html) コマンドリファレンス*」の「AWS CLI Amazon EMR*」を参照してください。
+ **Software Development Kit (SDK)** — SDK には、Amazon EMR を呼び出してクラスターを作成し、管理する機能が備わっています。これを利用すると、クラスターの作成や管理のプロセスを自動化するアプリケーションを作成できます。Amazon EMR の機能を拡張したりカスタマイズしたりするには、SDK が最適の選択肢です。Amazon EMR は現在、次の SDK で使用可能です。Go、Java、.NET (C\$1 および VB.NET)、Node.js、PHP、Python、および Ruby。これらの SDK の詳細については、「[AWSのツール](https://aws.amazon.com/tools/)」および「[Amazon EMR サンプルコード & ライブラリ](https://docs.aws.amazon.com/code-library/latest/ug/emr_code_examples.html)」を参照してください。
+ **Web Service API** – JSON を使用して直接ウェブサービスを呼び出すことができる低レベルインターフェイスです。Amazon EMR を呼び出すカスタム SDK を作成するには、この API が最適の選択肢です。詳細については、「[Amazon EMR API リファレンス](https://docs.aws.amazon.com/ElasticMapReduce/latest/API/Welcome.html)」を参照してください。