使用資料刪除工作刪除使用者及其資料 - Amazon Personalize

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

使用資料刪除工作刪除使用者及其資料

匯入資料之後,您可以從資料集群組中刪除使用者及其資料,包括他們的中繼資料和互動資料。您可以在合規計劃中刪除使用者資料,或是為了解決使用者刪除要求,或在使用者群變更時保持資料最新狀態。

刪除使用者後,Amazon Personalize 將不再對其資料進行訓練,也不會在產生使用者區段時再考慮使用者。

若要刪除 Amazon Personalize 資料集群組中使用者的參考和資料集群組中的模型,請執行下列動作:

  1. 準備 CSV 檔案,該檔案會在 USER_ID 欄中列出要刪除之使用者的使用者 ID。

  2. 將 CSV 檔案上傳到 Amazon S3 儲存貯體。您的 Amazon Personalize 服務角色必須具有存取此儲存貯體的權限。

  3. 建立資料刪除工作。資料刪除工作是一種批次工作,會從資料集群組中的模型和資料集中刪除使用者及其資料。

指引和要求

以下是刪除使用者的準則和需求:

  • 建立資料刪除工作之前,請確定沒有使用資料集的工作正在進行中,例如訓練工作、批次工作或大量或個別匯入作業。並避免在資料刪除工作正在進行時建立此類工作。如果發生任何訓練或匯入,我們無法保證會從模型中刪除使用者的資料,我們建議您建立額外的資料刪除工作。

  • 資料刪除任務不會刪除 Amazon Personalize 以外的使用者參考。例如,它不會從 Amazon S3 儲存貯體的批次建議中刪除其 userId。您必須手動刪除這些記錄。

  • 對於狀態為「待處理」的資料集群組,您最多可以有 5 個刪除工作。

  • 您的數據刪除輸入文件或文件的最大總大小為 50 MB。您可以在建立刪除工作時重複使用相同的輸入檔案。

  • 每個資料刪除工作都會刪除資料集群組中的使用者及其互動資料。若要刪除所有資料集群組中的資料,您必須為每個資料集群組建立資料刪除工作。

  • 建立工作後,最多可能需要一天的時間才能從資料集和模型中刪除使用者的資料。

  • 工作完成後,請務必更新任何自訂資源。請務必建立新的解決方案版本,並在必要時更新您的促銷活動。如果您使用自動訓練,您仍然可以手動建立新的解決方案版本。

  • 您的 Amazon Personalize 服務角色必須具有權限,才能使用要刪除的使用者清單存取 Amazon S3 儲存貯體。它需要值區GetObject及其內容的ListBucket權限。這些權限與匯入資料相同。如需有關授與權限和原則範例的資訊,請參閱讓 Amazon Personalize 化訪問 Amazon S3 資源

  • 您無法在儲存 AWS Key Management Service 要刪除之使用者的使用者 ID 清單的 Amazon S3 儲存貯體上使用自己的金鑰。

  • 如果項目只出現在項目互動資料集資料集中,而且只有您要刪除的使用者與此項目互動,則此項目將不再出現在建議中。

準備要刪除的使用者清單

從 Amazon Personalize 刪除使用者之前,您必須在 CSV 檔案中準備要刪除的使用者清單,並將其上傳到 Amazon S3。

若要準備要刪除和上傳的使用者清單
  1. 建立 CSV 檔案,列出要刪除之使用者的使用者 ID。以下說明如何格式化 CSV 檔案。

    USER_ID abc 2a 5basc ab35 123f a55d 0v22 441fa efg
  2. 將您的 CSV 檔案上傳到 Amazon 簡易儲存服務 (Amazon S3) 儲存貯體。如需將檔案上傳到 Amazon S3 的詳細資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用拖放上傳檔案和資料夾

  3. 讓 Amazon Personalize 存取您的儲存貯體和 CSV 檔案。Amazon Personalize 必須擁有對儲存貯體GetObject及其內容執行和ListBucket動作的權限。這些權限與匯入資料相同。如需有關授與權限和原則範例的資訊,請參閱讓 Amazon Personalize 化訪問 Amazon S3 資源

建立資料刪除工作

完成之後準備要刪除的使用者清單,您就可以刪除具有資料刪除工作的使用者了。

資料刪除工作是一種批次工作,會從資料集群組中的模型和資料集中刪除使用者及其資料。刪除使用者後,Amazon Personalize 將不再對其資料進行訓練,也不會在產生使用者區段時再考慮使用者。

建立資料刪除任務時,請指定要刪除的使用者清單的 Amazon S3 位置。

  • 如果您的資料位於單一檔案中,請在 Amazon S3 位置使用下列語法:

    s3://<name of your S3 bucket>/<folder path>/<CSV filename>.csv

  • 如果 CSV 檔案位於 Amazon S3 儲存貯體的資料夾中,您可以指定資料夾的路徑。透過資料刪除任務,Amazon Personalize 會使用資料夾和任何子資料夾中副.csv檔名為副檔名的所有檔案。它忽略任何其他類型的文件。在資料夾名稱/後使用下列語法:

    s3://<name of your S3 bucket>/<folder path>/

您使用的角色必須具有對 Amazon S3 儲存貯體GetObject及其內容執行和ListBucket動作的權限。如需有關授與權限和原則範例的資訊,請參閱讓 Amazon Personalize 化訪問 Amazon S3 資源

您可以使用 Amazon Personalize 主控台 AWS Command Line Interface (AWS CLI) 或 AWS 開發套件建立資料刪除任務。

