

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

# 為所有的統一客戶設定檔資料設定大量匯出
<a name="set-up-bulk-export"></a>

**注意**  
若要完成本主題中的步驟，您需要具備開發人員技能，並具備使用 AWS KMS 和 Amazon S3 的經驗。

Amazon Connect Customer Profiles 建立統一的客戶設定檔時，會結合來自第一方和第三方來源的資料，以增強、精簡和改善原始資料和資訊，使其為更準確的設定檔。Customer Profiles 也會新增資料來改善資料集的品質。您可以將已改進的資料集用於其他使用案例，例如制定更明智和精準的行銷、銷售和客服策略。例如，您可能想善用統一的客戶設定檔，以：
+ 稽核您在整個網域中擁有的客戶資料。
+ 執行內部分析，例如分析銷售和行銷報告。
+ 將資料匯出至您的自有工具或第三方產品，以制定個人化廣告和瞄準客戶。

若要將統一的客戶設定檔資料用於其他使用案例，您可以將其大量匯出至 Amazon S3。本主題說明如何執行此操作。

**Topics**
+ [步驟 1：設定 KMS 金鑰和 S3 儲存貯體](#enable-cpbulk-export)
+ [步驟 2：建立大量匯出任務](#create-bulk-export-job)
+ [步驟 3：檢查大量匯出任務的狀態](#check-status-bulk-cp-export)
+ [步驟 4：在 S3 中檢視匯出的資料](#view-bulk-cp-export)
+ [更新大量匯出任務](#update-bulk-cp-export)
+ [刪除或取消大量匯出任務 - 不支援](#delete-bulk-cp-export)

## 步驟 1：設定 KMS 金鑰和 S3 儲存貯體
<a name="enable-cpbulk-export"></a>

若要為您的網域啟用大量匯出，您需要設定下列資源：
+  [具特定資源政策的 KMS 金鑰](#cp-kms)
+ [具特定資源政策的目的地 S3 儲存貯體](#cp-s3-bulk)。請勿在儲存貯體上設定[存取控制清單 (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acls.html)。

接下來會說明這些步驟。

### 建立新的 KMS 金鑰或重複使用現有 KMS 金鑰
<a name="cp-kms"></a>

若要設定大量匯出的 KMS 金鑰，您必須建立或重複使用與您計劃設定為大量匯出目的地的 Amazon S3 儲存貯體位於相同 AWS 區域中的現有 KMS 金鑰。您必須允許 Amazon Connect AppIntegrations 服務針對金鑰執行 KMS 動作。

將下列陳述式新增至您的**金鑰政策**。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "{{Enable AppIntegrations access to KMS key}}",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "{{arn:aws:iam::{{111122223333}}:root}}"
                ],
                "Service": [
                    "{{app-integrations.amazonaws.com}}"
                ]
            },
            "Action": [
                "kms:Encrypt*",
                "kms:Describe*",
                "kms:Decrypt*",
                "kms:GenerateDataKey*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### 設定 S3 目的地儲存貯體
<a name="cp-s3-bulk"></a>

您必須在與 KMS 金鑰相同的區域中設定新的或現有的儲存貯 AWS 體，並在 S3 儲存貯體上設定資源政策。

設定儲存貯體時，請務必選取**以 SSE-KMS 加密**，並使用先前程序的相同 KMS 金鑰。此外，請勿在 S3 儲存貯體上啟用 ACL。

以下是資源政策的範例。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "{{Allow AppIntegrations to write data to destination bucket}}",
            "Effect": "Allow",
            "Principal": {
                 "Service": [
                    "app-integrations.amazonaws.com"
                ]
            },
            "Action": [
                "s3:GetObject",
                "s3:ListBucket",
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::{{{{amzn-s3-demo-bucket1}}}}",
                "arn:aws:s3:::{{{{amzn-s3-demo-bucket2}}}}/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{AwsAccountId}}"
                },
                "ArnEquals": {
                    "aws:SourceArn": "arn:aws:*-*:{us-east-1}:{{AwsAccountId}}:data-integration/*" 
                }
            }
        }
    ]
}
```

------

## 步驟 2：建立大量匯出任務
<a name="create-bulk-export-job"></a>

若要建立大量匯出任務，請調用下列 Amazon Connect AppIntegrations API：

1. [CreateDataIntegration](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegration.html)：此 API 會建立與資料來源的整合 (例如 Customer Profiles)。

1. [CreateDataIntegrationAssociation](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegrationAssociation.html)：此 API 會使用資料來源，將資料寫入目的地 (例如 S3 儲存貯體)。

以下詳細說明如何呼叫這些 API。

### 建立資料整合
<a name="create-dataintegration"></a>

資料整合代表您資料的*資料來源*。您可以呼叫 [CreateDataIntegration](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegration.html) API 或執行 [create-data-integration](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/create-data-integration.html) CLI 命令來建立資料整合。您必須提供 Customer Profiles *物件類型*和 Customer Profiles *網域*。

如果您要匯出多個物件類型，則您需要為每個物件類型建立個別的資料整合。例如，如果您要同時匯出 `_profile` 和 `_asset` 物件，您需要建立兩個不同的資料整合。

**注意**  
過去 30 分鐘內擷取的任何資料均可能不會包含在匯出中。

下列程式碼範例示範如何執行 [create-data-integration](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/create-data-integration.html) CLI 命令。

```
aws appintegrations create-data-integration \ 
--region "us-west-2" \
--name "{{bulk-export-job-01}}" \ 
--description "{{Data integration for _profile objects}}" \
--kms-key "{{arn:aws:kms:us-west-2:123456789012:key/123456789012-1234-1234-123456789012}}" \ 
--source-uri "{{AmazonConnect://AppIntegrations}}" \ 
--object-configuration '{{{"CustomerProfiles":{"domainName":["my-domain-pdx"],"objectType":["_profile"]}}}}'
```

下列程式碼範例示範如何呼叫 [CreateDataIntegration](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegration.html) API。

```
{
    "Description": "{{Data integration for _profile objects}}",
    "KmsKey": "{{arn:aws:kms:us-west-2:123456789012:key/123456789012-1234-1234-123456789012}}",
    "Name": "{{unique-data-integration-name-01}}",
    "SourceURI": "AmazonConnect://AppIntegrations",
    "ObjectConfiguration": {
        "CustomerProfiles": {
            "domainName": [
                "{{my-domain-pdx}}"
            ],
            "objectType": [
                "_profile"
            ]
        }
    }
}
```

### 建立資料整合關聯
<a name="create-dataintegration"></a>

資料整合關聯代表您要匯出資料的目的地，以及選擇匯出資料的時間範圍。您可以呼叫 [CreateDataIntegrationAssociation](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegrationAssociation.html) API 或執行 [create-data-integration-association](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/create-data-integration-association.html) CLI 命令來建立資料整合。您可以使用 `StartTime` 和 `EndTime` 屬性來設定時間範圍。此時間範圍對應至 Customer Profiles 中上次更新物件的時間。

您指定的目的地 S3 儲存貯體可以只是儲存貯體名稱，也可以包含要匯出資料的其他資料夾或 S3 字首。

**注意**  
如需了解**並行大量匯出任務**的配額，請參閱 [Connect Customer Customer Profiles 服務配額](amazon-connect-service-limits.md#customer-profiles-quotas)。無論大量匯出任務完成或失敗，往後不會再計入並行配額。

下列程式碼範例示範如何執行 [create-data-integration-association](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/create-data-integration-association.html) CLI 命令。

```
aws appintegrations create-data-integration-association \
--region "us-west-2" \
--data-integration-identifier "{{unique-data-integration-name-01}}" \
--destination-uri "{{s3://{{amzn-s3-demo-bucket1}}}}" \
--execution-configuration '{{{"ExecutionMode": "ON_DEMAND", "OnDemandConfiguration": {"StartTime":"1715278292014", "EndTime":"1715364692014"}}}}'
```

下列程式碼範例示範如何呼叫 [CreateDataIntegrationAssociation](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_CreateDataIntegrationAssociation.html) API。

```
{
    "DataIntegrationIdentifier": "arn:aws:app-integrations:us-west-2:123456789012:data-integration/123456789012-1234-1234-123456789012",
    "DestinationURI": "s3://amzn-s3-demo-bucket1",
    "ExecutionConfiguration": {
        "ExecutionMode": "ON_DEMAND",
        "OnDemandConfiguration": {
            "StartTime": "1713565000004",
            "EndTime": "1713565000005"
        }
    }
}
```

## 步驟 3：檢查大量匯出任務的狀態
<a name="check-status-bulk-cp-export"></a>

若要檢視大量匯出任務的狀態，您可以呼叫 [ListDataIntegrationAssociations](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_ListDataIntegrationAssociations.html) API，或執行 [list-data-integration-associations](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/list-data-integration-associations.html) CLI 命令。

下列程式碼範例示範如何執行 [list-data-integration-associations](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/list-data-integration-associations.html) CLI 命令。

```
aws appintegrations list-data-integration-associations \
--region "us-west-2" \
--data-integration-identifier "{{unique-data-integration-name-01}}"
```

## 步驟 4：在 S3 中檢視匯出的資料
<a name="view-bulk-cp-export"></a>

資料整合關聯在 `IN_PROGRESS` 當中時，您會開始看到資料複製到 S3 儲存貯體。

匯出的資料使用下列路徑結構寫入：
+ {BucketNameAndFolderName}
  + {AwsAccountId}
    + {DomainName}
      + {RequestTimestamp}
        + {lStartTime}-{EndTime}
          + {ObjectTypeName}
            + <filename: uuid>

以下是路徑範例：

`amzn-s3-demo-bucket1/123456789012/my-domain-pdx/20240607T175023/20240101T235959-20240430T235959/_profile/123456789012-1234-1234-123456789012`

## 更新大量匯出任務
<a name="update-bulk-cp-export"></a>

任務完成後，您可以使用不同的資料提取開始時間和結束時間，更新資料整合關聯。這會建立新的大量匯出任務。如果您過去曾執行大量匯出，並且只想匯出自上次匯出以來更新的資料，您可以執行此操作。例如，如果您的最後一個大量匯出任務是在三個月前，您可以更新資料整合關聯的時間範圍為 3 個月前。

您可以呼叫 [UpdateDataIntegrationAssociation](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-app-integrations_UpdateDataIntegrationAssociation.html) API，或執行 [update-data-integration-association](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/update-data-integration-association.html) CLI 命令來更新匯出任務。

下列程式碼範例示範如何執行 [update-data-integration-association](https://docs.aws.amazon.com/cli/latest/reference/appintegrations/update-data-integration-association.html) CLI 命令。

```
aws appintegrations update-data-integration-association \
--region "us-west-2" \
--data-integration-identifier "{{unique-data-integration-name-01}}" \
--data-integration-association-identifier "{{arn:aws:app-integrations:us-west-2:123456789012:data-integration-association/123456789012-1234-1234-123456789012/123456789012-1234-1234-123456789012}}" \ 
--execution-configuration '{{{"ExecutionMode": "ON_DEMAND", "OnDemandConfiguration": {"StartTime":"1715278292014", "EndTime":"1715364692014"}}}}'
```

## 刪除或取消大量匯出任務 - 不支援
<a name="delete-bulk-cp-export"></a>

您無法刪除或取消大量匯出。完成的匯出任務不會計入匯出配額。