Configurer SFTP dans une activité de copie

Cet article explique comment utiliser l’activité de copie dans un pipeline de données pour copier des données depuis SFTP.

Format pris en charge

SFTP prend en charge les formats de fichier suivants. Reportez-vous à chaque article pour les paramètres basés sur le format.

Configuration prise en charge

Pour la configuration de chaque onglet sous l’activité de copie, accédez respectivement aux sections suivantes.

Général

Reportez-vous aux instructions relatives aux paramètres Général pour configurer l’onglet Paramètres Général .

Source

Accédez à l’onglet Source pour configurer votre source d’activité de copie. Consultez le contenu suivant pour obtenir la configuration détaillée.

Screenshot showing source tab and the list of properties.

Les trois propriétés suivantes sont requises :

  • Type de magasin de données : sélectionnez Externe.

  • Connexion : sélectionnez une connexion SFTP dans la liste des connexions. Si aucune connexion n’existe, créez une connexion SFTP en sélectionnant Nouveau.

  • Type de chemin d’accès au fichier : dans Chemin d’accès au fichier, sélectionnez Chemin d’accès au fichier générique et Liste des fichiers en fonction de la façon dont vous souhaitez lire les fichiers.

    • Chemin d’accès au fichier : si vous choisissez ce type, spécifiez le chemin d’accès de votre fichier source. Vous pouvez sélectionner Parcourir pour sélectionner vos fichiers sources ou entrer manuellement le chemin d’accès à votre fichier.

    • Chemin d’accès au fichier générique : si vous choisissez ce type, spécifiez les chemins d’accès génériques pour filtrer vos dossiers ou fichiers sources.

      Les caractères génériques autorisés sont les suivants : * (correspond à zéro ou plusieurs caractères) et ? (correspond à zéro ou un caractère). Utilisez ^ comme caractère d’échappement si le nom de votre dossier contient un caractère générique ou ce caractère d’échappement. Pour d’autres exemples, accédez à Exemples de filtres de dossier et de fichier.

      Screenshot showing wildcard file path.

      Chemin d’accès au dossier générique : spécifiez le chemin d’accès au dossier avec des caractères génériques pour filtrer les dossiers sources.

      Nom de fichier à caractères génériques : spécifiez le nom de fichier avec des caractères génériques sous le chemin d’accès au dossier donné ou le chemin d’accès au dossier générique pour filtrer les fichiers sources.

    • Liste de fichiers : si vous sélectionnez ce type, spécifiez le chemin d’accès au dossier et le Chemin d’accès à la liste de fichiers pour indiquer de copier un jeu de fichiers donné. Pointez vers un fichier texte contenant la liste des fichiers que vous voulez copier. Pour plus d’exemples, accédez à Exemples de listes de fichiers.

      • Chemin d’accès au dossier : spécifiez le chemin d’accès à votre dossier source. Elle est obligatoire.

      • Chemin d’accès à la liste de fichiers : spécifiez le chemin d’accès du fichier texte qui comprend une liste de fichiers que vous souhaitez copier.

        Screenshot showing list of files.

  • Format de fichier : sélectionnez le format de fichier appliqué dans la liste déroulante. Sélectionnez Paramètres pour configurer le format de fichier. Pour connaître les paramètres des différents formats de fichier, reportez-vous aux articles de Format pris en charge pour plus d’informations.