若要使用 Amazon Personalize 主控台刪除使用者,請使用名稱、IAM 服務角色和資料的 Amazon S3 位置建立資料刪除任務。

若要刪除記錄 (主控台)
  1. https://console.aws.amazon.com/personalize/home 打開 Amazon Personalize 化控制台並登錄到您的帳戶。

  2. 在 [資料集群組] 頁面上,選擇您的資料集群組。資料集群組概觀隨即顯示。

  3. 在導覽窗格中,選擇 [資料集]。

  4. 資料刪除工作中,選擇建立工作

  5. 在 [Job 詳細資料] 中,為工作命名。

  6. S3 輸入來源中,對於 S3 位置,指定存放要刪除之使用者的使用者 ID 清單的 CSV 檔案的 Amazon S3 位置。您已在中準備好此檔案準備要刪除的使用者清單

  7. IAM 角色中,選擇建立新角色或使用現有角色。如果您已完成為 Amazon Personalize 建立角色的先決條件,並將此角色存取權授與 Amazon S3 儲存貯體,請選擇使用現有的服務角色並指定您在其中建立的角色為 Amazon Personalize 化創建 IAM 角色

    您使用的角色必須具有對 Amazon S3 儲存貯體GetObject及其內容執行和ListBucket動作的權限。這些權限與匯入資料相同。如需有關授與權限和原則範例的資訊,請參閱讓 Amazon Personalize 化訪問 Amazon S3 資源

  8. 對於「標籤」,選擇性地新增任何標籤 如需標記 Amazon Personalize 資源的詳細資訊,請參閱標記 Amazon Personalize 化資

  9. 選擇建立作業。工作開始並顯示詳細資訊頁面。

    建立工作後,大約有一天的時間可以從資料集和模型中刪除使用者的資料。在任務完成之前,Amazon Personalize 會在訓練時繼續使用這些資料。並且用戶可能會出現在用戶細分中。

    當狀態顯示為「已完成」時,資料刪除已完成。如果工作因任何原因而失敗,建議您建立另一個資料刪除工作。工作完成後,請務必更新任何自訂資源。請務必建立新的解決方案版本,並在必要時更新您的促銷活動。如果您使用自動訓練,您仍然可以手動建立新的解決方案版本。

若要使用刪除使用者 AWS CLI,請使用create-data-deletion-job指令。此命令使用 CreateDataDeletion API 操作。下面的代碼演示了如何創建一個數據刪除作業。若要使用程式碼,請更新程式碼以指定任務名稱、您在其中建立的 IAM 角色為 Amazon Personalize 化創建 IAM 角色,以及資料的 Amazon S3 位置。您已在中準備好此檔案準備要刪除的使用者清單

aws personalize create-data-deletion-job \ --job-name deletion job name \ --dataset-group-arn dataset group ARN \ --data-source dataLocation=s3://bucketname/filename.csv \ --role-arn roleArn

建立工作後,大約有一天的時間可以從資料集和模型中刪除使用者的資料。在任務完成之前,Amazon Personalize 會在訓練時繼續使用這些資料。並且用戶可能會出現在用戶細分中。

當狀態為「已完成」時,工作即完成。使用指describe-data-deletion-job令檢查狀態,並指定資料刪除工作 ARN。如需 API 作業的詳細資訊,請參閱DescribeDataDeletionJob。若要檢視依建立時間排序的資料刪除工作歷程記錄,請使用 ListDataDeletionJobs API 作業。

如果工作因任何原因而失敗,建議您建立另一個資料刪除工作。工作完成後,請務必更新任何自訂資源。請務必建立新的解決方案版本,並在必要時更新您的促銷活動。如果您使用自動訓練,您仍然可以手動建立新的解決方案版本。

若要刪除具有 AWS SDK 的使用者,請使用 CreateDataDeletionJob API 作業。下面的代碼演示了如何創建一個數據刪除作業。若要使用程式碼,請更新程式碼以指定任務名稱、您在其中建立的 IAM 角色為 Amazon Personalize 化創建 IAM 角色,以及資料的 Amazon S3 位置。您已在中準備好此檔案準備要刪除的使用者清單

import boto3 personalize = boto3.client('personalize') response = personalize.create_data_deletion_job( jobName = 'Deletion job name', datasetGroupArn = 'Dataset Group ARN', dataSource = {'dataLocation':'s3://bucket/file.csv'}, roleArn = 'role_arn' ) deletion_job_arn = response['dataDeletionJobArn'] print ('Deletion Job arn: ' + deletion_job_arn) description = personalize.describe_data_deletion_job( dataDeletionJobArn = deletion_job_arn)['dataDeletionJob'] print('Name: ' + description['jobName']) print('ARN: ' + description['dataDeletionJobArn']) print('Status: ' + description['status'])

建立工作後,大約有一天的時間可以從資料集和模型中刪除使用者的資料。在任務完成之前,Amazon Personalize 會在訓練時繼續使用這些資料。並且用戶可能會出現在用戶細分中。

當狀態為「已完成」時,工作即完成。使用DescribeDataDeletionJob作業檢查狀態,並指定資料刪除工作 ARN。若要檢視依建立時間排序的資料刪除工作歷程記錄,請使用 ListDataDeletionJobs API 作業。

如果工作因任何原因而失敗,建議您建立另一個資料刪除工作。工作完成後,請務必更新任何自訂資源。請務必建立新的解決方案版本,並在必要時更新您的促銷活動。如果您使用自動訓練,您仍然可以手動建立新的解決方案版本。