AWS Data Pipeline n'est plus disponible pour les nouveaux clients. Les clients existants de AWS Data Pipeline peut continuer à utiliser le service normalement. En savoir plus
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CopyActivity
Copie les données d'un emplacement à un autre. CopyActivity
prend en charge S3 DataNode et SqlDataNode en entrée et en sortie et l'opération de copie est normalement effectuée record-by-record. CopyActivity
Fournit toutefois une copie haute performance d'Amazon S3 vers Amazon S3 lorsque toutes les conditions suivantes sont remplies :
-
L'entrée et la sortie sont S3 DataNodes
-
Le champ
dataFormat
est le même pour l'entrée et pour la sortie.
Si vous fournissez des fichiers de données compressés en tant qu'entrées et ne l'indiquez pas à l'aide du champ compression
des nœuds de données S3, CopyActivity
risque d'échouer. Dans ce cas, CopyActivity
ne détecte pas correctement la fin du caractère d'enregistrement et l'opération échoue. En outre, CopyActivity
prend en charge la copie d'un répertoire vers un autre répertoire et la copie d'un fichier dans un répertoire, mais la record-by-record copie se produit lors de la copie d'un répertoire dans un fichier. Enfin, CopyActivity
ne prend pas en charge la copie de fichiers Amazon S3 en plusieurs parties.
CopyActivity
son CSV support est soumis à des limites spécifiques. Lorsque vous utilisez un S3 DataNode comme entrée pourCopyActivity
, vous ne pouvez utiliser qu'une variante Unix/Linux du format de fichier de CSV données pour les champs d'entrée et de sortie d'Amazon S3. La variante Unix/Linux nécessite les éléments suivants :
-
Le séparateur doit être la virgule (« , »).
-
Les enregistrements ne sont pas entre guillemets.
-
Le caractère d'échappement par défaut est ASCII la valeur 92 (barre oblique inversée).
-
L'identifiant de fin d'enregistrement est ASCII la valeur 10 (ou «\n»).
Les systèmes Windows utilisent généralement une séquence de end-of-record caractères différente : un retour en chariot et une alimentation en ligne en même temps (ASCIIvaleur 13 et ASCII valeur 10). Vous devez gérer cette différence à l'aide d'un mécanisme supplémentaire, tel qu'un script de pré-copie de script permettant de modifier les données d'entrée, afin de vous assurer que CopyActivity
puisse correctement détecter la fin d'un enregistrement ; dans le cas contraire, CopyActivity
échoue de manière répétée.
Lors de l'exportation CopyActivity
d'un SQL RDS objet Postgre vers un format de TSV données, le NULL caractère par défaut est\n.
Exemple
Voici un exemple de ce type d'objet. Cet objet référence trois autres objets que vous pourriez définir dans le même fichier de définition du pipeline. CopyPeriod
est un objet Schedule
. InputData
et OutputData
sont des objets de nœud de données.
{ "id" : "S3ToS3Copy", "type" : "CopyActivity", "schedule" : { "ref" : "CopyPeriod" }, "input" : { "ref" : "InputData" }, "output" : { "ref" : "OutputData" }, "runsOn" : { "ref" : "MyEc2Resource" } }
Syntaxe
Champs d'invocation de l'objet | Description | Type d'option |
---|---|---|
schedule | Cet objet est appelé dans le cadre de l'exécution d'un intervalle de planification. Les utilisateurs doivent spécifier une référence de planification à un autre objet pour définir l'ordre d'exécution des dépendances de l'objet. Les utilisateurs peuvent satisfaire à cette exigence en définissant explicitement un calendrier sur l'objet, par exemple en spécifiant « schedule » : {"ref » : "DefaultSchedule«}. Dans la plupart des cas, il est préférable de placer la planification de référence sur l'objet de pipeline par défaut de manière à ce que tous les objets héritent cette planification. Ou, si le pipeline dispose d'une arborescence de planifications (planifications au sein de la planification maître), les utilisateurs peuvent créer un objet parent ayant une référence de planification. Pour plus d'informations sur les exemples de configurations de planification facultatives, consultez https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html. | Objet de référence, par exemple « schedule » : {"ref » : » myScheduleId «} |
Groupe obligatoire (l'un des groupes suivants est obligatoire) | Description | Type d'option |
---|---|---|
runsOn | Ressource de calcul pour exécuter l'activité ou la commande. Par exemple, une EC2 instance Amazon ou un EMR cluster Amazon. | Objet de référence, par exemple "runsOn« : {" ref » : » myResourceId «} |
workerGroup | Groupe de travail. Utilisé pour les tâches d'acheminement. Si vous fournissez une runsOn valeur et workerGroup qu'elle existe, elle workerGroup est ignorée. | Chaîne |
Champs facultatifs | Description | Type d'option |
---|---|---|
attemptStatus | État de l'activité à distance le plus récemment rapporté. | Chaîne |
attemptTimeout | Délai d'achèvement de la tâche à distance. Si une valeur est définie, une activité à distance qui n'est pas exécutée dans le cadre de la période de départ définie peut être retentée. | Période |
dependsOn | Spécifie une dépendance sur un autre objet exécutable. | Objet de référence, par exemple "dependsOn« : {" ref » : » myActivityId «} |
failureAndRerunMode | Décrit le comportement du nœud de consommateurs lorsque les dépendances échouent ou sont à nouveau exécutées. | Énumération |
input | Source de données d'entrée. | Objet de référence, par exemple « input » : {"ref » : » myDataNode Id "} |
lateAfterTimeout | Temps écoulé après le début du pipeline pendant lequel l'objet doit être terminé. Il est déclenché uniquement lorsque le type de planification n'est pas défini surondemand . |
Période |
maxActiveInstances | Nombre maximal d'instances actives simultanées d'un composant. Les réexécutions ne sont pas comptabilisées dans le nombre d'instances actives. | Entier |
maximumRetries | Nombre maximal de nouvelles tentatives en cas d'échec | Entier |
onFail | Action à exécuter en cas d'échec de l'objet actuel. | Objet de référence, par exemple "onFail« : {" ref » : » myActionId «} |
onLateAction | Actions à déclencher si un objet n'a pas encore été planifié ou n'est toujours pas terminé. | Objet de référence, par exemple "onLateAction« : {" ref » : » myActionId «} |
onSuccess | Action à exécuter en cas de réussite de l'objet actuel. | Objet de référence, par exemple "onSuccess« : {" ref » : » myActionId «} |
output | Source de données de sortie. | Objet de référence, par exemple « output » : {"ref » : » myDataNode Id "} |
parent | Parent de l'objet actuel à partir duquel les emplacements sont hérités. | Objet de référence, par exemple « parent » : {"ref » : » myBaseObject Id "} |
pipelineLogUri | Le S3 URI (tel que 's3 ://BucketName/Key/ ') pour le téléchargement des journaux pour le pipeline. | Chaîne |
precondition | Définit une condition préalable facultative. Un nœud de données n'est marqué « READY » que lorsque toutes les conditions préalables sont remplies. | Objet de référence, par exemple « précondition » : {"ref » : » myPreconditionId «} |
reportProgressTimeout | Délai d'attente pour le télétravail, appels successifs à. reportProgress Si une valeur est définie, les activités à distance qui ne font pas état d'avancement pour la période spécifiée doivent être considérées comme bloquées et, par conséquent, retentées. | Période |
retryDelay | Délai entre deux nouvelles tentatives. | Période |
scheduleType | Le type de planification vous permet de spécifier si les objets de votre définition de pipeline doivent être planifiés au début ou à la fin de l'intervalle. Dans la planification de type séries chronologiques, les instances sont planifiées à la fin de chaque intervalle et dans la planification de type cron, les instances sont planifiées au début de chaque intervalle. Une planification à la demande vous permet d'exécuter un pipeline une fois par activation. Cela signifie que vous n'avez pas à cloner ou à recréer le pipeline pour l'exécuter à nouveau. Si vous utilisez une planification à la demande, elle doit être spécifiée dans l'objet par défaut et doit être la seule scheduleType spécifiée pour les objets du pipeline. Pour utiliser des pipelines à la demande, il suffit d'appeler l' ActivatePipeline opération pour chaque exécution suivante. Les valeurs sont : cron, ondemand et timeseries (cron, à la demande et séries chronologiques). | Énumération |
Champs liés à l'exécution | Description | Type d'option |
---|---|---|
@activeInstances | Liste des objets d'instances actives actuellement planifiés. | Objet de référence, par exemple "activeInstances« : {" ref » : » myRunnableObject Id "} |
@actualEndTime | Heure à laquelle l'exécution de l'objet s'est terminée. | DateTime |
@actualStartTime | Heure à laquelle l'exécution de l'objet a démarré. | DateTime |
cancellationReason | cancellationReason Si cet objet a été annulé. | Chaîne |
@cascadeFailedOn | Description de la chaîne de dépendances sur laquelle l'objet a échoué. | Objet de référence, par exemple "cascadeFailedOn« : {" ref » : » myRunnableObject Id "} |
emrStepLog | EMRjournaux d'étapes disponibles uniquement pour les tentatives EMR d'activité | Chaîne |
errorId | Le errorId si cet objet a échoué. | Chaîne |
errorMessage | Le errorMessage si cet objet a échoué. | Chaîne |
errorStackTrace | Suivi de la pile d'erreurs si l'objet a échoué. | Chaîne |
@finishedTime | Heure à laquelle l'objet a terminé son exécution. | DateTime |
hadoopJobLog | Des journaux de tâches Hadoop sont disponibles sur les tentatives d'activités EMR basées. | Chaîne |
@healthStatus | État de santé de l'objet qui reflète la réussite ou l'échec de la dernière instance qui a atteint un état résilié. | Chaîne |
@healthStatusFromInstanceId | ID du dernier objet d'instance qui atteint un état résilié. | Chaîne |
@ healthStatusUpdated Heure | Heure à laquelle l'état de santé a été mis à jour pour la dernière fois. | DateTime |
hostname | Nom d'hôte du client qui a sélectionné la tentative de tâche. | Chaîne |
@lastDeactivatedTime | Heure à laquelle l'objet a été désactivé pour la dernière fois. | DateTime |
@ latestCompletedRun Heure | Heure de la dernière exécution pour laquelle l'exécution s'est terminée. | DateTime |
@latestRunTime | Heure de la dernière exécution pour laquelle l'exécution a été planifiée. | DateTime |
@nextRunTime | Prochaine heure d'exécution planifiée. | DateTime |
reportProgressTime | Heure la plus récente pour laquelle l'activité distante a signalé une progression. | DateTime |
@scheduledEndTime | Heure de fin planifiée pour l'objet. | DateTime |
@scheduledStartTime | Heure de début planifiée pour l'objet. | DateTime |
@État | État de l'objet. | Chaîne |
@Version | Version du pipeline avec laquelle l'objet été créé. | Chaîne |
@waitingOn | Description de la liste des dépendances sur laquelle l'objet est en attente. | Objet de référence, par exemple "waitingOn« : {" ref » : » myRunnableObject Id "} |
Champs système | Description | Type d'option |
---|---|---|
@error | Erreur décrivant l'objet mal formé. | Chaîne |
@pipelineId | Id du pipeline auquel l'objet appartient. | Chaîne |
@sphere | La sphère d'un objet désigne sa place dans le cycle de vie : les objets « composant » entraînent les objets « instance » qui exécutent les objets « tentative » | Chaîne |