API Visual Job di AWS Glue - AWS Glue

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

API Visual Job di AWS Glue

AWS Glue fornisce un'API che permette ai clienti di creare processi di integrazione dei dati utilizzando l'API AWS Glue di un oggetto JSON che rappresenta un DAG. I clienti possono quindi utilizzare l'editor visivo in AWS Glue Studio per lavorare con questi processi.

Per ulteriori informazioni sui tipi di dati di Visual Job API, consulta API Visual Job.

API di progettazione e API CRUD

Le API CreateJob e UpdateJob ora supportano un parametro opzionale aggiuntivo, codeGenConfigurationNodes. Fornire una struttura json non vuota per questo campo comporterà la registrazione del gruppo di disponibilità del database in AWS Glue Studio per il processo creato e per il codice associato generato. Un valore nullo o una stringa vuota per questo campo durante la creazione di processi verrà ignorato.

Gli aggiornamenti del campo codeGenConfigurationNodes verranno eseguiti tramite l'API UpdateJob AWS Glue in modo simile a quello di CreateJob. L'intero campo deve essere specificato in UpdateJob in cui il DAG è stato modificato come desiderato. Un valore nullo fornito verrà ignorato e non verrà eseguito alcun aggiornamento del DAG. Una struttura o una stringa vuota causerà l'impostazione di codeGenConfigurationNodes come vuota e la rimozione di qualsiasi DAG precedente. L'API GetJob restituirà un gruppo di disponibilità dei database se esistente. L'API DeleteJob eliminerà anche qualsiasi DAG associato.

Nozioni di base

Per creare un processo, utilizza l'operazione CreateJob. La richiesta CreateJob avrà un campo aggiuntivo "CodeGenConfigurationNodes" in cui sarà possibile specificare l'oggetto DAG in JSON.

Cose da tenere a mente:

  • Il campo "codegenConfigurationNodes" è una mappa di nodeID al nodo.

  • Ciascun nodo inizia con una chiave che ne identifica il tipo.

  • È possibile specificare una sola chiave, poiché un nodo può essere di un solo tipo.

  • Il campo di input contiene i nodi padre del nodo corrente.

Di seguito è riportata una rappresentazione JSON di un input 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"] } ] } } }

Aggiornamento e acquisizione di processi

Poiché UpdateJob avrà anche un campo 'codeGenConfigurationNodes', il formato di input sarà lo stesso. Consulta l'operazione UpdateJob.

L'operazione GetJob restituirà anche un campo "codeGenConfigurationNodes" nello stesso formato. Consulta l'operazione GetJob.

Limitazioni Visual job

Poiché il parametro "codeGenConfigurationNodes" è stato aggiunto alle API esistenti, tutte le limitazioni di tali API verranno ereditate. Inoltre, il codeGenConfigurationNodes e alcuni nodi saranno di dimensioni limitate. Per ulteriori informazioni, consulta Struttura processo.