Ingestion de données par lots
Dans cette leçon, vous ingérerez des données de lot dans Experience Platform à l’aide de diverses méthodes.
L’ingestion de données par lots vous permet d’ingérer simultanément une grande quantité de données dans Adobe Experience Platform. Vous pouvez ingérer des données par lots lors d’un chargement unique dans l’interface de Platform ou à l’aide de l’API. Vous pouvez également configurer des téléchargements par lots régulièrement programmés à partir de services tiers tels que les services de stockage dans le cloud à l’aide des connecteurs Source.
Les ingénieurs de données devront ingérer des données de lot en dehors de ce tutoriel.
Avant de commencer les exercices, regardez cette courte vidéo pour en savoir plus sur l’ingestion de données :
Autorisations requises
Dans la leçon Configurer les autorisations , vous configurez tous les contrôles d’accès requis pour terminer cette leçon.
Vous devez accéder à un serveur FTP (S) ou à une solution de stockage dans le cloud pour l’exercice Sources . Il existe une solution de contournement si vous n'en avez pas.
Ingestion de données par lots avec l’interface utilisateur de Platform
Les données peuvent être chargées directement dans un jeu de données sur l’écran des jeux de données aux formats JSON et parquet. Il s’agit d’un excellent moyen de tester l’ingestion de certaines de vos données après avoir créé une
Télécharger et préparer les données
Commencez par obtenir les exemples de données et personnalisez-les pour votre client :
-
Téléchargez luma-data.zip dans votre dossier Luma Tutorial Assets.
-
Décompressez le fichier, créant un dossier appelé
luma-data
qui contient les quatre fichiers de données que nous utiliserons dans cette leçon. -
Ouvrez
luma-loyalty.json
dans un éditeur de texte et remplacez toutes les instances de_techmarketingdemos
par votre propre identifiant de client de trait de soulignement, comme vous le voyez dans vos propres schémas :
-
Enregistrer le fichier mis à jour
Ingestion des données
-
Dans l’interface utilisateur de Platform, sélectionnez Jeux de données dans le volet de navigation de gauche.
-
Ouvrez votre
Luma Loyalty Dataset
-
Faites défiler l’écran jusqu’à ce que la section Ajouter des données s’affiche dans la colonne de droite.
-
Téléchargez le fichier
luma-loyalty.json
. -
Une fois le fichier chargé, une ligne pour le lot s’affiche.
-
Si vous rechargez la page au bout de quelques minutes, vous devriez constater que le lot a bien été transféré avec 1 000 enregistrements et 1 000 fragments de profil.
- L’activation des diagnostics d’erreur génère des données sur l’ingestion de vos données, que vous pouvez ensuite examiner à l’aide de l’API Data Access. Pour en savoir plus, consultez la documentation.
- L’ingestion partielle vous permet d’ingérer des données contenant des erreurs, jusqu’à un certain seuil que vous pouvez spécifier. En savoir plus à ce sujet dans la documentation
Valider les données
Il existe plusieurs façons de confirmer que les données ont bien été ingérées.
Validation dans l’interface utilisateur de Platform
Pour confirmer que les données ont été ingérées dans le jeu de données :
-
Sur la même page que celle où vous avez ingéré les données, cliquez sur le bouton Prévisualiser le jeu de données en haut à droite.
-
Sélectionnez le bouton Aperçu et vous devriez pouvoir voir certaines des données ingérées.
Pour confirmer que les données ont atterri dans Profile (cela peut prendre quelques minutes pour que les données atterrissent) :
- Accédez à Profils dans le volet de navigation de gauche.
- Sélectionnez l’icône en regard du champ Sélectionner l’espace de noms d’identité pour ouvrir le modal.
- Sélectionnez votre espace de noms
Luma Loyalty Id
- Ensuite, saisissez l’une des valeurs
loyaltyId
de votre jeu de données,5625458
- Sélectionnez View
Validation avec des événements d’ingestion de données
Si vous vous êtes abonné aux événements d’ingestion de données de la leçon précédente, vérifiez l’URL unique de webhook.site. Vous devriez constater que trois requêtes s’affichent dans l’ordre suivant, avec un certain temps entre elles, avec les valeurs eventCode
suivantes :
ing_load_success
: le lot comme ingéréig_load_success
: le lot a été ingéré dans le graphique d’identitésps_load_success
: le lot a été ingéré dans le service de profil
Pour plus d’informations sur les notifications, consultez la documentation .
Ingestion de données par lots avec l’API Platform
Maintenant, téléchargeons les données à l’aide de l’API.
Télécharger et préparer les données
- Vous devez avoir déjà téléchargé et décompressé luma-data.zip dans votre dossier
Luma Tutorial Assets
. - Ouvrez
luma-crm.json
dans un éditeur de texte et remplacez toutes les instances de_techmarketingdemos
par votre propre identifiant de client de trait de soulignement, comme vous le voyez dans vos schémas. - Enregistrer le fichier mis à jour
Obtention de l’identifiant du jeu de données
Tout d’abord, obtenons l’identifiant du jeu de données dans lequel nous voulons ingérer des données :
- Ouvrez Postman
- Si vous ne disposez pas d’un jeton d’accès, ouvrez la requête OAuth: Request Access Token et sélectionnez Envoyer pour demander un nouveau jeton d’accès, comme vous l’avez fait dans la leçon Postman.
- Ouvrez vos variables d'environnement et assurez-vous que la valeur de CONTAINER_ID est toujours
tenant
. - Ouvrez la requête Catalog Service API > Datasets > Retrieve a list of datasets. et sélectionnez Send
- Vous devriez obtenir une réponse
200 OK
- Copiez l’identifiant de l’élément
Luma CRM Dataset
dans le corps de la réponse.
Création du lot
Nous pouvons maintenant créer un lot dans le jeu de données :
-
Téléchargez Data Ingestion API.postman_collection.json dans votre dossier
Luma Tutorial Assets
-
Importez la collection dans Postman
-
Sélectionnez la requête Data Ingestion API > Batch Ingestion > Create a new batch in Catalog Service.
-
Collez les éléments suivants en tant que Body de la requête, en remplaçant la valeur datasetId par votre propre :
code language-json { "datasetId":"REPLACE_WITH_YOUR_OWN_DATASETID", "inputFormat": { "format": "json" } }
-
Sélectionnez le bouton Send
-
Vous devriez obtenir une réponse 201 Créée contenant l’identifiant de votre nouveau lot !
-
Copiez le
id
du nouveau lot
Ingestion des données
Nous pouvons maintenant transférer les données dans le lot :
-
Sélectionnez la requête Data Ingestion API > Batch Ingestion > Upload a file to a dataset in a batch.
-
Dans l’onglet Params , saisissez l’identifiant de votre jeu de données et l’identifiant du lot dans leurs champs respectifs.
-
Dans l’onglet Params , saisissez
luma-crm.json
comme filePath -
Dans l’onglet Body, sélectionnez l’option binary
-
Sélectionnez le fichier
luma-crm.json
téléchargé dans votre dossierLuma Tutorial Assets
local. -
Sélectionnez Send et vous devriez obtenir une réponse 200 OK avec "1" dans le corps de la réponse.
À ce stade, si vous examinez votre lot dans l’interface utilisateur de Platform, vous verrez qu’il est dans un état "Chargement" :
Comme l’API de lot est souvent utilisée pour charger plusieurs fichiers, vous devez indiquer à Platform lorsqu’un lot est terminé, ce que nous ferons à l’étape suivante.
Terminer le lot
Pour terminer le lot :
-
Sélectionnez la requête Data Ingestion API > Batch Ingestion > Finish uploading a file to a dataset in a batch.
-
Dans l’onglet Params , saisissez
COMPLETE
comme action -
Dans l’onglet Params , saisissez votre identifiant de lot. Ne vous inquiétez pas de l’identifiant du jeu de données ou de filePath, s’ils sont présents.
-
Assurez-vous que l’URL du POST est
https://platform.adobe.io/data/foundation/import/batches/:batchId?action=COMPLETE
et qu’il n’existe aucune référence inutile àdatasetId
oufilePath
-
Sélectionnez Send et vous devriez obtenir une réponse 200 OK avec "1" dans le corps de la réponse.
Valider les données
Validation dans l’interface utilisateur de Platform
Validez que les données ont atterri dans l’interface utilisateur de Platform comme vous l’avez fait pour le jeu de données Loyalty.
Tout d’abord, vérifiez que le lot indique que 1 000 enregistrements ont été ingérés :
Ensuite, confirmez le lot à l’aide du jeu de données de prévisualisation :
Enfin, vérifiez que l'un de vos profils a été créé en recherchant un des profils par l'espace de noms Luma CRM Id
, par exemple 112ca06ed53d3db37e4cea49cc45b71e
.
Il y a une chose intéressante qui vient de se produire que je veux souligner. Ouvrez ce profil Danny Wright
. Le profil a à la fois Lumacrmid
et Lumaloyaltyid
. Souvenez-vous que le Luma Loyalty Schema
contenait deux champs d’identité, l’identifiant de fidélité Luma et l’identifiant CRM. Maintenant que nous avons téléchargé les deux jeux de données, ils ont fusionné en un seul profil. Les données de fidélité avaient Daniel
comme prénom et "New York City" comme adresse d’accueil, tandis que les données de gestion de la relation client avaient Danny
comme prénom et Portland
comme adresse d’accueil pour le client avec le même identifiant de fidélité. Nous reviendrons à la raison pour laquelle le prénom s’affiche Danny
dans la leçon sur les stratégies de fusion.
Félicitations, vous venez de fusionner les profils !
Validation avec des événements d’ingestion de données
Si vous vous êtes abonné aux événements d’ingestion de données de la leçon précédente, vérifiez l’URL unique de webhook.site. Vous devriez constater que trois demandes entrent en jeu, tout comme avec les données de fidélité :
Pour plus d’informations sur les notifications, consultez la documentation .
Ingestion de données avec des workflows
Examinons une autre manière de transférer des données. La fonctionnalité de workflows vous permet d’ingérer des données CSV qui ne sont pas déjà modélisées dans XDM.
Télécharger et préparer les données
- Vous devez avoir déjà téléchargé et décompressé luma-data.zip dans votre dossier
Luma Tutorial Assets
. - Confirmez que vous disposez de
luma-products.csv
Créer un workflow
Maintenant, configurez le workflow :
- Accédez à Workflows dans la navigation de gauche
- Sélectionnez Mapper CSV au schéma XDM et sélectionnez le bouton Launch
- Sélectionnez votre
Luma Product Catalog Dataset
et cliquez sur le bouton Suivant
- Ajoutez le fichier
luma-products.csv
que vous avez téléchargé et cliquez sur le bouton Suivant
- Vous vous trouvez maintenant dans l’interface du mappeur, dans laquelle vous pouvez mapper un champ des données source (l’un des noms de colonne dans le fichier
luma-products.csv
) aux champs XDM dans le schéma cible. Dans notre exemple, les noms des colonnes sont suffisamment proches des noms des champs de schéma pour que le mappeur puisse détecter automatiquement le mappage approprié. Si le mappeur n’a pas pu détecter automatiquement le champ de droite, sélectionnez l’icône située à droite du champ cible pour sélectionner le champ XDM correct. En outre, si vous ne souhaitez pas ingérer l’une des colonnes du fichier CSV, vous pouvez supprimer la ligne du mappeur. N’hésitez pas à lire et à modifier les en-têtes de colonne dansluma-products.csv
pour vous familiariser avec le fonctionnement du mappeur. - Sélectionnez le bouton Terminer
Valider les données
Une fois le lot transféré, vérifiez le chargement en prévisualisant le jeu de données.
Puisque Luma Product SKU
est un espace de noms non-personnel, nous ne verrons aucun profil pour le SKU du produit.
Vous devriez voir les trois accès à votre webhook.
Ingestion de données avec des sources
OK, vous avez fait les choses à la dure. Passons maintenant à la terre promise de l'ingestion par lots automatisée ! Quand je dis, "DÉPOSEZ-LE !" vous dites : "OUBLIE-LE !" "DÉFINISSEZ !" "OUBLIE-LE !" "DÉFINISSEZ !" "OUBLIE-LE !" En plaisantant, vous ne feriez jamais une telle chose ! Ok, retourne au travail. Vous avez presque fini.
Accédez à Sources dans le volet de navigation de gauche pour ouvrir le catalogue des sources. Vous y trouverez diverses intégrations prêtes à l’emploi avec les fournisseurs de données et de stockage de pointe.
D'accord, ingérons des données à l'aide d'un connecteur source.
Cet exercice sera de type aventure. Je vais afficher le workflow à l’aide du connecteur source FTP. Vous pouvez soit utiliser un autre connecteur source Cloud Storage que vous utilisez dans votre entreprise, soit charger le fichier json à l’aide de l’interface utilisateur du jeu de données, comme nous l’avons fait avec les données de fidélité.
La plupart des sources ont un processus de configuration similaire, dans lequel vous :
- Saisissez les informations d’authentification
- Sélectionnez les données à ingérer.
- Sélectionnez le jeu de données Platform dans lequel vous souhaitez l’ingérer.
- Mappage des champs à votre schéma XDM
- Choisissez la fréquence à laquelle vous souhaitez ingérer les données à partir de cet emplacement.
Téléchargez, préparez et chargez les données vers votre fournisseur de stockage dans le cloud préféré.
- Vous devez avoir déjà téléchargé et décompressé luma-data.zip dans votre dossier
Luma Tutorial Assets
. - Ouvrez
luma-offline-purchases.json
dans un éditeur de texte et remplacez toutes les instances de_techmarketingdemos
par votre propre identifiant de client de trait de soulignement, comme vous le voyez dans vos schémas. - Mettre à jour tous les horodatages afin que les événements se produisent le dernier mois (par exemple, rechercher
"timestamp":"2022-06
et remplacer l’année et le mois) - Choisissez votre fournisseur de stockage dans le cloud préféré, en veillant à ce qu’il soit disponible dans le catalogue Sources
- Téléchargez
luma-offline-purchases.json
vers un emplacement de votre fournisseur de stockage dans le cloud préféré
Ingérer les données vers l’emplacement de stockage dans le cloud de votre choix
-
Dans l’interface utilisateur de Platform, filtrez le catalogue Sources sur Stockage cloud
-
Notez qu’il existe des liens pratiques vers la documentation sous
...
. -
Dans la zone de votre fournisseur de stockage dans le cloud préféré, cliquez sur le bouton Configurer
-
Authentification est la première étape. Saisissez le nom de votre compte, par exemple
Luma's FTP Account
, ainsi que les détails de votre authentification. Cette étape doit être assez similaire pour toutes les sources de stockage dans le cloud, bien que les champs puissent légèrement varier. Une fois que vous avez saisi les détails d’authentification d’un compte, vous pouvez les réutiliser pour d’autres connexions source qui peuvent envoyer des données différentes sur des plannings différents des autres fichiers du même compte. -
Sélectionnez le bouton Se connecter à la source
-
Une fois que Platform est connecté à Source, cliquez sur le bouton Suivant
-
À l’étape Sélectionner les données, l’interface utilisateur utilisera vos informations d’identification pour ouvrir le dossier sur votre solution de stockage dans le cloud.
-
Sélectionnez les fichiers à ingérer, par exemple
luma-offline-purchases.json
-
En tant que format de données, sélectionnez
XDM JSON
-
Vous pouvez ensuite prévisualiser la structure json et des exemples de données dans votre fichier .
-
Sélectionnez le bouton Suivant
-
À l’étape Mapping, sélectionnez votre
Luma Offline Purchase Events Dataset
et cliquez sur le bouton Suivant . Dans le message, notez que puisque les données que nous ingérons sont un fichier JSON, il n’existe aucune étape de mappage où nous mappez le champ source au champ cible. Les données JSON doivent déjà être dans XDM. Si vous ingérez un fichier CSV, l’interface utilisateur de mappage complète s’affiche à cette étape :
-
À l’étape Planification , vous choisissez la fréquence à laquelle vous souhaitez ingérer des données à partir de Source. Prenez quelques instants pour examiner les options. Nous allons simplement procéder à une ingestion unique. Laissez donc la Fréquence sur Une fois et sélectionnez le bouton Suivant :
-
À l’étape Détails du flux de données, vous pouvez choisir un nom pour votre flux de données, saisir une description facultative, activer les diagnostics d’erreur et l’ingestion partielle. Laissez les paramètres tels quels et cliquez sur le bouton Suivant :
-
À l’étape Réviser , vous pouvez passer en revue tous vos paramètres et les modifier ou sélectionner le bouton Terminer .
-
Après l’enregistrement, vous accédez à un écran comme celui-ci :
Valider les données
Une fois le lot transféré, vérifiez le chargement en prévisualisant le jeu de données.
Vous devriez voir les trois accès à votre webhook.
Recherchez à nouveau le profil avec la valeur 5625458
dans l’espace de noms loyaltyId
pour voir s’il existe des événements d’achat dans leur profil. Vous devriez voir un achat. Vous pouvez entrer dans les détails de l’achat en sélectionnant Afficher JSON :
Outils ETL
Adobe des partenaires avec plusieurs fournisseurs ETL pour la prise en charge de l’ingestion de données dans Experience Platform. En raison de la variété des fournisseurs tiers, ETL n’est pas pris en compte dans ce tutoriel, bien que vous soyez le bienvenu pour consulter certaines de ces ressources :
Ressources supplémentaires
Maintenant, données de diffusion en continu à l’aide du SDK Web