

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

# PySpark 分析テンプレートの作成
<a name="create-pyspark-analysis-template"></a>

**注記**  
パラメータは、任意のコンテンツを含めることができるユーザー提供の文字列です。  
コードを確認して、分析での予期しない動作を防ぐためにパラメータが安全に処理されていることを確認します。
送信時に提供されるパラメータ値に関係なく、安全に機能するようにパラメータ処理を設計します。

**前提条件**

 PySpark 分析テンプレートを作成する前に、以下が必要です。
+ アクティブな AWS Clean Rooms コラボレーションのメンバーシップ
+ アクティブなコラボレーションで少なくとも 1 つの設定済みテーブルへのアクセス
+ 分析テンプレートを作成するアクセス許可
+ S3 で作成および保存される Python ユーザースクリプトと仮想環境
  + S3 バケットではバージョニングが有効になっています。詳細については、[S3 バケットでのバージョニングの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)」を参照してください。
  + S3 バケットは、アップロードされたアーティファクトの SHA-256 チェックサムを計算できます。詳細については、[「チェックサムの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html)」を参照してください。
+ S3 バケットからコードを読み取るアクセス許可

  必要なサービスロールの作成については、「」を参照してください[S3 バケットからコードを読み取るサービスロールを作成する (PySpark 分析テンプレートロール)](setting-up-roles.md#create-role-pyspark-analysis-template)。

次の手順では、 [AWS Clean Rooms コンソール](https://console.aws.amazon.com/cleanrooms/home)を使用して PySpark 分析テンプレートを作成するプロセスについて説明します。ユーザースクリプトと仮想環境ファイルを既に作成し、ユーザースクリプトと仮想環境ファイルを Amazon S3 バケットに保存していることを前提としています。

**注記**  
PySpark 分析テンプレートを作成するメンバーも、結果を受け取るメンバーである必要があります。

 AWS SDKs を使用して PySpark 分析テンプレートを作成する方法については、 [AWS Clean Rooms API リファレンス](https://docs.aws.amazon.com/clean-rooms/latest/apireference/Welcome.html)を参照してください。

**PySpark 分析テンプレートを作成するには**

1. にサインイン AWS マネジメントコンソール し、コラボレーションクリエーターとして機能する AWS アカウント で[AWS Clean Rooms コンソール](https://console.aws.amazon.com/cleanrooms/home)を開きます。

1. 左のナビゲーションペインで、**[コラボレーション]** を選択します。

1. コラボレーションを選択します。

1. **[テンプレート]** タブで、**[自分で作成した分析テンプレート]** セクションに移動します。

1. **[分析テンプレートを作成]** を選択します。

1. **分析テンプレートの作成**ページの**「詳細**」で、

   1. 分析テンプレート**の名前**を入力します。

   1. (オプション) **[説明]** を入力します。

   1. **Format** で、**PySpark** オプションを選択します。

1. **[定義]** で以下の操作を行います。

   1. **続行する前に、前提条件**を確認し、各前提条件が満たされていることを確認します。

   1. **エントリポイントファイル**で、S3 バケットを入力するか、**Browse S3 **を選択します。

   1. (オプション) **ライブラリファイル**で、S3 バケットを入力するか、**S3 を参照**を選択します。

1. **パラメータ** – 分析テンプレートを再利用可能にするためにパラメータを追加する場合はオプションです。

   1. **[Add parameter]** (パラメータの追加) を選択します。

   1. **パラメータ名**を入力します。

      パラメータ名は文字またはアンダースコアで始まり、その後に英数字またはアンダースコアが続く必要があります。

   1. **Type** の場合、**STRING** は PySpark 分析テンプレートでサポートされている唯一のタイプとして自動的に選択されます。

   1. (オプション) パラメータの**デフォルト値**を入力します。

      デフォルト値を指定すると、ジョブランナーはパラメータ値を明示的に指定せずにジョブを実行するときにこの値を使用できます。

   1. さらにパラメータを追加するには、**別のパラメータを追加**を選択し、前のステップを繰り返します。
**注記**  
PySpark 分析テンプレートごとに最大 50 個のパラメータを定義できます。各パラメータ値は最大 1,000 文字です。

1. **定義で参照されるテーブル**の場合、
   + 定義で参照されているすべてのテーブルがコラボレーションに関連付けられている場合:
     + **定義で参照されているすべてのテーブルは、コラボレーションチェックボックスが選択されたままにします**。
     + **コラボレーションに関連付けられたテーブルで**、定義で参照されているすべての関連テーブルを選択します。
   + 定義で参照されているすべてのテーブルがコラボレーションに関連付けられていない場合:
     + 定義**で参照されているすべてのテーブルがコラボレーションチェックボックスに関連付けられていることをクリアします**。
     + **コラボレーションに関連付けられたテーブルで**、定義で参照されているすべての関連テーブルを選択します。
     + **後で関連付けるテーブル**に、テーブル名を入力します。
     + **別のテーブルを一覧表示**する を選択して、別のテーブルを一覧表示します。

1. **エラーメッセージ設定**で、次のいずれかを選択します。
   + **基本的なエラーメッセージ** – 基になるデータを公開することなく、基本的なエラーメッセージを返します。本番ワークロードに推奨されます。
   + **詳細なエラーメッセージ** – 詳細なエラーメッセージを返し、トラブルシューティングを高速化します。開発およびテスト環境で推奨されます。個人を特定できる情報 (PII) などの機密データが公開される可能性があります。
**注記**  
**詳細なエラーメッセージ**を使用する場合、すべてのデータプロバイダーメンバーがテンプレートに対してこの設定を承認する必要があります。

1. ドロップダウンリストから**既存のサービスロール名**を選択して、サービス**アクセス**許可を指定します。

   1. ロールを一覧表示するアクセス許可がある場合は、ロールのリストが表示されます。

      ロールを一覧表示するアクセス許可がない場合は、使用するロールの Amazon リソースネーム (ARN) を入力できます。

   1. [**IAM で表示**] 外部リンクを選択してサービスロールを表示します。

      既存のサービスロールがない場合、**[既存のサービスロールを使用]** オプションは使用できません。

      デフォルトでは、 AWS Clean Rooms は既存のロールポリシーを更新して必要なアクセス許可を追加しようとしません。
**注記**  
AWS Clean Rooms には、分析ルールに従ってクエリを実行するためのアクセス許可が必要です。のアクセス許可の詳細については AWS Clean Rooms、「」を参照してください[AWS の 管理ポリシー AWS Clean Rooms](security-iam-awsmanpol.md)。
ロールに十分なアクセス許可がない場合 AWS Clean Rooms、ロールに に対する十分なアクセス許可がないことを示すエラーメッセージが表示されます AWS Clean Rooms。続行する前に、ロールポリシーを追加する必要があります。
ロールポリシーを変更できない場合は、 AWS Clean Rooms でサービスロールのポリシーが見つからなかったという内容のエラーメッセージが表示されます。

1. 設定済みテーブルのリソースで**タグ**を有効にする場合は、**[新しいタグを追加]** を選択し、**キー**と**値**のペアを入力します。

1. **[作成]** を選択します。

1. これで、コラボレーションメンバーに[分析テンプレートを確認](review-analysis-template.md)できることを通知する準備ができました。 (自身のデータにクエリを実行する場合は省略可能)

**重要**  
分析テンプレートの作成後にアーティファクト (ユーザースクリプトまたは仮想環境) を変更または削除しないでください。  
これを行うと、次のようになります。  
このテンプレートを使用する今後のすべての分析ジョブが失敗します。
新しいアーティファクトを使用して新しい分析テンプレートを作成する必要があります。
以前に完了した分析ジョブには影響しません。