Sous Avancé, vous pouvez spécifier les champs suivants :

  • Filtrer par dernière modification : les fichiers sont filtrés en fonction des dates de dernière modification que vous avez spécifiées. Cette propriété ne s’applique pas lorsque vous configurez votre type de chemin d’accès de fichier en tant que Liste de fichiers.

    • Heure de début (UTC) : les fichiers sont sélectionnés si leur dernière heure de modification est supérieure ou égale à l’heure configurée.
    • Heure de fin (UTC) : les fichiers sont sélectionnés si leur heure de dernière modification est inférieure à l’heure configurée.

    Lorsque Heure de début (UTC) a une valeur DateHeure, mais que Heure de fin (UTC) est NULL, cela signifie que les fichiers dont l’attribut de dernière modification est supérieur ou égal à la valeur DateHeure sont sélectionnés. Lorsque Heure de fin (UTC) a une valeur DateHeure, mais que Heure de début (UTC) est NULL, cela signifie que les fichiers dont l’attribut de dernière modification est inférieur à la valeur DateHeure sont sélectionnés. Les propriétés peuvent avoir la valeur NULL, ce qui a pour effet qu’aucun filtre d’attribut de fichier n’est appliqué au jeu de données.

  • Désactiver la segmentation : la segmentation est conçue pour optimiser les performances et se produit en dessous. Cette option vous permet de désactiver la segmentation dans chaque fichier. Lors de la copie des données à partir de SFTP, le service tente d’abord d’obtenir la longueur du fichier, puis de le diviser en plusieurs parties et de les lire en parallèle. Spécifiez si votre serveur SFTP prend en charge l’obtention de la longueur du fichier ou la lecture à partir d’un décalage donné. L’option est non sélectionnée par défaut.

  • Activer la détection de partition : spécifiez s’il faut analyser les partitions à partir du chemin d’accès au fichier et les ajouter en tant que colonnes sources supplémentaires. L’option n’est pas sélectionnée par défaut et n’est pas prise en charge lorsque vous utilisez le format de fichier binaire.

    • Chemin d'accès à la racine de la partition  : Lorsque la découverte de partition est activée, spécifiez le chemin racine absolu pour pouvoir lire les dossiers partitionnés en tant que colonnes de données.
      S’il n’est pas spécifié, par défaut :

      • Quand vous utilisez le chemin d’accès au fichier ou la liste des fichiers sur la source, le chemin racine de la partition est le chemin que vous avez configuré.
      • Quand vous utilisez le filtre de dossiers génériques, le chemin racine de la partition est le sous-chemin avant le premier caractère générique.

      Par exemple, en supposant que vous configurez le chemin ainsi root/folder/year=2020/month=08/day=27 :

      • Si vous spécifiez le chemin racine de la partition en tant que root/folder/year=2020, l’activité de copie génère deux colonnes supplémentaires, mois et jour, ayant respectivement la valeur « 08 » et « 27 », en plus des colonnes contenues dans les fichiers.
      • Si le chemin racine de la partition n’est pas spécifié, aucune colonne supplémentaire n’est générée.

      Screenshot showing Enable partition discovery.

  • Nombre maximal de connexions simultanées : cette propriété indique la limite supérieure de connexions simultanées établies au magasin de données pendant l’exécution de l’activité. Spécifiez une valeur uniquement lorsque vous souhaitez limiter les connexions simultanées.

  • Colonnes supplémentaires : ajoutez des colonnes de données supplémentaires au chemin d’accès relatif ou à la valeur statique des fichiers sources du magasin. L’expression est prise en charge pour ce dernier. Pour plus d’informations, accédez à Ajouter des colonnes supplémentaires pendant la copie.

Destination

Accédez à l’onglet Destination pour configurer la destination de votre activité de copie. Consultez le contenu suivant pour obtenir la configuration détaillée.

Screenshot showing destination tab and the list of properties.

  • Type de magasin de données : sélectionnez Externe.
  • Connexion : sélectionnez une connexion SFTP dans la liste des connexions. Si aucune connexion n’existe, créez une connexion SFTP en sélectionnant Nouveau.
  • Chemin d’accès au fichier : spécifiez le chemin d’accès au fichier dans lequel écrire vos données. Vous pouvez sélectionner Parcourir pour sélectionner vos fichiers sources ou entrer manuellement le chemin d’accès à votre fichier.
  • Format de fichier : sélectionnez le format de fichier appliqué dans la liste déroulante. Sélectionnez Paramètres pour configurer le format de fichier. Pour connaître les paramètres des différents formats de fichier, reportez-vous aux articles de Format pris en charge pour plus d’informations.

