Configurer une destination d’export de jeux de données
Vue d’ensemble overview
Cette page décrit comment utiliser Destination SDK pour configurer une destination qui prend en charge les exportations de jeux de données. Utilisez une destination d’exportation de jeu de données pour exporter des jeux de données bruts de Experience Platform vers des emplacements de stockage externes pour la création de rapports, les workflows de science des données et de nombreux autres cas d’utilisation.
Ce guide utilise Amazon S3 comme exemple tout au long du processus, mais les mêmes principes de configuration s’appliquent à tout type de destination basé sur des fichiers pris en charge par Destination SDK (Azure Blob Storage, SFTP, Azure Data Lake Storage Gen2, Google Cloud Storage et Data Landing Zone).
Pour une description détaillée de tous les paramètres utilisés dans ce guide, voir options de configuration dans Destination SDK.
Conditions préalables prerequisites
Avant de passer aux étapes décrites ci-dessous, lisez la page de prise en main de Destination SDK 🔗 pour plus d’informations sur l’obtention des informations d’authentification Adobe I/O nécessaires et d’autres conditions préalables pour travailler avec les API Destination SDK.
Étape 1 : créer une configuration de serveur et de fichier create-server-file-configuration
Commencez par utiliser le point d’entrée /destination-servers pour créer une configuration de serveur et de fichier.
Format d’API
POST platform.adobe.io/data/core/activation/authoring/destination-servers
Requête
La requête suivante crée une configuration de serveur de destination pour une destination Amazon S3. Les valeurs fileType et compression sont modélisées, ce qui signifie qu’elles seront fournies par le client au moment de la connexion à la destination via le customerDataFields que vous définissez à l’étape suivante.
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]"
}
}
}
}'
Une réponse réussie renvoie la nouvelle configuration du serveur de destination, y compris l’identifiant unique (instanceId) de la configuration. Conservez cette valeur car elle sera nécessaire à l’étape suivante.
Étape 2 : créer une configuration de destination create-destination-configuration
Après avoir créé la configuration de serveur de destination à l’étape précédente, utilisez le point d’entrée de l’API /destinations pour créer la configuration de destination.
Pour connecter la configuration du serveur de étape 1 à cette configuration de destination, remplacez la valeur destinationServerId dans la requête API ci-dessous par la valeur instanceId obtenue lors de la création de votre serveur de destination à étape 1.
Format d’API
POST platform.adobe.io/data/core/activation/authoring/destinations
Requête
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
}'
Les différences clés d’une configuration de destination d’exportation d’audience sont mises en évidence ci-dessus :
sources["DATASETS"]schemaConfig.profileRequiredfalseschemaConfig.segmentRequiredfalseschemaConfig.identityRequiredfalseaggregation.aggregationTypeBEST_EFFORTbatchConfig.datasetBatchConfigUne réponse réussie renvoie la nouvelle configuration de destination, y compris l’identifiant unique (instanceId) de la configuration.
Étape 3 : configurer l’authentification set-up-authentication
Selon que vous avez spécifié "authenticationRule": "CUSTOMER_AUTHENTICATION" ou "authenticationRule": "PLATFORM_AUTHENTICATION" dans la configuration de destination ci-dessus, vous pouvez configurer l’authentification à l’aide du point d’entrée /destination ou /credentials.
CUSTOMER_AUTHENTICATION est la plus courante des deux règles d’authentification et est celle à utiliser si vous souhaitez que les utilisateurs fournissent leurs propres informations d’identification de stockage lors de la connexion à la destination.-
Si vous avez sélectionné
"authenticationRule": "CUSTOMER_AUTHENTICATION", reportez-vous aux sections suivantes pour connaître les types d’authentification pris en charge par Destination SDK pour les destinations basées sur des fichiers : -
Si vous avez sélectionné
"authenticationRule": "PLATFORM_AUTHENTICATION", vous devez créer une configuration informations d’identification et transmettre l’identifiant de l’objet d’identification dans le paramètreauthenticationIdde la configuration diffusion de destination.
Étape 4 : vérification de l’interface utilisateur de Experience Platform verify-ui
En fonction des configurations ci-dessus, le catalogue Experience Platform affiche désormais une nouvelle carte de destination privée que vous pouvez utiliser.
Lorsque les utilisateurs se connectent à la destination et sélectionnent les jeux de données à exporter, ils voient les options de planification et de dénomination de dossier que vous avez définies dans datasetBatchConfig.
Étape 5 : (Facultatif) Publier votre destination publish-destination
Une fois la destination configurée, utilisez l’API de publication de destination pour envoyer votre configuration à Adobe pour révision.
Étape 6 : documenter la destination (facultatif) document-destination
Si vous êtes un fournisseur de logiciels indépendant (ISV) ou un intégrateur de système (SI) créant une intégration personnalisée, utilisez le processus de documentation en libre-service pour créer une page de documentation du produit pour votre destination dans le Catalogue des destinations Experience Platform.
Étapes suivantes next-steps
En lisant cet article, vous savez maintenant comment créer une destination d’exportation de jeu de données à l’aide de Destination SDK. Ensuite, votre équipe peut utiliser le workflow d’exportation de jeu de données pour exporter des jeux de données vers votre destination.
Pour en savoir plus sur ce que vous pouvez faire avec Destination SDK, lisez les articles suivants :