

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

# EMR Studio を使用して EMR Serverless でインタラクティブワークロードを実行する
<a name="interactive-workloads"></a>

EMR Serverless インタラクティブアプリケーションを使用することにより、EMR Studio でホストされているノートブックを使用して、EMR Serverless で Spark のインタラクティブワークロードを実行します。

## 概要:
<a name="interactive-overview"></a>

*インタラクティブアプリケーション*は、インタラクティブ機能が有効になっている EMR Serverless アプリケーションです。Amazon EMR Serverless インタラクティブアプリケーションを使用すると、Amazon EMR Studio で管理されている Jupyter ノートブックを使用してインタラクティブワークロードを実行できます。これにより、データエンジニア、データサイエンティスト、データアナリストは EMR Studio を使用して、Amazon S3 や Amazon DynamoDB などのデータストア内のデータセットでインタラクティブな分析を実行できます。

EMR Serverless のインタラクティブアプリケーションのユースケースには、次のものがあります。
+ データエンジニアは、EMR Studio の IDE エクスペリエンスを使用して ETL スクリプトを作成します。スクリプトはオンプレミスからデータを取り込み、分析のためにデータを変換し、Amazon S3 にデータを保存します。
+ データサイエンティストはノートブックを使用してデータセットを調べ、データセットの異常を検出するように機械学習 (ML) モデルをトレーニングします。
+ データアナリストはデータセットを調査し、ビジネスダッシュボードなどのアプリケーションを更新する日次レポートを生成するスクリプトを作成します。

## 前提条件
<a name="interactive-prereqs"></a>

