将 SageMaker Canvas 应用程序数据存储在你自己的 SageMaker AI 空间中 - 亚马逊 SageMaker AI

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 SageMaker Canvas 应用程序数据存储在你自己的 SageMaker AI 空间中

您的 Amazon SageMaker Canvas 应用程序数据,例如您导入的数据集和模型构件,存储在 Amazon SageMaker Studio 的私有空间中。此空间包括应用程序数据的存储卷(每个用户配置文件 100 GB 的存储空间)、空间类型(在本例中为 Canvas 应用程序)和应用程序容器的映像。当你设置 Canvas 并首次启动应用程序时, SageMaker AI 会创建一个默认的私有空间,分配给你的用户个人资料并存储你的 Canvas 数据。您无需进行任何其他配置即可设置空间,因为 SageMaker AI 会自动代表您创建空间。但是,如果您不想使用默认空间,则可以选择指定自己创建的空间。如果您想隔离数据,这将非常有用。下一页将向您介绍如何创建和配置自己的 Studio 空间,用于存储 Canvas 应用程序数据。

注意

您只能为新的 Canvas 应用程序配置自定义 Studio 空间。您不能修改现有 Canvas 应用程序的空间配置。

开始前的准备工作

要创建和使用 C SageMaker anvas 应用程序,您的 SageMaker Amazon AI 域或用户个人资料必须至少有 100 GB 的存储空间。

如果您通过 SageMaker AI 控制台创建了域,则默认情况下会配置足够的存储空间,您无需采取任何其他操作。如果您使用或创建了域名或用户个人资料 CreateUserProfile APIs,请确保将该MaximumEbsVolumeSizeInGb值设置为 100 GB 或更大。CreateDomain要设置更大的存储值,您可以创建新的域名或用户配置文件,也可以使用或更新现有的域名或用户配置文件 UpdateUserProfile APIs。UpdateDomain

创建新空间

首先,创建配置为存储 Canvas 应用程序数据的新的 Studio 空间。这是您在下一步中创建新的 Canvas 应用程序时指定的空间。

要创建空间,您可以使用 AWS SDK for Python (Boto3) 或 AWS CLI。

SDK for Python (Boto3)

以下示例向您展示如何使用该 AWS SDK for Python (Boto3) create_space方法创建可用于 Canvas 应用程序的空间。确保指定以下参数:

  • DomainId:为您的 SageMaker AI 域指定 ID。要查找您的 ID,您可以前往 SageMaker AI 控制台,https://console.aws.amazon.com/sagemaker/然后在 “域名” 部分找到您的域名

  • SpaceName:指定新空间的名称。

  • EbsVolumeSizeinGb:指定空间的存储卷大小(单位:GB)。最小值为 5,最大值为 16384

  • SharingType:将此字段指定为 Private。有关更多信息,请参阅 亚马逊 SageMaker Studio 空间

  • OwnerUserProfileName:指定用户配置文件名称。要查找与域名关联的用户个人资料名称,您可以前往 SageMaker AI 控制台,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 AI 控制台,https://console.aws.amazon.com/sagemaker/然后在 “域名” 部分找到您的域名

  • space-name:指定新空间的名称。

  • EbsVolumeSizeinGb:指定空间的存储卷大小(单位:GB)。最小值为 5,最大值为 16384

  • SharingType:将此字段指定为 Private。有关更多信息,请参阅 亚马逊 SageMaker Studio 空间

  • OwnerUserProfileName:指定用户配置文件名称。要查找与域名关联的用户个人资料名称,您可以前往 SageMaker AI 控制台,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 应用程序,指定此空间为其存储位置。

要创建新的 Canvas 应用程序,您可以使用 AWS SDK for Python (Boto3) 或 AWS CLI。

重要

必须使用 AWS SDK for Python (Boto3) 或 AWS CLI 来创建 Canvas 应用程序。不支持在通过 SageMaker AI 控制台创建 Canvas 应用程序时指定自定义空间。

SDK for Python (Boto3)

以下示例向您展示如何使用该 AWS SDK for Python (Boto3) create_app方法创建新的 Canvas 应用程序。确保指定以下参数:

  • DomainId:为您的 SageMaker AI 域指定 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 AI 域指定 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 应用程序,存储在空间中的数据仍会保留。只有当您删除用户配置文件或直接删除空间时,存储在空间中的数据才会删除。