Sous Avancé, vous pouvez spécifier les champs suivants :

  • Comportement de copie : spécifiez le comportement de copie lorsque la source est constituée de fichiers d’une banque de données basée sur un fichier. Choisissez parmi les propriétés suivantes.

    • Égaliser la hiérarchie : tous les fichiers du dossier source figurent dans le premier niveau du dossier cible. Les noms des fichiers cibles sont générés automatiquement.
    • Fusionner des fichiers : fusionne tous les fichiers du dossier source dans un seul fichier. Si le nom de fichier est spécifié, le nom de fichier fusionné est le nom spécifié. Sinon, le nom du fichier sera généré automatiquement.
    • Conserver la hiérarchie (par défaut) : conserve la hiérarchie des fichiers dans le dossier cible. Le chemin relatif du fichier source vers le dossier source est identique au chemin relatif du fichier cible vers le dossier cible.
    • Ajouter du contenu dynamique : sélectionnez cette option pour spécifier votre comportement de copie à l’aide de contenu dynamique.
  • Nombre maximal de connexions simultanées : la limite supérieure de connexions simultanées établies au magasin de données pendant l’exécution de l’activité. Spécifiez une valeur uniquement lorsque vous souhaitez limiter les connexions simultanées.

  • Délai d’expiration de l’opération (minutes) : spécifiez le délai d’expiration pour l’écriture de chaque bloc sur le serveur SFTP. La valeur par défaut est de 60 minutes.

  • Charger un fichier temporaire : indiquez si vous souhaitez effectuer un chargement dans des fichiers temporaires puis les renommer, ou si vous souhaitez écrire directement dans l’emplacement de dossier ou de fichier cible. L’option est sélectionnée par défaut et le service écrit d’abord dans des fichiers temporaires, puis les renomme une fois le chargement terminé.

    Cette séquence permet (1) d’éviter les conflits susceptibles d’entraîner l’altération d’un fichier si d’autres processus écrivent dans le même fichier, et (2) de garantir l’existence de la version d’origine du fichier pendant le transfert. Si votre serveur SFTP ne prend pas en charge l’opération de renommage, désactivez cette option et vérifiez qu’aucun autre processus d’écriture n’est en cours sur le fichier cible.

    Conseil

    Si vous recevez l’erreur « UserErrorSftpPathNotFound », « UserErrorSftpPermissionDenied » ou « SftpOperationFail » lorsque vous écrivez des données dans SFTP et que l’utilisateur SFTP que vous utilisez dispose des autorisations appropriées, vérifiez que l’opération de renommage du fichier de prise en charge de votre serveur SFTP fonctionne. Si ce n’est pas le cas, désactivez l’option Charger un fichier temporaire et réessayez.

Mappage

Pour la configuration de l’onglet Mappage, consultez Configurer vos mappages sous l’onglet Mappage. Si vous choisissez Binaire comme format de fichier, le mappage n’est pas pris en charge.

Paramètres

Pour la configuration de l’onglet Paramètres, accédez à Configurer vos autres paramètres sous l’onglet Paramètres.

Résumé du tableau

Le tableau suivant contient plus d’informations sur l’activité de copie dans SFTP.

Source

