

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

# 建立 PySpark 分析範本
<a name="create-pyspark-analysis-template"></a>

**注意**  
參數是使用者提供的字串，可包含任意內容。  
檢閱程式碼以確保安全地處理參數，以防止分析中的意外行為。
無論提交時提供哪些參數值，設計參數處理都能安全地運作。

**先決條件**

 建立 PySpark 分析範本之前，您必須具有：
+ 作用中 AWS Clean Rooms 協同合作的成員資格
+ 存取作用中協同合作中至少一個已設定的資料表
+ 建立分析範本的許可
+ 在 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 Clean Rooms 主控台](https://console.aws.amazon.com/cleanrooms/home) AWS 帳戶 ，以做為協作建立者。

1. 在左側導覽窗格中，選擇**協同合作**。

1. 選擇協同合作。

1. 在**範本**索引標籤上，前往**您建立的分析範本**區段。

1. 選擇**建立分析範本**。

1. 在**建立分析範本**頁面上，如需**詳細資訊**，

   1. 輸入分析範本**的名稱**。

   1. （選用） 輸入**描述**。

   1. 針對**格式**，選擇 **PySpark** 選項。

1. 對於**定義**，

   1. 檢閱**先決條件**，並確保符合每個先決條件，然後再繼續。

   1. 對於**進入點檔案**，輸入 S3 儲存貯體或選擇**瀏覽 S3**。

   1. （選用） 對於**程式庫檔案**，輸入 S3 儲存貯體或選擇**瀏覽 S3**。

1. 對於**參數 - 選用**，如果您想要新增參數以使分析範本可重複使用：

   1. 選擇 **Add parameter (新增參數)**。

   1. 輸入**參數名稱**。

      參數名稱必須以字母或底線開頭，後面接著英數字元或底線。

   1. 對於**類型**，會自動選取 **STRING** 作為 PySpark 分析範本唯一支援的類型。

   1. （選用） 輸入 參數的**預設值**。

      如果您提供預設值，任務執行器可以在執行任務時使用此值，而無需明確提供參數值。

   1. 若要新增更多參數，請選擇**新增另一個參數**並重複上述步驟。
**注意**  
每個 PySpark 分析範本最多可以定義 50 個參數。每個參數值最多可達 1，000 個字元。

1. 對於**定義中參考的資料表**，
   + 如果定義中參考的所有資料表都已與協同合作相關聯：
     + 保留**定義中參考的所有資料表已與選取的協同合作核取方塊相關聯**。
     + 在**與協同合作相關聯的資料表**下，選擇定義中參考的所有相關資料表。
   + 如果定義中參考的所有資料表尚未與協同合作相關聯：
     + 清除**定義中參考的所有資料表都已與協同合作核取方塊相關聯**。
     + 在**與協同合作相關聯的資料表**下，選擇定義中參考的所有相關資料表。
     + 在**稍後相關聯的資料表**下，輸入資料表名稱。
     + 選擇**列出另一個資料表**以列出另一個資料表。

1. 針對**錯誤訊息組態**，選擇下列其中一項：
   + **基本錯誤訊息** – 傳回基本錯誤訊息，而不會公開基礎資料。建議用於生產工作負載。
   + **詳細的錯誤訊息** – 傳回詳細的錯誤訊息，以加快故障診斷速度。建議在開發和測試環境中使用。可能會公開敏感資料，包括個人身分識別資訊 (PII)。
**注意**  
使用**詳細錯誤訊息**時，所有資料提供者成員都必須核准範本的此設定。

1. 從下拉式清單中選取**現有的服務角色名稱，以指定服務****存取**許可。

   1. 如果您具有列出角色的許可，則會顯示角色清單。

      如果您沒有列出角色的許可，您可以輸入要使用的角色的 Amazon Resource Name (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)。（如果您想要查詢自己的資料，則為選用。)

**重要**  
建立分析範本後，請勿修改或移除成品 （使用者指令碼或虛擬環境）。  
這樣做將：  
導致使用此範本的所有未來分析任務失敗。
需要建立具有新成品的新分析範本。
不會影響先前完成的分析任務。