모든 통합 고객 프로필 데이터에 대한 대량 내보내기 설정
참고
이 주제의 단계를 완료하려면 개발자 기술이 있어야 하며 AWS KMS 및 Amazon S3 사용에 대한 경험이 있어야 합니다.
Amazon Connect Customer Profiles가 통합 고객 프로필을 생성하면 자사 및 서드파티 소스의 데이터를 결합하여 원시 데이터와 정보를 더 정확한 프로필로 개선, 개선 및 개선합니다. Customer Profiles는 또한 새 데이터를 추가하여 데이터세트의 품질을 개선합니다. 향상된 데이터세트를 사용하여 더 많은 정보와 대상 마케팅, 영업 및 고객 서비스 전략을 공식화하는 등의 추가 사용 사례를 만들 수 있습니다. 예를 들어 통합 고객 프로필을 활용하여 다음을 수행할 수 있습니다.
-
도메인 전체의 고객 데이터를 감사합니다.
-
예를 들어 영업 및 마케팅 보고서에 대한 사내 분석을 수행합니다.
-
데이터를 자체 도구 또는 서드파티 제품으로 내보내 광고를 개인화하고 고객을 대상으로 지정합니다.
추가 사용 사례에 통합 고객 프로필 데이터를 활용하려면 Amazon S3로 대량 내보낼 수 있습니다. 이 주제에서는 이를 수행하는 방법을 설명합니다.
내용
1단계: KMS 키 및 S3 버킷 설정
도메인에 대한 대량 내보내기를 활성화하려면 다음 리소스를 설정해야 합니다.
-
특정 리소스 정책이 있는 대상 S3 버킷. 버킷에서 액세스 제어 목록(ACL)을 구성하지 마세요.
다음 단계에서 설명합니다.
새 KMS 키를 생성하거나 기존 KMS 키를 재사용합니다.
대량 내보내기를 위해 KMS 키를 설정하려면 대량 내보내기 대상으로 구성하려는 Amazon S3 버킷과 동일한 AWS 리전에 있는 기존 KMS 키를 생성하거나 재사용해야 합니다. Amazon Connect AppIntegrations 서비스가 키에 대한 KMS 작업을 수행하도록 허용해야 합니다.
키 정책에 다음 문을 추가합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
Enable AppIntegrations access to KMS key
", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::{{AwsAccountId}}:root
" ], "Service": [ "app-integrations.amazonaws.com
" ] }, "Action": [ "kms:Encrypt*", "kms:Describe*", "kms:Decrypt*", "kms:GenerateDataKey*" ], "Resource": "*" } ] }
S3 대상 버킷 설정
KMS 키와 동일한 AWS 리전에 새 버킷 또는 기존 버킷을 구성하고 S3 버킷에 리소스 정책을 구성해야 합니다.
버킷을 구성할 때 SSE-KMS를 사용한 암호화를 선택하고 이전 절차에서와 동일한 KMS 키를 사용해야 합니다. 또한 S3 버킷에서 ACL을 활성화하지 마세요.
다음은 리소스 정책의 예입니다.
{ "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:*-*:{{Region}}:{{AwsAccountId}}:data-integration/*" } } } ] }
2단계: 대량 내보내기 작업 생성
대량 내보내기 작업을 생성하려면 다음 Amazon Connect AppIntegrations API를 간접적으로 호출합니다.
-
CreateDataIntegration: 이 API는 데이터 소스(예: Customer Profiles)와의 통합을 생성합니다.
-
CreateDataIntegrationAssociation: 이 API는 데이터 소스를 사용하여 대상(예: S3 버킷)에 데이터를 씁니다.
다음은 이러한 API를 직접적으로 호출하는 방법에 대한 추가 설명입니다.
데이터 통합 생성
데이터 통합은 데이터의 데이터 소스를 나타냅니다. CreateDataIntegration API를 직접적으로 호출하거나 create-data-integration CLI 명령을 실행하여 데이터 통합을 생성할 수 있습니다. Customer Profiles 객체 유형 및 Customer Profiles 도메인을 제공해야 합니다.
여러 객체 유형을 내보내려면 각 객체에 대해 별도의 데이터 통합을 생성해야 합니다. 예를 들어 _profile
및 _asset
객체를 모두 내보내려면 두 개의 개별 데이터 통합을 생성해야 합니다.
참고
지난 30분 내에 수집된 모든 데이터는 내보내기에 포함되지 않을 수 있습니다.
다음 코드 샘플은 create-data-integration 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 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" ] } } }
데이터 통합 연결 생성
데이터 통합 연결은 데이터를 내보낼 대상과 내보낼 데이터를 선택할 시간 범위를 나타냅니다. CreateDataIntegrationAssociation API를 직접적으로 호출하거나 create-data-integration-association CLI 명령을 실행하여 데이터 통합을 생성할 수 있습니다. StartTime
및 EndTime
속성을 사용하여 시간 범위를 구성합니다. 이 시간 범위는 Customer Profiles에서 객체가 마지막으로 업데이트된 시기와 일치합니다.
지정한 대상 S3 버킷은 버킷 이름일 뿐이거나 데이터를 내보낼 추가 폴더 또는 S3 접두사를 포함할 수 있습니다.
참고
동시 대량 내보내기 작업의 할당량은 Amazon Connect Customer Profiles 서비스 할당량 섹션을 참조하세요. 대량 내보내기 작업이 완료되거나 실패하면 더 이상 동시성 할당량에 포함되지 않습니다.
다음 코드 샘플은 create-data-integration-association CLI 명령을 실행하는 방법을 보여줍니다.
aws appintegrations create-data-integration-association \ --region "us-west-2" \ --data-integration-identifier "
unique-data-integration-name-01
" \ --destination-uri "s3://
" \ --execution-configuration 'amzn-s3-demo-bucket1
{"ExecutionMode": "ON_DEMAND", "OnDemandConfiguration": {"StartTime":"1715278292014", "EndTime":"1715364692014"}}
'
다음 코드 샘플은 CreateDataIntegrationAssociation 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단계: 대량 내보내기 작업의 상태 확인
대량 내보내기 작업의 상태를 보려면 ListDataIntegrationAssociations API를 직접적으로 호출하거나 list-data-integration-associations CLI 명령을 실행할 수 있습니다.
다음 코드 샘플은 list-data-integration-associations CLI 명령을 실행하는 방법을 보여줍니다.
aws appintegrations list-data-integration-associations \ --region "us-west-2" \ --data-integration-identifier "
unique-data-integration-name-01
"
4단계: S3에서 내보낸 데이터 보기
데이터 통합 연결이 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
대량 내보내기 작업 업데이트
작업이 완료되면 다른 데이터 풀 시작 시간 및 데이터 풀 종료 시간으로 데이터 통합 연결을 업데이트할 수 있습니다. 이렇게 하면 새 대량 내보내기 작업이 생성됩니다. 과거에 대량 내보내기를 수행했고 이전 내보내기 이후 업데이트된 데이터만 내보내려는 경우 이 작업을 수행할 수 있습니다. 예를 들어 마지막 대량 내보내기 작업이 3개월 전인 경우 데이터 통합 연결을 3개월 전부터 오늘까지의 기간으로 업데이트할 수 있습니다.
UpdateDataIntegrationAssociation API를 직접적으로 호출하거나 update-data-integration-association CLI 명령을 실행하여 내보내기 작업을 업데이트할 수 있습니다.
다음 코드 샘플은 update-data-integration-association 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"}}
'
대량 내보내기 작업 삭제 또는 취소 - 지원되지 않음
대량 내보내기는 삭제하거나 취소할 수 없습니다. 내보내기 작업이 완료되면 더 이상 내보내기 할당량에 포함되지 않습니다.