Transformer des données dans Delta Lake à l’aide de flux de données de mappage
S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics
Conseil
Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !
Si vous débutez avec Azure Data Factory, consultez Présentation d’Azure Data Factory.
Dans ce tutoriel, vous utilisez le canevas de flux de données pour créer des flux de données qui vous permettent d’analyser et de transformer des données dans Azure Data Lake Storage (ADLS) Gen2 et de les stocker dans Delta Lake.
Prérequis
- Abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte Azure gratuit avant de commencer.
- Compte Azure Storage. Vous utilisez le stockage ADLS comme magasins de données source et récepteur. Si vous ne possédez pas de compte de stockage, consultez l’article Créer un compte de stockage Azure pour découvrir comment en créer un.
Le fichier que nous transformons dans ce tutoriel est MoviesDB.csv, qui se trouve ici. Pour récupérer le fichier à partir de GitHub, copiez le contenu dans l’éditeur de texte de votre choix pour l’enregistrer localement sous la forme d’un fichier .csv. Pour charger le fichier dans votre compte de stockage, consultez Chargement d’objets blob avec le Portail Azure. Les exemples font référence à un conteneur nommé « sample-data ».
Créer une fabrique de données
Au cours de cette étape, vous allez créer une fabrique de données et ouvrir l’interface utilisateur de Data Factory afin de créer un pipeline dans la fabrique de données.
Ouvrez Microsoft Edge ou Google Chrome. L’interface utilisateur de Data Factory n’est actuellement prise en charge que par les navigateurs web Microsoft Edge et Google Chrome.
Dans le menu de gauche, sélectionnez Créer une ressource>Intégration>Data Factory.
Sur la page Nouvelle fabrique de données, entrez ADFTutorialDataFactory dans le champ Nom.
Sélectionnez l’abonnement Azure dans lequel vous voulez créer la fabrique de données.
Pour Groupe de ressources, réalisez l’une des opérations suivantes :
a. Sélectionnez Utiliser l’existant, puis sélectionnez un groupe de ressources existant dans la liste déroulante.
b. Sélectionnez Créer, puis entrez le nom d’un groupe de ressources.
Pour plus d’informations sur les groupes de ressources, consultez Utilisation des groupes de ressources pour gérer vos ressources Azure.
Sous Version, sélectionnez V2.
Sous Emplacement, sélectionnez l’emplacement de la fabrique de données. Seuls les emplacements pris en charge sont affichés dans la liste déroulante. Les magasins de données (comme le Stockage Azure et SQL Database) et les services de calcul (comme Azure HDInsight) utilisés par la fabrique de données peuvent se trouver dans d’autres régions.
Sélectionnez Create (Créer).
Une fois la création terminée, vous voyez apparaître l’avis dans le centre de notifications. Sélectionnez Accéder à la ressource pour accéder à la page de la fabrique de données.
Sélectionnez Créer et surveiller pour lancer l’interface utilisateur de Data Factory dans un onglet séparé.
Créer un pipeline avec une activité de flux de données
Au cours de cette étape, vous créez un pipeline qui contient une activité de flux de données.
Dans la page d’accueil, sélectionnez Orchestrer.
Dans l’onglet Général du pipeline, entrez DeltaLake pour le nom du pipeline.
Dans le volet Activités, développez la section Déplacer et transformer. Faites glisser et déposez l’activité Flux de données à partir du volet vers le canevas du pipeline.
Dans la fenêtre contextuelle Ajout de flux de données, sélectionnez Créer un flux de données, puis nommez votre flux de données DeltaLake. Cliquez sur Terminer lorsque vous avez terminé.
Dans la barre supérieure du canevas du pipeline, faites glisser le curseur Débogage du flux de données pour l’activer. Le mode de débogage permet un test interactif de la logique de transformation sur un cluster Spark activé. Le préchauffage des clusters de flux de données nécessite 5 à 7 minutes et il est recommandé aux utilisateurs d’activer d’abord le débogage s’ils envisagent d’effectuer un développement de flux de données. Pour plus d’informations, consultez Mode de débogage.
Générer une logique de transformation dans le canevas de flux de données
Vous générez deux flux de données dans ce tutoriel. Le premier flux de données est une source simple à réceptionner pour générer un nouveau Delta Lake à partir du fichier CSV des films. Enfin, vous créez la conception du flux qui suit pour mettre à jour les données dans le lac Delta.
Objectifs du tutoriel
- Utilisez la source de données MoviesCSV des conditions préalables et créez un nouveau lac Delta à partir de cette source.
- Générer la logique pour mettre à jour les évaluations des films de 1988 sur « 1 ».
- Supprimez tous les films de 1950.
- Insérez de nouveaux films pour 2021 en dupliquant les films de 1960.
Démarrer à partir d’un canevas de flux de données vide
Sélectionnez la transformation source en haut de la fenêtre de l’éditeur de flux de données, puis sélectionnez + Nouveau en regard de la propriété jeu de données dans la fenêtre Paramètres source :
Sélectionnez Azure Data Lake Storage Gen2 dans la fenêtre Nouveau jeu de données qui s’affiche, puis sélectionnez Continuer.
Choisissez DelimitedText pour le type de jeu de données, puis sélectionnez Continuer à nouveau.
Nommez le jeu de données « MoviesCSV », puis sélectionnez + Nouveau sous Service lié pour créer un service lié au fichier.
Fournissez les détails de votre compte de stockage créé précédemment dans la section Conditions préalables, puis parcourez et sélectionnez le fichier MoviesCSV que vous avez chargé.
Après avoir ajouté votre service lié, cochez la case Première ligne en tant qu’en-tête, puis sélectionnez OK pour ajouter la source.
Accédez à l’onglet Projection de la fenêtre paramètres du flux de données, puis sélectionnez Détecter les types de données.
Sélectionnez maintenant le + après la source dans la fenêtre de l’éditeur de flux de données, puis faites défiler vers le bas pour sélectionner Récepteur sous la section Destination, en ajoutant un nouveau récepteur à votre flux de données.
Sous l’onglet récepteur pour les paramètres du récepteur qui s’affichent après l’ajout du récepteur, sélectionnez inline pour le type de récepteur, puis Delta pour le type de jeu de données inline. Sélectionnez ensuite votre instance Azure Data Lake Storage Gen2 pour le service lié.
Choisissez un nom de dossier dans votre conteneur de stockage où vous souhaitez que le service crée l’instance de Delta Lake.
Enfin, revenez au concepteur de pipeline et sélectionnez Déboguer pour exécuter le pipeline en mode débogage avec seulement cette activité de flux de données sur le canevas. Cela génère votre nouveau Delta Lake dans Azure Data Lake Storage Gen2.
À présent, dans le menu Ressources de fabrique à gauche de l’écran, sélectionnez + pour ajouter une nouvelle ressource, puis sélectionnez Flux de données.
Comme précédemment, sélectionnez à nouveau le fichier MoviesCSV en tant que source, puis sélectionnez Détecter les types de données à partir de l’onglet Projection.
Cette fois, après avoir créé la source, sélectionnez le + dans la fenêtre de l’éditeur de flux de données et ajoutez une transformation de filtre à votre source.
Ajoutez un filtre à condition dans les paramètres de filtre fenêtre qui autorise uniquement les lignes de film correspondant à 1950, 1960 et 1988.
Ajoutez maintenant une transformation de colonne dérivée pour mettre à jour les évaluations de chaque film de 1988 à « 1 ».
Les stratégies
Update, insert, delete, and upsert
sont créées dans la transformation de modification de ligne. Ajoutez une transformation de modification de ligne après votre colonne dérivée.Vos stratégies de modification de ligne doivent ressembler à ce qui suit.
Maintenant que vous définissez la stratégie appropriée pour chaque type de modification de ligne, vérifiez que les règles de mise à jour appropriées étaient définies sur la transformation du récepteur
Ici, nous utilisons le Delta Lake pour votre lac de données Azure Data Lake Storage Gen2 et autorisons les insertions, les mises à jour et les suppressions.
Notez que Colonnes clés désigne une clé composite composée de la colonne clé primaire Movie et de la colonne Année. Cela est dû au fait que nous avons créé de faux films 2021 en dupliquant les lignes de 1960. Cela permet d’éviter les collisions lors de la recherche des lignes existantes en assurant l’unicité.
Télécharger l’exemple terminé
Vous trouverez ici un exemple de solution pour le pipeline Delta avec un flux de données pour la mise à jour/suppression de lignes dans le lac.
Contenu connexe
En savoir plus sur le langage d’expression de flux de données.