Impedire a un crawler di modificare uno schema esistente - 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à.

Impedire a un crawler di modificare uno schema esistente

È possibile impedire a Crawler di AWS Glue s di apportare modifiche allo schema del Data Catalog durante l'esecuzione. Per impostazione predefinita, i crawler aggiornano lo schema nel Catalogo dati in modo che corrisponda alla fonte di dati sottoposta a scansione. Tuttavia, in alcuni casi, potresti voler impedire al Crawler di modificare lo schema esistente, soprattutto se hai trasformato o pulito i dati e non desideri che lo schema originale sovrascriva le modifiche.

Segui questi passaggi per configurare il crawler in modo che non sovrascriva lo schema esistente in una definizione di tabella.

AWS Management Console
  1. Accedi a AWS Management Console e apri la console all' AWS Glue indirizzo. https://console.aws.amazon.com/glue/

  2. Scegli Crawler nel Data Catalog.

  3. Scegliete un crawler dall'elenco e scegliete Modifica.

  4. Scegli il passaggio 4, Imposta l'output e la pianificazione.

  5. In Opzioni avanzate, scegli Aggiungi solo nuove colonne o Ignora la modifica e non aggiornare la tabella nel Catalogo dati.

  6. Puoi anche impostare un'opzione di configurazione per aggiornare tutte le partizioni nuove ed esistenti con i metadati della tabella. Questo imposta gli schemi di partizione da ereditare dalla tabella.

  7. Scegli Aggiorna.

AWS CLI

L'esempio seguente mostra come configurare un crawler in modo che non modifichi lo schema esistente, ma aggiunga solo nuove colonne:

aws glue update-crawler \ --name myCrawler \ --configuration '{"Version": 1.0, "CrawlerOutput": {"Tables": {"AddOrUpdateBehavior": "MergeNewColumns"}}}'

L'esempio seguente mostra come configurare un crawler per non modificare lo schema esistente e non aggiungere nuove colonne:

aws glue update-crawler \ --name myCrawler \ --schema-change-policy UpdateBehavior=LOG \ --configuration '{"Version": 1.0, "CrawlerOutput": {"Partitions": { "AddOrUpdateBehavior": "InheritFromTable" }}}'
API

Se non vuoi che uno schema di tabella venga modificato in alcun modo durante l'esecuzione di un crawler, imposta la policy di modifica dello schema su LOG.

Quando configurate il crawler utilizzando ilAPI, impostate i seguenti parametri:

  • Imposta il campo UpdateBehavior nella struttura SchemaChangePolicy su LOG.

  • Imposta il Configuration campo con una rappresentazione in formato stringa del seguente JSON oggetto nel crawlerAPI, ad esempio:

    { "Version": 1.0, "CrawlerOutput": { "Partitions": { "AddOrUpdateBehavior": "InheritFromTable" } } }