

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

# 將 SageMaker Canvas 應用程式資料存放在您自己的 SageMaker AI 空間
<a name="canvas-spaces-setup"></a>

您的 Amazon SageMaker Canvas 應用程式資料會存放在 *Amazon SageMaker Studio 私有空間*，例如您匯入的資料集和模型成品。空間包含應用程式資料的儲存磁碟區 (每個使用者設定檔具有 100 GB 的儲存體)、空間類型 (在此情況下為 Canvas 應用程式)，以及應用程式容器的映像。當您第一次設定 Canvas 並啟動應用程式時，SageMaker AI 會建立指派給使用者設定檔的預設私有空間，並存放您的 Canvas 資料。您不需要進行任何額外的組態來設定空間，因為 SageMaker AI 會自動代表您建立空間。不過，如果您不想要使用預設空間，您可以選擇指定自己建立的空間。如果您想要隔離資料，這會很有用。以下頁面說明如何建立和設定您自己的 Studio 空間來存放 Canvas 應用程式資料。

**注意**  
您只能為新的 Canvas 應用程式設定自訂 Studio 空間。您無法修改現有 Canvas 應用程式的空間組態。

## 開始之前
<a name="canvas-spaces-setup-prereqs"></a>

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

如果您透過 SageMaker AI 主控台建立了網域，預設會佈建足夠的儲存體，而且您不需要採取任何其他動作。如果您使用 [CreateDomain](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateDomain.html) 或 [ CreateUserProfile](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateUserProfile.html) API 建立了網域或使用者設定檔，請確定您將 `MaximumEbsVolumeSizeInGb` 值設定為 100 GB 或更高。若要設定更大的儲存值，您可以建立新的網域或使用者設定檔，也可以使用 [UpdateDomain](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateDomain.html) 或 [UpdateUserProfile](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateUserProfile.html) API 更新現有的網域或使用者設定檔。

## 建立新空間
<a name="canvas-spaces-setup-new-space"></a>

首先，建立一個設定為存放 Canvas 應用程式資料的新 Studio 空間。這是您在下一個步驟中建立新 Canvas 應用程式時指定的空間。

若要建立空間，您可以使用 適用於 Python (Boto3) 的 AWS SDK 或 AWS CLI。

------
#### [ SDK for Python (Boto3) ]

下列範例說明如何使用 適用於 Python (Boto3) 的 AWS SDK `create_space`方法建立可用於 Canvas 應用程式的空間。請務必指定這些參數：
+ `DomainId`：指定 SageMaker AI 網域的 ID。若要尋找您的 ID，您可以前往 SageMaker AI 主控台 (網址為 [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/))，並在**網域區段**中尋找您的網域。
+ `SpaceName`：指定新空間的名稱。
+ `EbsVolumeSizeinGb`：指定空間的儲存磁碟區大小 (以 GB 為單位)。下限值是 `5`，上限值是 `16384`。
+ `SharingType`：將此欄位指定為 `Private`。如需詳細資訊，請參閱[Amazon SageMaker Studio 空間](studio-updated-spaces.md)。
+ `OwnerUserProfileName`：指定使用者設定檔名稱。若要尋找與網域相關聯的使用者設定檔名稱，您可以前往 SageMaker AI 主控台 (網址為 [https://console.aws.amazon.com/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 AI 主控台 (網址為 [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/))，並在**網域區段**中尋找您的網域。
+ `space-name`：指定新空間的名稱。
+ `EbsVolumeSizeinGb`：指定空間的儲存磁碟區大小 (以 GB 為單位)。下限值是 `5`，上限值是 `16384`。
+ `SharingType`：將此欄位指定為 `Private`。如需詳細資訊，請參閱[Amazon SageMaker Studio 空間](studio-updated-spaces.md)。
+ `OwnerUserProfileName`：指定使用者設定檔名稱。若要尋找與網域相關聯的使用者設定檔名稱，您可以前往 SageMaker AI 主控台 (網址為 [https://console.aws.amazon.com/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 應用程式
<a name="canvas-spaces-setup-new-app"></a>

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

若要建立新的 Canvas 應用程式，您可以使用 適用於 Python (Boto3) 的 AWS SDK 或 AWS CLI。

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

------
#### [ SDK for Python (Boto3) ]

下列範例說明如何使用 適用於 Python (Boto3) 的 AWS SDK `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 應用程式而不刪除空間，而且存放在空間中的資料仍會保留。只有在您刪除使用者設定檔或直接刪除空間時，才會刪除存放在您空間中的資料。