API Visual Job AWS Glue - AWS Glue

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.

API Visual Job AWS Glue

AWS Glue fournit une API qui vous autorise à créer des tâches d'intégration de données à l'aide de l'API AWS Glue à partir d'un objet JSON qui représente un flux de travail visuel par étapes. Les clients peuvent ensuite utiliser l'éditeur visuel dans AWS Glue Studio pour travailler avec ces tâches.

Pour plus d'informations sur le types de données de l'API Visual Job, voir API Visual Job.

Conception d'API et API CRUD

Les API CreateJob et UpdateJob prennent désormais en charge un paramètre facultatif supplémentaire, CodeGenConfigurationNodes. Si vous fournissez une structure JSON non vide pour ce champ, le DAG sera enregistré dans AWS Glue Studio pour la tâche créée et le code associé généré. Une valeur null ou une chaîne vide pour ce champ lors de la création de la tâche sera ignorée.

Les mises à jour du champ codeGenConfigurationNodes seront effectuées via l'API AWS Glue UpdateJob, de la même manière que pour CreateJob. Le champ entier doit être spécifié dans UpdateJob où le DAG a été modifié comme souhaité. Une valeur null fournie sera ignorée et aucune mise à jour du DAG ne sera effectuée. Une structure ou une chaîne vide entraînera la définition de codeGenConfigurationNodes comme vide et tout DAG précédent supprimé. L'API GetJob renvoie un DAG s'il en existe un. L'API DeleteJob supprime également tout DAG associé.

Démarrer

Pour créer une tâche, utilisez l'action CreateJob . L'entrée de la demande CreateJob aura un champ supplémentaire « codeGenConfigurationNodes » dans lequel vous pouvez spécifier l'objet DAG dans JSON.

Points à garder à l'esprit :

  • Le champ « codeGenConfigurationNodes » est une carte de NodeID vers nœud.

  • Chaque nœud commence par une clé identifiant de quel type de nœud il s'agit.

  • Il ne peut y avoir qu'une seule clé spécifiée car un nœud ne peut être que d'un seul type.

  • Le champ de saisie contient les nœuds parents du nœud actuel.

La liste suivante est une représentation JSON d'une entrée CreateJob.

{ "node-1": { "S3CatalogSource": { "Table": "csvFormattedTable", "PartitionPredicate": "", "Name": "S3 bucket", "AdditionalOptions": {}, "Database": "myDatabase" } }, "node-3": { "S3DirectTarget": { "Inputs": ["node-2"], "PartitionKeys": [], "Compression": "none", "Format": "json", "SchemaChangePolicy": { "EnableUpdateCatalog": false }, "Path": "", "Name": "S3 bucket" } }, "node-2": { "ApplyMapping": { "Inputs": ["node-1"], "Name": "ApplyMapping", "Mapping": [ { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader1", "FromPath": ["myheader1"] }, { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader2", "FromPath": ["myheader2"] }, { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader3", "FromPath": ["myheader3"] } ] } } }

Mise à jour et obtention de tâches

Comme UpdateJob aura également un champ « codeGenConfigurationNodes », le format d'entrée sera le même. Veuillez consulter l'action UpdateJob .

L'action GetJob renverra également un champ « codeGenConfigurationNodes » dans le même format. Veuillez consulter l'action GetJob .

Limitations de tâche visuelle

Étant donné que le paramètre « codeGenConfigurationNodes » a été ajouté aux API existantes, toutes les limitations de ces API seront héritées. De plus, la taille des nœuds codeGenConfigurationNodes et certains nœuds seront limités. Pour plus d'informations, voir Structure de tâche .