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.
Exemple de flux de travail basé sur un tableau
Un flux de travail commun pour AWS Batch customers doit exécuter une tâche de configuration préalable, exécuter une série de commandes sur un grand nombre de tâches d'entrée, puis terminer par une tâche qui regroupe les résultats et écrit des données récapitulatives sur Amazon S3, DynamoDB, Amazon Redshift ou Aurora.
Par exemple :
-
JobA: tâche standard non matricielle qui effectue une liste rapide et une validation des métadonnées des objets d'un compartiment Amazon S3,BucketA. Le SubmitJob La syntaxe JSON est la suivante.{ "jobName": "JobA", "jobQueue": "ProdQueue", "jobDefinition": "JobA-list-and-validate:1" } -
JobB: tâche matricielle de 10 000 copies qui dépend deJobAqui fonctionne CPU-intensive commandes relatives à chaque objet dansBucketAet télécharge les résultats surBucketB. Le SubmitJob La syntaxe JSON est la suivante.{ "jobName": "JobB", "jobQueue": "ProdQueue", "jobDefinition": "JobB-CPU-Intensive-Processing:1", "containerOverrides": { "resourceRequirements": [ { "type": "MEMORY", "value": "4096" }, { "type": "VCPU", "value": "32" } ] } "arrayProperties": { "size": 10000 }, "dependsOn": [ { "jobId": "JobA_job_ID" } ] } -
JobC: une autre tâche de matrice de 10 000 copies qui dépend deJobBavec unN_TO_Nmodèle de dépendance, qui exécute des commandes gourmandes en mémoire pour chaque élément deBucketB, écrit les métadonnées dans DynamoDB et télécharge le résultat obtenu dansBucketC. Le SubmitJob La syntaxe JSON est la suivante.{ "jobName": "JobC", "jobQueue": "ProdQueue", "jobDefinition": "JobC-Memory-Intensive-Processing:1", "containerOverrides": { "resourceRequirements": [ { "type": "MEMORY", "value": "32768" }, { "type": "VCPU", "value": "1" } ] } "arrayProperties": { "size": 10000 }, "dependsOn": [ { "jobId": "JobB_job_ID", "type": "N_TO_N" } ] } -
JobD: tâche de baie qui exécute 10 étapes de validation, chacune devant interroger DynamoDB et susceptible d'interagir avec l'un des compartiments Amazon S3 ci-dessus. Chacune des étapes deJobDexécutez la même commande. Cependant, le comportement est différent en fonction de la valeur deAWS_BATCH_JOB_ARRAY_INDEXvariable d'environnement dans le conteneur de la tâche. Ces étapes de validation s'exécutent de manière séquentielle (par exemple,JobD:0et puisJobD:1). Le SubmitJob La syntaxe JSON est la suivante.{ "jobName": "JobD", "jobQueue": "ProdQueue", "jobDefinition": "JobD-Sequential-Validation:1", "containerOverrides": { "resourceRequirements": [ { "type": "MEMORY", "value": "32768" }, { "type": "VCPU", "value": "1" } ] } "arrayProperties": { "size": 10 }, "dependsOn": [ { "jobId": "JobC_job_ID" }, { "type": "SEQUENTIAL" }, ] } -
JobE: tâche finale, hors baie, qui effectue quelques opérations de nettoyage simples et envoie une notification Amazon SNS contenant un message indiquant que le pipeline est terminé et un lien vers l'URL de sortie. Le SubmitJob La syntaxe JSON est la suivante.{ "jobName": "JobE", "jobQueue": "ProdQueue", "jobDefinition": "JobE-Cleanup-and-Notification:1", "parameters": { "SourceBucket": "s3://amzn-s3-demo-source-bucket", "Recipient": "pipeline-notifications@mycompany.com" }, "dependsOn": [ { "jobId": "JobD_job_ID" } ] }