Configurer Amazon S3 dans une activité Copy
Cet article explique comment utiliser l’activité Copy dans un pipeline de données pour copier des données depuis et vers Amazon S3.
Autorisations requises
Pour copier des données à partir d’Amazon S3, veillez à disposer des autorisations s3:GetObject
et s3:GetObjectVersion
pour les opérations d’objet Amazon S3.
En outre, les autorisations s3:ListAllMyBuckets
et s3:ListBucket
/s3:GetBucketLocation
sont requises pour des opérations telles que le test des connexions et le parcours à partir de la racine.
Pour obtenir la liste complète des autorisations Amazon S3, accédez à Spécification des autorisations d’une stratégie sur le site AWS.
Format pris en charge
Amazon S3 prend en charge les formats de fichier suivants. Reportez-vous à chaque article pour les paramètres basés sur le format.
- Format Avro
- Format binaire
- Format de texte délimité
- Format Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
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
Les propriétés suivantes sont prises en charge pour Amazon S3 sous l’onglet Source d’une activité Copy.
Les propriétés suivantes sont requises :
Type de magasin de données : sélectionnez Externe.
Connexion : sélectionnez une connexion Amazon S3 dans la liste des connexions. Si aucune connexion n’existe, créez une connexion Amazon en sélectionnant Nouveau.
Type de connexion : Sélectionnez Amazon S3 pour votre type de connexion.
Type de chemin d’accès au fichier : vous pouvez choisir Chemin d’accès au fichier, Préfixe, Chemin du fichier générique ou Liste de fichiers comme type de chemin d’accès de fichier. La configuration de chaque paramètre est la suivante :
Chemin d’accès au fichier : si vous choisissez ce type, les données peuvent être copiées à partir du compartiment donné ou du compartiment et du chemin de dossier spécifiés.
Préfixe : si vous choisissez ce type, spécifiez le compartiment et le préfixe.
Compartiment : spécifiez le nom du compartiment S3. Elle est obligatoire.
Préfixe : spécifiez le préfixe pour le nom de la clé S3 sous le compartiment donné pour filtrer les fichiers S3 sources. Les clé S3 dont le nom commence par
bucket/this_prefix
sont sélectionnées. Elles utilisent le filtre côté service de S3, qui offre de meilleures performances qu’un filtre de caractères génériques.Quand vous utilisez le préfixe et que vous choisissez de copier vers une destination fichier avec conservation de la hiérarchie, notez que le sous-chemin après le dernier signe « / » dans le préfixe est conservé. Par exemple, si vous avez la source
bucket/folder/subfolder/file.txt
et que vous configurez le préfixe sous la formefolder/sub
, le chemin du fichier conservé estsubfolder/file.txt
.
Chemin d’accès au fichier avec caractère générique : si vous choisissez ce type, spécifiez le compartiment et les chemins génériques.
Compartiment : spécifiez le nom du compartiment S3. Elle est obligatoire.
Chemins avec caractère générique : spécifiez le chemin d’accès au dossier ou au fichier avec des caractères génériques sous votre compartiment donné pour filtrer vos dossiers ou fichiers sources.
Les caractères génériques autorisés sont les suivants :
*
(correspond à zéro caractère ou plusieurs) et?
(correspond à zéro ou un caractère). Utilisez^
comme caractère d’échappement si le nom de votre dossier contient des caractères génériques ou ce caractère d’échappement. Consultez d’autres exemples dans les exemples de filtre de dossier et de fichier. Chemin d’accès au dossier avec caractère générique : le chemin d’accès au dossier avec des caractères génériques sous le compartiment donné pour filtrer les dossiers sources.Nom de fichier avec caractère générique : le nom de fichier avec des caractères génériques sous le conteneur et le chemin de dossier (ou le chemin de dossier générique) donnés pour filtrer les fichiers sources.
Liste de fichiers : si vous choisissez 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, un fichier par ligne indiquant le chemin relatif configuré. Pour plus d’exemples, accédez à Exemples de listes de fichiers.
- Chemin d’accès au dossier : spécifiez le chemin d’accès au dossier sous le compartiment donné. 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.
De manière récursive : Spécifiez si les données sont lues de manière récursive à partir des sous-dossiers ou uniquement du dossier spécifié. Quand De manière récursive est sélectionné et que le récepteur est un magasin basé sur un fichier, aucun dossier ou sous-dossier vide n’est copié ni créé à la destination. Cette propriété est sélectionnée par défaut et ne s’applique pas lorsque vous configurez le Chemin d’accès à la liste de fichiers.
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.
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.
- Quand vous utilisez le préfixe, le chemin d’accès racine de la partition est le sous-chemin d’accès avant le dernier « / ».
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.
Nombre maximal de connexions simultanées : 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.
Destination
Les propriétés suivantes sont prises en charge pour Amazon S3 sous l'onglet Destination d’une activité Copy.
Les propriétés suivantes sont requises :
- Type de magasin de données : sélectionnez Externe.
- Connexion : sélectionnez une connexion Amazon S3 dans la liste des connexions. Si aucune connexion n’existe, créez une connexion Amazon en sélectionnant Nouveau.
- Type de connexion : Sélectionnez Amazon S3 pour votre type de connexion.
- Chemin d’accès au fichier : les données peuvent être copiées vers le compartiment donné ou vers le compartiment et le chemin de dossier spécifiés.
- 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 :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. Vous pouvez choisir un comportement dans la liste déroulante.
- - FlattenHierarchy : tous les fichiers du dossier source figurent dans le premier niveau du dossier de destination. Les noms des fichiers de destination 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 : conserve la hiérarchie des fichiers dans le dossier cible. Le chemin d’accès relatif du fichier source vers le dossier source est identique au chemin d’accès relatif du fichier cible vers le dossier cible.
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.
Mappage
Pour Configuration de l’onglet Mappage, accédez à 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é sous forme de tableaux
Les tableaux suivants contiennent plus d’informations sur l’activité Copy dans Amazon S3.
Informations sur la 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 au magasin de données source. | <votre connexion Amazon S3> | Oui | connection |
Type de connexion | Sélectionnez un type pour votre connexion. | Amazon S3 | Oui | / |
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 • Préfixe • Chemin d’accès au fichier générique • Liste de fichiers |
Oui | / |
Pour le Chemin d’accès au fichier | ||||
Compartiment | Le nom de compartiment S3. | <le nom de votre compartiment> | Oui | bucketName |
Directory | Chemin d’accès au dossier sous le compartiment spécifié. | <nom de votre dossier> | Non | folderpath |
Nom de fichier | Nom de fichier sous le compartiment et le chemin d’accès du dossier spécifiés. | <nom de votre fichier> | Non | fileName |
Pour le Préfixe | ||||
Compartiment | Le nom de compartiment S3. | <le nom de votre compartiment> | Oui | bucketName |
Préfixe | Préfixe pour le nom de la clé S3 sous le compartiment donné pour filtrer les fichiers S3 sources. | <votre préfixe> | Non | prefix |
Pour le Chemin d’accès au fichier générique | ||||
Compartiment | Le nom de compartiment S3. | <le nom de votre compartiment> | Oui | bucketName |
Chemin du dossier générique | Chemin d’accès au dossier avec des caractères génériques sous le compartiment spécifié pour filtrer les dossiers sources. | <chemin d’accès à votre dossier avec caractères génériques> | Non | wildcardFolderPath |
Nom de fichier avec des caractères génériques | Nom de fichier avec caractères génériques sous le compartiment et le chemin d’accès du dossier spécifiés (ou chemin d’accès du dossier en caractères génériques) pour filtrer les fichiers sources. | <nom de votre fichier avec caractères génériques> | Oui | wildcardFileName |
Pour la Liste des fichiers | ||||
Compartiment | Le nom de compartiment S3. | <le nom de votre compartiment> | Oui | bucketName |
Directory | Chemin d’accès au dossier sous le compartiment spécifié. | <nom de votre dossier> | Non | 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 | / |
Recursively | Indique si les données sont lues de manière récursive à partir des sous-dossiers ou uniquement du dossier spécifié. Notez que lorsque l’option De manière récursive est sélectionnée et que la destination est un magasin basé sur un fichier, aucun dossier ou sous-dossier vide n’est copié ni créé à la destination. Cette propriété ne s’applique pas lorsque vous configurez le Chemin d’accès à la liste de fichiers. | sélectionné (par défaut) ou désélectionner | Non | recursive |
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 |
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 | Lorsque la découverte de partition est activée, spécifiez le chemin d’accès racine absolu pour pouvoir lire les dossiers partitionnés en tant que colonnes de données. | < le chemin d’accès associé à une racine de votre 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. | <connexions simultanées maximales> | 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. | • Name • Valeur |
Non | additionalColumns : • nom • valeur |
Informations de 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 magasin de données de destination. | <votre connexion Amazon S3> | Oui | connection |
Type de connexion | Sélectionnez un type pour votre connexion. | Amazon S3 | Oui | / |
Chemin de fichier | Chemin d’accès du dossier/fichier vers le dossier de destination. | <chemin d’accès du dossier/fichier> | Oui | / |
Compartiment | Le nom de compartiment S3. | <le nom de votre compartiment> | Oui | bucketName |
Directory | Chemin d’accès au dossier sous le compartiment spécifié. | <nom de votre dossier> | Non | folderpath |
Nom de fichier | Nom de fichier sous le compartiment et le chemin d’accès du dossier spécifiés. | <nom de votre fichier> | Non | fileName |
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 |