将 SageMaker Canvas 应用程序数据存储在您自己的 SageMaker空间中 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

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

您的 Amazon SageMaker Canvas 应用程序数据,例如您导入的数据集和模型构件,存储在 Amazon SageMaker Studio 的私有空间中。该空间包括用于存储应用程序数据的存储卷(每个用户配置文件有 100 GB 的存储空间)、空间类型(在本例中为 Canvas 应用程序)以及应用程序容器的映像。当你设置 Canvas 并首次启动应用程序时, SageMaker 会创建一个分配给你的用户个人资料的默认私有空间并存储你的 Canvas 数据。您无需进行任何其他配置即可设置空间,因为 SageMaker 系统会自动代表您创建空间。

但是,如果您不想使用默认空间,则可以选择指定自己创建的空间。如果您想隔离数据,这可能很有用。下一页向您展示如何创建和配置自己的 Studio 空间来存储 Canvas 应用程序数据。

注意

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

创建新空间

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

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

SDK for Python (Boto3)

以下示例向您展示如何使用该 Amazon 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。有关更多信息,请参阅 亚马逊 SageMaker Studio 空间

  • 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' } )
Amazon CLI

以下示例向您展示如何使用该 Amazon CLI create-space方法创建可用于 Canvas 应用程序的空间。请务必指定以下参数:

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

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

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

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

  • 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 应用程序,将该空间指定为其存储位置。

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

重要

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

SDK for Python (Boto3)

以下示例向您展示如何使用该 Amazon 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' )
Amazon CLI

以下示例向您展示如何使用该 Amazon 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 应用程序,存储在该空间中的数据仍然保留。只有当您删除用户个人资料或直接删除空间时,存储在空间中的数据才会被删除。