

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

# 建立 Amazon Personalize 資料集群組
<a name="data-prep-ds-group"></a>

[為資料建立結構描述 JSON 檔案](how-it-works-dataset-schema.md)之後，您就可以建立資料集群組。在 Amazon Personalize 中，*資料集群組*是 Amazon Personalize 資源的容器，包括資料集、網域建議者和自訂資源。資料集群組會將您的資源組織成獨立的集合，其中來自一個資料集群組的資源不會影響任何其他資料集群組中的資源。

 您可以為每個業務網域建立資料集群組。例如，您可能有一個應用程式提供串流視訊的建議，另一個應用程式則提供音訊書籍的建議。在 Amazon Personalize 中，您會為每個應用程式建立資料集群組。如此一來，一個應用程式的資料不會影響 Amazon Personalize 為另一個應用程式產生的建議。

 您可以建立網域資料集群組或自訂資料集群組：
+ 使用*網域資料集群組*，您可以建立針對不同使用案例預先設定和最佳化的資源。當您建立資料集群組時，您可以指定 VIDEO\$1ON\$1DEMAND 或 ECOMMERCE 的網域，使其成為網域資料集群組。

  如果您有串流影片或電子商務應用程式，建議您建立網域資料集群組。您仍然可以新增自訂資源，例如針對自訂使用案例訓練的解決方案和解決方案版本。您無法在網域資料集群組中建立下一個最佳動作資源，包括動作和動作互動資料集。
+  *自訂資料集群組*僅包含您根據使用案例設定的自訂資源。使用自訂資源，您可以根據您的業務需求，訓練和部署可設定的解決方案和解決方案版本 （經過訓練的 Amazon Personalize 建議模型）。如果沒有 VIDEO\$1ON\$1DEMAND 或 ECOMMERCE 應用程式，建議您建立自訂資料集群組。否則，我們建議您從網域資料集群組開始，並視需要新增自訂資源。

您可以使用 Amazon Personalize 主控台、 AWS Command Line Interface (AWS CLI) 或 AWS SDKs建立資料集群組。

