在自己的 SageMaker空間中存儲 SageMaker Canvas 應用程序數據 - Amazon SageMaker

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

在自己的 SageMaker空間中存儲 SageMaker Canvas 應用程序數據

您的 Amazon SageMaker Canvas 應用程式資料 (例如匯入的資料集和模型成品) 會儲存在 Amazon SageMaker Studio 私人空間中。此空間包含應用程式資料的儲存磁碟區,每個使用者設定檔有 100 GB 的儲存空間、空間類型 (在本例中為 Canvas 應用程式),以及應用程式容器的映像檔。當您設定 Canvas 並首次啟動應用程式時, SageMaker 會建立指派給您的使用者設定檔並儲存 Canvas 資料的預設私人空間。您不需要執行任何其他設定即可設定空間,因為 SageMaker 會代表您自動建立空間。

但是,如果您不想使用預設空間,您可以選擇指定您自己建立的空間。如果您想要隔離資料,這可能很有用。下面的頁面向您展示如何創建和配置自己的 Studio 空間來存儲 Canvas 應用程序數據。

注意

您只能為新的 Canvas 應用程式設定自訂工作室空間。您無法修改現有 Canvas 應用程式的空間設定。

開始之前

您的 Amazon SageMaker 網域或使用者設定檔必須至少有 100 GB 的儲存空間,才能建立和使用 SageMaker Canvas 應用程式。

如果您是透過 SageMaker 主控台建立網域,預設會佈建足夠的儲存空間,而且您不需要採取任何其他動作。如果您使用或建立網域CreateDomain或使用者設定檔 CreateUserProfileAPIs,請務必將MaximumEbsVolumeSizeInGb值設定為 100 GB 或更大。若要設定較高的儲存空間值,您可以建立新的網域或使用者設定檔,也可以使用或更新現有的網域或使用者設定UpdateDomain UpdateUserProfileAPIs。

建立新空間

首先,創建一個配置為存儲 Canvas 應用程序數據的新 Studio 空間。這是您在下一個步驟中建立新 Canvas 應用程式時指定的空間。

若要建立空間,您可以使用 AWS SDK for Python (Boto3) 或 AWS CLI。

SDK for Python (Boto3)

下列範例說明如何使用此方 AWS SDK for Python (Boto3) create_space法建立可用於 Canvas 應用程式的空間。請務必指定下列參數:

  • DomainId:指定 SageMaker 網域的 ID。若要尋找您的 ID,您可以前往 SageMaker 主控台,https://console.aws.amazon.com/sagemaker/並在「網域」區段中找到您的網域

  • SpaceName:指定新空間的名稱。

  • EbsVolumeSizeinGb:指定空間的儲存磁碟區大小 (以 GB 為單位)。最小值為5,最大值為16384

  • SharingType:將此欄位指定為Private。如需詳細資訊,請參閱Amazon SageMaker 工作室

  • OwnerUserProfileName:指定使用者設定檔名稱。若要尋找與網域相關聯的使用者設定檔名稱,您可以前往 SageMaker 主控台,https://console.aws.amazon.com/sagemaker/並在「網域」區段中找到您的網域。在網域的設定中,您可以檢視使用者設定檔。

  • AppType:將此欄位指定為Canvas

response = client.create_space( DomainId='<your-domain-id>', SpaceName='<your-new-space-name>', SpaceSettings={ 'AppType': 'Canvas', 'SpaceStorageSettings': { 'EbsStorageSettings': { 'EbsVolumeSizeInGb': <storage-volume-size> } }, }, OwnershipSettings={ 'OwnerUserProfileName': '<your-user-profile>' }, SpaceSharingSettings={ 'SharingType': 'Private' } )
AWS CLI

下列範例說明如何使用此方 AWS CLI create-space法建立可用於 Canvas 應用程式的空間。請務必指定下列參數:

  • domain-id:指定網域的 ID。若要尋找您的 ID,您可以前往 SageMaker 主控台,https://console.aws.amazon.com/sagemaker/並在「網域」區段中找到您的網域

  • space-name:指定新空間的名稱。

  • EbsVolumeSizeinGb:指定空間的儲存磁碟區大小 (以 GB 為單位)。最小值為5,最大值為16384

  • SharingType:將此欄位指定為Private。如需詳細資訊,請參閱Amazon SageMaker 工作室

  • OwnerUserProfileName:指定使用者設定檔名稱。若要尋找與網域相關聯的使用者設定檔名稱,您可以前往 SageMaker 主控台,https://console.aws.amazon.com/sagemaker/並在「網域」區段中找到您的網域。在網域的設定中,您可以檢視使用者設定檔。

  • AppType:將此欄位指定為Canvas

create-space --domain-id <your-domain-id> --space-name <your-new-space-name> --space-settings '{ "AppType": "Canvas", "SpaceStorageSettings": { "EbsStorageSettings": {"EbsVolumeSizeInGb": <storage-volume-size>} }, }' --ownership-settings '{"OwnerUserProfileName": "<your-user-profile>"}' --space-sharing-settings '{"SharingType": "Private"}'

你現在應該有一個空間。追蹤您的空間名稱,以便進行下一個步驟。

建立新的畫布應用程式

建立空間後,請建立新的 Canvas 應用程式,將空間指定為其儲存位置。

若要建立新的 Canvas 應用程式,您可以使用 AWS SDK for Python (Boto3) 或 AWS CLI.

重要

您必須使用 AWS SDK for Python (Boto3) 或 AWS CLI 來建立 Canvas 應用程式。不支援透過 SageMaker 主控台建立 Canvas 應用程式時指定自訂空間。

SDK for Python (Boto3)

下面的例子說明如何使用該 AWS SDK for Python (Boto3) create_app方法來創建一個新的 Canvas 應用程序。請務必指定下列參數:

  • DomainId:指定 SageMaker 網域的 ID。

  • SpaceName:指定您在上一個步驟中建立的空間名稱。

  • AppType:將此欄位指定為Canvas

  • AppName:指定default為應用程式名稱。

response = client.create_app( DomainId='<your-domain-id>', SpaceName='<your-space-name>', AppType='Canvas', AppName='default' )
AWS CLI

下面的例子說明如何使用該 AWS CLI create-app方法來創建一個新的 Canvas 應用程序。請務必指定下列參數:

  • DomainId:指定 SageMaker 網域的 ID。

  • SpaceName:指定您在上一個步驟中建立的空間名稱。

  • AppType:將此欄位指定為Canvas

  • AppName:指定default為應用程式名稱。

create-app --domain-id <your-domain-id> --space-name <your-space-name> --app-type Canvas --app-name default

您現在應該有一個新的 Canvas 應用程序,該應用程序使用自定義 Studio 空間作為應用程序數據的存儲位置。

重要

每當您刪除 Canvas 應用程序(或註銷)並必須重新創建應用程序時,都必須在SpaceName字段中提供空間以確保 Canvas 使用您的空間。

空間會附加至您在空間配置中指定的使用者設定檔。您可以刪除 Canvas 應用程式而不刪除空間,並保留儲存在空間中的資料。僅當您刪除使用者設定檔或直接刪除空間時,儲存在您空間中的資料才會被刪除。