Nom Description Valeur Obligatoire Propriété de script JSON
Type de banque de données Votre type de magasin de données. Externe Oui /
Connection Votre connexion SFTP au magasin de données source. < votre connexion SFTP > Oui connection
Type de chemin d’accès au fichier Type de chemin d’accès au fichier utilisé pour obtenir les données sources. Chemin d’accès au fichier
Chemin d’accès au fichier générique
Liste de fichiers
Oui /
Chemin de fichier Chemin d'accès au fichier source. < chemin d’accès au fichier> Oui fileName
folderPath
Chemins avec des caractères génériques Chemin d’accès générique au fichier source. <Chemin d’accès au fichier générique> Oui pour Nom de fichier générique wildcardFolderPath
wildcardFileName
Chemin d’accès du dossier Chemin d’accès à votre dossier source. < le chemin d'accès à votre dossier> Oui folderPath
Chemin d’accès à la liste des fichiers Indique de copier un ensemble de fichiers donné. Pointez vers un fichier texte contenant la liste des fichiers que vous voulez copier. < chemin d’accès à la liste de fichiers > Non fileListPath
Format de fichier Format de fichier pour vos données sources. Pour plus d’informations sur les différents formats de fichier, reportez-vous aux articles de Format pris en charge. / Oui /
Filtrer par date de dernière modification Les fichiers dont l’heure de la dernière modification se trouve dans la plage [Heure de début, Heure de fin) seront filtrés pour un traitement ultérieur. L’heure sera appliquée au fuseau horaire UTC au format yyyy-mm-ddThh:mm:ss.fffZ. Ces propriétés peuvent être ignorées, ce qui signifie qu’aucun filtre d’attribut de fichier n’est appliqué. Cette propriété ne s’applique pas lorsque vous configurez votre type de chemin d’accès de fichier en tant que Liste de fichiers. datetime Non modifiedDatetimeStart
modifiedDatetimeEnd
Désactiver la segmentation La segmentation est conçue pour optimiser les performances et se produit en dessous. Cette option vous permet de désactiver la segmentation dans chaque fichier. Lors de la copie des données à partir de SFTP, le service tente d’abord d’obtenir la longueur du fichier, puis de le diviser en plusieurs parties et de les lire en parallèle. Spécifiez si votre serveur SFTP prend en charge l’obtention de la longueur du fichier ou la lecture à partir d’un décalage donné. sélectionné ou non sélectionné (par défaut) Non disableChunking:
true ou false (par défaut)
Activer la découverte de partition Indique s'il faut analyser les partitions à partir du chemin d'accès au fichier et les ajouter en tant que colonnes sources supplémentaires. sélectionné ou non sélectionné (par défaut) Non enablePartitionDiscovery :
true ou false (par défaut)
Chemin racine de la partition Chemin d’accès racine de la partition absolu pour lire les dossiers partitionnés sous forme de colonnes de données. Spécifiez-le lorsque la détection de partitions est activée. < chemin racine de la partition > Non partitionRootPath
Connexions simultanées maximales La limite supérieure de connexions simultanées établies au magasin de données pendant l’exécution de l’activité. Spécifiez une valeur uniquement lorsque vous souhaitez limiter les connexions simultanées. < limite supérieure de connexions simultanées >
(entier)
Non maxConcurrentConnections
Colonnes supplémentaires Ajouter les colonnes de données supplémentaires pour stocker le chemin d’accès relatif ou la valeur statique des fichiers sources. L’expression est prise en charge pour ce dernier. Pour plus d’informations, accédez à Ajouter des colonnes supplémentaires pendant la copie • Name
• Valeur
Non additionalColumns :
• nom
• valeur

Destination

Nom Description Valeur Obligatoire Propriété de script JSON
Type de banque de données Votre type de magasin de données. Externe Oui /
Connection Votre connexion au SFTP source. < votre connexion > Oui connection
Chemin de fichier Chemin d’accès au fichier de vos données de destination. Chemin d’accès au fichier de la destination Oui folderPath
fileName
Format de fichier Format de fichier pour vos données sources. Pour plus d’informations sur les différents formats de fichier, reportez-vous aux articles de Format pris en charge. / Oui /
Comportement de copie Définit le comportement de copie lorsque la source est constituée de fichiers d’une banque de données basée sur un fichier. • Aplatir la hiérarchie
• Fusionner des fichiers
• Conserver la hiérarchie
Non copyBehavior :
– FlattenHierarchy
– MergeFiles
– PreserveHierarchy
Connexions simultanées maximales La limite supérieure de connexions simultanées établies au magasin de données pendant l’exécution de l’activité. Spécifiez une valeur uniquement lorsque vous souhaitez limiter les connexions simultanées. <connexions simultanées maximales> Non maxConcurrentConnections
Délai de l’opération (en minutes) Délai d’attente pour l’écriture de chaque bloc sur le serveur SFTP. < délai de votre opération >
La valeur par défaut est 60
Non operationTimeout
Charger avec un fichier temporaire Indique s’il faut charger le ou les fichiers temporaires et les renommer. Désactivez cette option si votre serveur SFTP ne prend pas en charge l’opération de renommage. sélectionné (par défaut) ou non sélectionné Non useTempFileRename :
true (valeur par défaut) ou false