Copier les fichiers nouveaux et modifiés par LastModifiedDate avec Azure Data Factory

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 !

Cet article décrit un modèle de solution permettant de copier les fichiers nouveaux et modifiés par LastModifiedDate entre un magasin basé sur des fichiers et un magasin de destination.

À propos de ce modèle de solution

Ce modèle commence par sélectionner les fichiers nouveaux et modifiés en fonction de leur attribut LastModifiedDate, puis copie les fichiers sélectionnés entre le magasin de source de données et le magasin de destination des données.

Le modèle contient une activité :

  • Copier pour copier les fichiers nouveaux et modifiés par LastModifiedDate entre un magasin de fichiers et un magasin de destination.

Le modèle définit six paramètres :

  • FolderPath_Source correspond au chemin d’accès du dossier où vous pouvez lire les fichiers à partir du magasin source. Vous devez remplacer la valeur par défaut par votre propre chemin d’accès au dossier.
  • Directory_Source correspond au chemin du sous-dossier où vous pouvez lire les fichiers du magasin source. Vous devez remplacer la valeur par défaut par votre propre chemin de sous-dossier.
  • FolderPath_Destination correspond au chemin d’accès du dossier où vous souhaitez copier les fichiers vers le magasin de destination. Vous devez remplacer la valeur par défaut par votre propre chemin d’accès au dossier.
  • Directory_Destination correspond au chemin du dossier où vous souhaitez copier les fichiers vers le magasin de destination. Vous devez remplacer la valeur par défaut par votre propre chemin de sous-dossier.
  • LastModified_From est utilisé pour sélectionner les fichiers dont l’attribut LastModifiedDate est postérieur ou égal à cette valeur DateHeure. Pour sélectionner uniquement les nouveaux fichiers (non copiés précédemment), définissez cette valeur DateHeure sur l’heure du dernier déclenchement du pipeline. Vous pouvez remplacer la valeur par défaut « 2019-02-01T00:00:00Z » par la valeur LastModifiedDate attendue dans le fuseau horaire UTC.
  • LastModified_To est utilisé pour sélectionner les fichiers dont l’attribut LastModifiedDate est antérieur à cette valeur DateHeure. Pour sélectionner uniquement les nouveaux fichiers (non copiés lors des exécutions précédentes), cette valeur DateHeure peut être l’heure actuelle. Vous pouvez remplacer la valeur par défaut « 2019-02-01T00:00:00Z » par la valeur LastModifiedDate attendue dans le fuseau horaire UTC.

Utiliser ce modèle de solution

  1. Accédez à la Galerie de modèles à partir de l’onglet Auteur dans Azure Data Factory, puis sélectionnez le bouton +, Pipeline, puis Galerie de modèles.

    Capture d’écran montrant comment ouvrir la Galerie de modèles à partir de l’onglet Auteur d’Azure Data Factory Studio.

  2. Recherchez le modèle Copier uniquement les nouveaux fichiers par DateDernièreModification, sélectionnez-le, puis sélectionnez Continuer.

    Capture d’écran montrant comment rechercher et sélectionner le modèle Copier uniquement les nouveaux fichiers par DateDernièreModification.

  3. Créez une nouvelle connexion au magasin de destination. C’est à partir de ce magasin que seront copiés les fichiers de votre choix.

    Créer une connexion à la source

  4. Créez une nouvelle connexion à votre magasin de stockage source. C’est à partir de ce magasin que seront copiés les fichiers de votre choix.

    Créer une connexion à la destination

  5. Sélectionnez Utiliser ce modèle.

    Utiliser ce modèle

  6. Le pipeline disponible apparaît dans le panneau, comme le montre l’exemple suivant :

    Afficher le pipeline

  7. Sélectionnez Déboguer, entrez la valeur des Paramètres et sélectionnez Terminer. Dans l’image qui suit, nous définissons les paramètres comme suit.

    • FolderPath_Source = sourcefolder
    • Directory_Source = subfolder
    • FolderPath_Destination = destinationfolder
    • Directory_Destination = subfolder
    • LastModified_From = 2019-02-01T00:00:00Z
    • LastModified_To = 2019-03-01T00:00:00Z

    L’exemple indique que les fichiers qui ont été modifiés pour la dernière fois au cours de la période (2019-02-01T00:00:00Z à 2019-03-01T00:00:00Z) seront copiés à partir du chemin source dossier_source/sous_dossier vers le chemin de destination dossier_destination/sous_dossier. Vous pouvez remplacer ces heures ou dossiers par vos propres paramètres.

    Exécuter le pipeline

  8. Vérifiez le résultat. Seuls les derniers fichiers modifiés au cours de la période configurée sont copiés dans le magasin de destination.

    Vérifier le résultat

  9. Vous pouvez maintenant ajouter un déclencheur de fenêtres bascules pour automatiser ce pipeline et lui permettre de copier systématiquement les fichiers nouveaux et modifiés par LastModifiedDate et ce, de manière régulière. Sélectionnez Ajouter un déclencheur, puis Nouveau/Modifier.

    Capture d’écran mettant en surbrillance l’option de menu Nouveau/Modifier qui s’affiche quand vous sélectionnez Ajouter un déclencheur.

  10. Dans la fenêtre Ajouter des déclencheurs, sélectionnez + Nouveau.

  11. Sélectionnez Fenêtre bascule pour le type de déclencheur, définissez Toutes les 15 minutes en tant que périodicité (vous pouvez opter pour l’intervalle de temps de votre choix). Sélectionnez Oui pour la zone Activé, puis sélectionnez OK.

    Créer le déclencheur

  12. Définissez la valeur correspondant aux Paramètres d’exécution du déclencheur comme suit, puis sélectionnez Terminer.

    • FolderPath_Source = sourcefolder. Vous pouvez remplacer ce dossier par votre dossier dans le magasin de données sources.
    • Directory_Source = subfolder. Vous pouvez remplacer ce dossier par votre sous-dossier dans le magasin de données source.
    • FolderPath_Destination = destinationfolder. Vous pouvez remplacer ce dossier par votre dossier dans le magasin de données de destination.
    • Directory_Destination = subfolder. Vous pouvez remplacer ce dossier par votre sous-dossier dans le magasin de données de destination.
    • LastModified_From = @trigger().outputs.windowStartTime. Cette variable système issue du déclencheur détermine l’heure du dernier déclenchement du pipeline.
    • LastModified_To = @trigger().outputs.windowEndTime. Cette variable système issue du déclencheur détermine l’heure du déclenchement actuel du pipeline.

    Paramètres d’entrée

  13. Sélectionnez Publier tout.

    Publier tout

  14. Créer des fichiers dans le dossier source du magasin source de données. Vous attendez à présent que le pipeline se déclenche automatiquement, et seuls les nouveaux fichiers sont copiés dans le magasin de destination.

  15. Sélectionnez l’onglet Surveiller dans le volet de navigation gauche, puis patientez environ 15 minutes si la périodicité du déclencheur a été définie sur Toutes les 15 minutes.

  16. Vérifiez le résultat. Votre pipeline est déclenché automatiquement toutes les 15 minutes, et seuls les fichiers nouveaux et modifiés à partir du magasin source sont copiés vers le magasin de destination à chaque exécution du pipeline.

    Capture d’écran montrant les résultats retournés lors du déclenchement du pipeline.