**Topics**
+ [建立資料集群組 （主控台）](#data-prep-creating-ds-group-console)
+ [建立資料集群組 (AWS CLI)](#data-prep-creating-ds-group-cli)
+ [建立資料集群組AWS SDKs)](#data-prep-creating-ds-group-sdk)

## 建立資料集群組 （主控台）
<a name="data-prep-creating-ds-group-console"></a>

在 Amazon Personalize 主控台中指定資料集群組名稱，以建立資料集群組。

**建立資料集群組**

1. 在 [https://console.aws.amazon.com/personalize/home](https://console.aws.amazon.com/personalize/home)：// 開啟 Amazon Personalize 主控台並登入您的帳戶。

1. 選擇 **Create dataset group (建立資料集群組)**。

1. 如果這是您第一次使用 Amazon Personalize，請在**建立新資料集群組**頁面上****，選擇**開始使用**。

1. 在 **Dataset group details (資料集群組詳細資訊)** 中，針對 **Dataset group name (資料集群組名稱)**，為您的資料集群組指定名稱。

1. 選擇您的**網域**：
   + 選擇**電子商務**以建立 ECOMMERCE 網域資料集群組。
   + 選擇**隨選視訊**以建立 VIDEO\$1ON\$1DEMAND 網域資料集群組。
   +  選擇**自訂**以建立僅具有自訂資源的自訂資料集群組，例如解決方案、行銷活動和批次推論任務。

1. 對於**標籤**，選擇性地新增任何標籤。如需標記 Amazon Personalize 資源的詳細資訊，請參閱 [標記 Amazon Personalize 資源](tagging-resources.md)。

1. 選擇 **Create dataset group (建立資料集群組)**。**概觀**頁面隨即顯示。您現在已準備好建立結構描述和資料集。請參閱 [建立結構描述和資料集](data-prep-creating-datasets.md)。

## 建立資料集群組 (AWS CLI)
<a name="data-prep-creating-ds-group-cli"></a>

若要建立資料集群組，請使用 `create-dataset-group`操作。若要建立網域資料集群組，請為網域指定 `ECOMMERCE`或 `VIDEO_ON_DEMAND`。若要建立自訂資料集群組，請勿指定網域。您可以使用 Tags 參數，選擇性地在 Amazon Personalize 中標記資源。如需範例，請參閱 [新增標籤 (AWS CLI)](tags-add.md#add-tag-cli)。

下列程式碼會為網域建立`VIDEO_ON_DEMAND`網域資料集群組。

```
aws personalize create-dataset-group \
--name dataset-group-name \
--domain VIDEO_ON_DEMAND
```

如果成功，資料集群組 Amazon Resource Name (ARN) 會顯示如下。

```
{
  "datasetGroupArn": "arn:aws:personalize:us-west-2:acct-id:dataset-group/DatasetGroupName"
}
```

記錄此值以供日後使用。若要顯示您建立的資料集群組，請使用 `describe-dataset-group`命令並指定傳回的資料集群組 ARN。

```
aws personalize describe-dataset-group \
--dataset-group-arn dataset group arn
```

資料集群組及其屬性會顯示如下。

```
{
    "datasetGroup": {
        "name": "DatasetGroupName",
        "datasetGroupArn": "arn:aws:personalize:us-west-2:acct-id:dataset-group/DatasetGroupName",
        "status": "ACTIVE",
        "creationDateTime": 1542392161.262,
        "lastUpdatedDateTime": 1542396513.377
    }
}
```

當資料集群組的 `status` 為 ACTIVE 時，您就可以建立結構描述和資料集。請參閱 [建立結構描述和資料集](data-prep-creating-datasets.md)。

## 建立資料集群組AWS SDKs)
<a name="data-prep-creating-ds-group-sdk"></a>

使用下列程式碼來建立網域資料集群組。為網域資料集群組命名，並為 `domain`指定 `ECOMMERCE`或 `VIDEO_ON_DEMAND`。若要建立自訂資料集群組，請修改程式碼以移除網域參數。

 如需 API 操作的詳細資訊，請參閱 API 參考區段[CreateDatasetGroup](API_CreateDatasetGroup.md)中的 。您可以使用 Tags 參數，選擇性地在 Amazon Personalize 中標記資源。如需範例，請參閱 [新增標籤AWS SDKs)](tags-add.md#add-tag-sdk)。

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

```
import boto3

personalize = boto3.client('personalize')

response = personalize.create_dataset_group(
  name = 'dataset group name',
  domain = 'business domain'
)
dsg_arn = response['datasetGroupArn']

description = personalize.describe_dataset_group(datasetGroupArn = dsg_arn)['datasetGroup']

print('Name: ' + description['name'])
print('ARN: ' + description['datasetGroupArn'])
print('Status: ' + description['status'])
```

------
#### [ SDK for Java 2.x ]

```
public static String createDomainDatasetGroup(PersonalizeClient personalizeClient, 
                                              String datasetGroupName,
                                              String domain) {

    try {
        CreateDatasetGroupRequest createDatasetGroupRequest = CreateDatasetGroupRequest.builder()
                .name(datasetGroupName)
                .domain(domain)
                .build();
        return personalizeClient.createDatasetGroup(createDatasetGroupRequest).datasetGroupArn();
    } catch (PersonalizeException e) {
        System.out.println(e.awsErrorDetails().errorMessage());
    }
    return "";
}
```

------
#### [ SDK for JavaScript v3 ]

```
// Get service clients module and commands using ES6 syntax.
import { CreateDatasetGroupCommand } from "@aws-sdk/client-personalize";
import { personalizeClient } from "./libs/personalizeClients.js";

// Or, create the client here.
// const personalizeClient = new PersonalizeClient({ region: "REGION"});

// Set the domain dataset group parameters.
export const domainDatasetGroupParams = {
  name: "NAME" /* required */,
  domain:
    "DOMAIN" /* required for a domain dsg, specify ECOMMERCE or VIDEO_ON_DEMAND */,
};

export const run = async () => {
  try {
    const response = await personalizeClient.send(
      new CreateDatasetGroupCommand(domainDatasetGroupParams),
    );
    console.log("Success", response);
    return response; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

------

[DescribeDatasetGroup](API_DescribeDatasetGroup.md) 操作會傳回 `datasetGroupArn`和 操作的狀態。當資料集群組的 `status` 為 ACTIVE 時，您就可以建立結構描述和資料集。請參閱[建立結構描述和資料集](data-prep-creating-datasets.md)。