데이터 세트 내보내기 대상 구성
개요 overview
이 페이지에서는 Destination SDK을 사용하여 데이터 세트 내보내기를 지원하는 대상을 구성하는 방법에 대해 설명합니다. 데이터 세트 내보내기 대상을 사용하여 보고, 데이터 과학 워크플로 및 기타 다양한 사용 사례를 위해 Experience Platform에서 외부 저장소 위치로 원시 데이터 세트를 내보냅니다.
이 안내서에서는 전체에서 Amazon S3을(를) 예로 사용하지만 Destination SDK에서 지원하는 파일 기반 대상 형식(Azure Blob Storage, SFTP, Azure Data Lake Storage Gen2, Google Cloud Storage 및 Data Landing Zone)에는 동일한 구성 원칙이 적용됩니다.
이 안내서에 사용된 모든 매개 변수에 대한 자세한 설명은 Destination SDK의 구성 옵션을 참조하세요.
사전 요구 사항 prerequisites
아래 설명된 단계로 진행하기 전에 Destination SDK 시작하기 페이지에서 Destination SDK API를 사용하는 데 필요한 Adobe I/O 인증 자격 증명 및 기타 필수 구성 요소를 얻는 방법에 대한 정보를 읽어 보십시오.
1단계: 서버 및 파일 구성 만들기 create-server-file-configuration
/destination-servers 끝점을 사용하여 서버 및 파일 구성을 만듭니다.
API 형식
POST platform.adobe.io/data/core/activation/authoring/destination-servers
요청
다음 요청은 Amazon S3 대상에 대한 새 대상 서버 구성을 만듭니다. fileType 및 compression 값은 템플릿으로 지정됩니다. 즉, 다음 단계에서 정의한 customerDataFields을(를) 통해 대상 연결 시간에 고객이 제공합니다.
curl -X POST https://platform.adobe.io/data/core/activation/authoring/destination-servers \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '
{
"name":"Amazon S3 dataset export destination server",
"destinationServerType":"FILE_BASED_S3",
"fileBasedS3Destination":{
"bucket":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.bucketName}}"
},
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
},
"fileConfigurations":{
"compression":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.compression}}"
},
"fileType":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.fileType}}"
},
"csvOptions":{
"quoteAll":{
"templatingStrategy":"NONE",
"value":"false"
},
"header":{
"templatingStrategy":"NONE",
"value":"true"
},
"ignoreLeadingWhiteSpace":{
"templatingStrategy":"NONE",
"value":"true"
},
"ignoreTrailingWhiteSpace":{
"templatingStrategy":"NONE",
"value":"true"
},
"nullValue":{
"templatingStrategy":"NONE",
"value":""
},
"dateFormat":{
"templatingStrategy":"NONE",
"value":"yyyy-MM-dd"
},
"timestampFormat":{
"templatingStrategy":"NONE",
"value":"yyyy-MM-dd'\''T'\'':mm:ss[.SSS][XXX]"
}
}
}
}'
성공한 응답은 구성의 고유 식별자(instanceId)를 포함하여 새 대상 서버 구성을 반환합니다. 다음 단계에서 필요한 대로 이 값을 저장합니다.
2단계: 대상 구성 만들기 create-destination-configuration
이전 단계에서 대상 서버 구성을 만든 후 /destinations API 끝점을 사용하여 대상 구성을 만드십시오.
단계 1에서 이 대상 구성에 서버 구성을 연결하려면 아래 API 요청의 destinationServerId 값을 단계 1에서 대상 서버를 만들 때 얻은 instanceId 값으로 바꾸십시오.
API 형식
POST platform.adobe.io/data/core/activation/authoring/destinations
요청
curl -X POST https://platform.adobe.io/data/core/activation/authoring/destinations \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '
{
"name":"Amazon S3 dataset export destination",
"description":"Amazon S3 destination for exporting Experience Platform datasets.",
"status":"TEST",
"sources":[
"DATASETS"
],
"customerAuthenticationConfigurations":[
{
"authType":"S3"
}
],
"customerDataFields":[
{
"name":"bucketName",
"title":"Enter the name of your Amazon S3 bucket",
"description":"Amazon S3 bucket name",
"type":"string",
"isRequired":true,
"pattern":"(?=^.{3,63}$)(?!^(\\d+\\.)+\\d+$)(^(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$)",
"readOnly":false,
"hidden":false
},
{
"name":"path",
"title":"Enter the path to your S3 bucket folder",
"description":"Enter the path to your S3 bucket folder",
"type":"string",
"isRequired":true,
"pattern":"^[0-9a-zA-Z\\/\\!\\-_\\.\\*\\''\\(\\)]*((\\%SEGMENT_(NAME|ID)\\%)?\\/?)+$",
"readOnly":false,
"hidden":false
},
{
"name":"compression",
"title":"Compression format",
"description":"Select the desired file compression format.",
"type":"string",
"isRequired":true,
"readOnly":false,
"enum":[
"GZIP",
"NONE"
]
},
{
"name":"fileType",
"title":"File type",
"description":"Select the exported file type.",
"type":"string",
"isRequired":true,
"readOnly":false,
"hidden":false,
"enum":[
"json",
"parquet"
],
"default":"parquet"
}
],
"uiAttributes":{
"documentationLink":"https://www.adobe.com/go/destinations-amazon-s3-en",
"category":"cloudStorage",
"connectionType":"S3",
"flowRunsSupported":true,
"monitoringSupported":true,
"frequency":"Batch"
},
"destinationDelivery":[
{
"deliveryMatchers":[
{
"type":"SOURCE",
"value":[
"batch"
]
}
],
"authenticationRule":"CUSTOMER_AUTHENTICATION",
"destinationServerId":"{{destinationServerId}}"
}
],
"schemaConfig":{
"profileRequired":false,
"segmentRequired":false,
"identityRequired":false
},
"aggregation":{
"aggregationType":"BEST_EFFORT"
},
"batchConfig":{
"allowMandatoryFieldSelection":false,
"allowDedupKeyFieldSelection":false,
"defaultExportMode":"FIRST_FULL_THEN_INCREMENTAL",
"allowedExportModes":[
"DAILY_FULL_EXPORT",
"FIRST_FULL_THEN_INCREMENTAL"
],
"allowedScheduleFrequency":[],
"defaultFrequency":"EVERY_6_HOURS",
"defaultStartTime":"00:00",
"filenameConfig":{
"allowedFilenameAppendOptions":[],
"defaultFilenameAppendOptions":[],
"defaultFilename":""
},
"datasetBatchConfig":{
"allowedFoldernameAppendOptions":[
"DESTINATION",
"DATASET_ID",
"DATASET_NAME",
"DESTINATION_INSTANCE_ID",
"DESTINATION_INSTANCE_NAME",
"ORGANIZATION_NAME",
"SANDBOX_NAME",
"DATETIME",
"EXPORT_TIME",
"CUSTOM_TEXT"
],
"defaultFoldernameAppendOptions":[
"DATASET_ID",
"EXPORT_TIME"
],
"allowedExportModes":[
"DAILY_FULL_EXPORT",
"FIRST_FULL_THEN_INCREMENTAL"
],
"allowedScheduleFrequency":[
"DAILY",
"EVERY_3_HOURS",
"EVERY_6_HOURS",
"EVERY_8_HOURS",
"EVERY_12_HOURS",
"ONCE"
]
}
},
"maxProfileAttributes":9000,
"maxIdentityAttributes":1000,
"backfillHistoricalProfileData":true
}'
대상 내보내기 대상 구성의 주요 차이점은 위에 강조 표시되어 있습니다.
schemaConfig.profileRequiredfalseschemaConfig.segmentRequiredfalseschemaConfig.identityRequiredfalseaggregation.aggregationTypeBEST_EFFORTbatchConfig.datasetBatchConfig성공한 응답은 구성의 고유 식별자(instanceId)를 포함하여 새 대상 구성을 반환합니다.
3단계: 인증 설정 set-up-authentication
위의 대상 구성에서 "authenticationRule": "CUSTOMER_AUTHENTICATION" 또는 "authenticationRule": "PLATFORM_AUTHENTICATION"을(를) 지정했는지 여부에 따라 /destination 또는 /credentials 끝점을 사용하여 인증을 설정할 수 있습니다.
CUSTOMER_AUTHENTICATION은(는) 두 인증 규칙 중 더 일반적이며 사용자가 대상에 연결할 때 자신의 저장소 자격 증명을 제공하기를 원하는 경우 사용할 규칙입니다.4단계: Experience Platform UI 확인 verify-ui
위의 구성에 따라 Experience Platform 카탈로그에 사용할 새 개인 대상 카드가 표시됩니다.
사용자가 대상에 연결하고 내보낼 데이터 세트를 선택하면 datasetBatchConfig에서 정의한 예약 및 폴더 이름 지정 옵션이 표시됩니다.
5단계: (선택 사항) 대상 게시 publish-destination
대상을 구성한 후 대상 게시 API를 사용하여 검토를 위해 Adobe에 구성을 제출합니다.
6단계: (선택 사항) 대상 문서화 document-destination
제품화된 통합을 만드는 ISV(독립 소프트웨어 공급업체) 또는 SI(시스템 통합자)인 경우 셀프 서비스 설명서 프로세스를 사용하여 Experience Platform 대상 카탈로그에서 대상에 대한 제품 설명서 페이지를 만드십시오.
다음 단계 next-steps
이 문서를 읽으면 이제 Destination SDK을 사용하여 데이터 세트 내보내기 대상을 작성하는 방법을 알 수 있습니다. 그런 다음 팀은 데이터 세트 내보내기 워크플로우를 사용하여 데이터 세트를 대상으로 내보낼 수 있습니다.
Destination SDK으로 수행할 수 있는 작업에 대해 자세히 알아보려면 다음 문서를 참조하십시오.