EMR Serverless でインタラクティブワークロードを使用するには、次の要件を満たします。
+ EMR Serverless インタラクティブアプリケーションは、Amazon EMR 6.14.0 以降でサポートされています。
+ インタラクティブアプリケーションにアクセスし、送信するワークロードを実行し、EMR Studio からインタラクティブノートブックを実行するには、特定のアクセス許可とロールが必要です。詳細については、[インタラクティブワークロードに必要なアクセス許可](#interactive-permissions) を参照してください。

## インタラクティブワークロードに必要なアクセス許可
<a name="interactive-permissions"></a>

[EMR Serverless へのアクセスに必要な基本的なアクセス許可](setting-up.md#setting-up-iam)に加えて、IAM ID またはロールに追加のアクセス許可を設定します。

**インタラクティブアプリケーションにアクセスするには**  
EMR Studio のユーザーアクセス許可と Workspace アクセス許可を設定します。詳細については、「*Amazon EMR 管理ガイド*」の「[Configure EMR Studio user permissions](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-user-permissions.html)」を参照してください。

**EMR Serverless で送信するワークロードを実行するには**  
ジョブのランタイムロールを設定する 詳細については、[ジョブランタイムロールを作成する](getting-started.md#gs-runtime-role) を参照してください。

**EMR Studio からインタラクティブノートブックを実行するには**  
Studio ユーザーの IAM ポリシーに次の権限を追加します。  
+ **`emr-serverless:AccessInteractiveEndpoints`** - `Resource` として指定したインタラクティブアプリケーションにアクセスして接続するためのアクセス許可を付与します。このアクセス許可は、EMR Studio Workspace から EMR Serverless アプリケーションにアタッチするために必要です。
+ **`iam:PassRole`** - アプリケーションにアタッチするときに使用する予定の IAM 実行ロールにアクセスするためのアクセス許可を付与します。EMR Studio Workspace から EMR Serverless アプリケーションにアタッチするには、適切な `PassRole` アクセス許可が必要です。  
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "EMRServerlessInteractiveAccess",
      "Effect": "Allow",
      "Action": [
        "emr-serverless:AccessInteractiveEndpoints"
      ],
      "Resource": [
        "arn:aws:emr-serverless:*:123456789012:/applications/*"
      ]
    },
    {
      "Sid": "EMRServerlessRuntimeRoleAccess",
      "Effect": "Allow",
      "Action": [
        "iam:PassRole"
      ],
      "Resource": [
        "arn:aws:iam::123456789012:role/EMRServerlessInteractiveRole"
      ],
      "Condition": {
        "StringLike": {
          "iam:PassedToService": "emr-serverless.amazonaws.com"
        }
      }
    }
  ]
}
```

## インタラクティブアプリケーションの設定
<a name="interactive-configure"></a>

以下の概略的な手順を使用して、 AWS マネジメントコンソールの Amazon EMR Studio のインタラクティブ機能を備えた EMR Serverless アプリケーションを作成します。

1. [Amazon EMR Serverless の使用を開始する](getting-started.md) の手順に従ってアプリケーションを作成します。

1. 次に、EMR Studio からワークスペースを起動し、コンピューティングオプションとして EMR Serverless アプリケーションにアタッチします。詳細については、[EMR Serverless Getting Started](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/getting-started.html#gs-job-run-console) ドキュメントのステップ 2 の**インタラクティブワークロード**タブを参照してください。

Studio Workspace にアプリケーションをアタッチすると、まだ実行されていない場合、アプリケーションは自動的にトリガーを開始します。また、アプリケーションを事前に起動し、ワークスペースにアタッチする前に準備しておくこともできます。

## インタラクティブアプリケーションの考慮事項
<a name="interactive-considerations"></a>
+ EMR Serverless インタラクティブアプリケーションは、Amazon EMR 6.14.0 以降でサポートされています。
+ EMR Studio は、EMR Serverless インタラクティブアプリケーションと統合されている唯一のクライアントです。EMR Serverless インタラクティブアプリケーションでは、Workspace コラボレーション、SQL Explorer、ノートブックのプログラムによる実行などの EMR Studio 機能はサポートされていません。
+ インタラクティブアプリケーションは Spark エンジンでのみサポートされています。
+ インタラクティブアプリケーションは、Python 3、PySpark、Spark Scala カーネルをサポートしています。
+ 1 つのインタラクティブアプリケーションで最大 25 個のノートブックを同時に実行できます。
+ インタラクティブアプリケーションでセルフホスト Jupyter ノートブックをサポートするエンドポイントや API インターフェイスはありません。
+ 起動エクスペリエンスを最適化するには、ドライバーとエグゼキューターの事前初期化された容量を設定し、アプリケーションを事前に起動することを提案します。アプリケーションを事前に起動する場合は、Workspace にアタッチする際に準備が整っていることを確認します。

  ```
  aws emr-serverless start-application \ 
  --application-id your-application-id
  ```
+ デフォルトでは、`autoStopConfig` はアプリケーションに対して有効になっています。これにより、アイドル時間が 30 分経過するとアプリケーションがシャットダウンされます。この設定は、`create-application` または `update-application` リクエストの一部として変更できます。
+ インタラクティブアプリケーションを使用する場合は、ノートブックを実行するカーネル、ドライバー、エグゼキューターの事前に初期化された容量を設定することを提案します。Spark インタラクティブセッションごとに 1 つのカーネルと 1 つのドライバーが必要なため、EMR Serverless は、事前に初期化されたドライバーごとに、事前に初期化されたカーネルワーカーを維持します。デフォルトでは、EMR Serverless は、ドライバーに事前初期化された容量を指定しない場合でも、アプリケーション全体で 1 つのカーネルワーカーの事前初期化された容量を維持します。各カーネルワーカーは 4 つの vCPU と 16 GB のメモリを使用します。現在の料金については、[Amazon EMR の料金](https://aws.amazon.com/emr/pricing/)ページを参照してください。
+ インタラクティブワークロードを実行する AWS アカウント には、 に十分な vCPU サービスクォータが必要です。Lake Formation 対応のワークロードを実行しない場合は、少なくとも 24 個の vCPU を提案します。その場合、少なくとも 28 個の vCPU を提案します。
+ EMR Serverless は、60 分を超える時間アイドル状態になっている場合に、ノートブックからカーネルを自動的に終了します。EMR Serverless は、ノートブックセッション中に完了した最後のアクティビティからカーネルアイドル時間を計算します。現在、カーネルアイドルタイムアウト設定を変更することはできません。
+ インタラクティブワークロードで Lake Formation を有効にするには、[EMR Serverless アプリケーション を作成する](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/getting-started.html)ときに、`runtime-configuration` オブジェクトの `spark-defaults` 分類で設定 `spark.emr-serverless.lakeformation.enabled` を `true` に設定します。詳細については、「[Enabling Lake Formation in Amazon EMR](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/emr-serverless-lf-enable.html#emr-serverless-lf-enable-config)」を参照してください。