Attivazione dell'eliminazione di file orfani - AWS Glue

Attivazione dell'eliminazione di file orfani

Puoi utilizzare la AWS Glue console, AWS CLI o l'API AWS per abilitare l'eliminazione dei file orfani per le tabelle Apache Iceberg presenti nel Catalogo dati. Per le nuove tabelle, puoi scegliere Apache Iceberg come formato di tabella e abilitare l'ottimizzatore dell'eliminazione dei file orfani quando crei la tabella. La conservazione degli snapshot è disabilitata per impostazione predefinita per le nuove tabelle.

Console
Abilitazione dell'eliminazione di file orfani
  1. Apri la console AWS Glue all'indirizzo https://console.aws.amazon.com/glue/ e accedi come amministratore del data lake, creatore della tabella o utente a cui sono state concesse le autorizzazioni lakeformation:GetDataAccess e glue:UpdateTable sulla tabella.

  2. Nel pannello di navigazione, in Catalogo dati, seleziona Tabelle.

  3. Nella pagina Tabelle, scegli una tabella Iceberg in cui desideri abilitare l'eliminazione dei file orfani.

    Scegli la scheda Ottimizzazione della tabella nella sezione inferiore della pagina e scegli Abilita, Eliminazione dei file orfani da Azioni.

    Puoi anche scegliere Abilita in Ottimizzazione dal menu Azioni situato nell'angolo in alto a destra della pagina.

  4. Nella pagina Abilita ottimizzazione, scegli Eliminazione dei file orfani in Opzioni di ottimizzazione.

  5. Se scegli di utilizzare le Impostazioni predefinite, tutti i file orfani verranno eliminati dopo 3 giorni. Se desideri conservare i file orfani per un numero specifico di giorni, scegli Personalizza impostazioni.

  6. Quindi, scegli un ruolo IAM con le autorizzazioni necessarie per eliminare i file orfani.

  7. Se hai configurazioni di policy di sicurezza in cui l'ottimizzatore di tabelle Iceberg deve accedere ai bucket Amazon S3 da un cloud privato virtuale (VPC) specifico, crea una AWS Glue connessione di rete o usane una esistente.

    Se non hai già configurato una Connessione AWS Glue VPC, creane una nuova seguendo i passaggi nella sezione Creazione di connessioni per connettori utilizzando la AWS Glue console o AWS CLI/SDK.

  8. Se scegli Personalizza impostazioni, inserisci il numero di giorni durante cui mantenere i file prima dell'eliminazione in Configurazione dell'eliminazione dei file orfani. Puoi anche specificare l'intervallo tra due esecuzioni consecutive dell'ottimizzatore. Il valore predefinito è 24 ore.

  9. Scegli Abilita ottimizzazione.

AWS CLI

Per abilitare l'eliminazione di file orfani per una tabella Iceberg in AWS Glue, devi creare un ottimizzatore di tabella di tipo orphan_file_deletion e impostare il campo enabled su true. Per creare un ottimizzatore di eliminazione del file orfano per una tabella Iceberg utilizzando AWS CLI, è possibile utilizzare il seguente comando:

aws glue create-table-optimizer \ --catalog-id 123456789012 \ --database-name iceberg_db \ --table-name iceberg_table \ --table-optimizer-configuration '{"roleArn":"arn:aws:iam::123456789012:role/optimizer_role","enabled":true, "vpcConfiguration":{ "glueConnectionName":"glue_connection_name"}, "orphanFileDeletionConfiguration":{"icebergConfiguration":{"orphanFileRetentionPeriodInDays":3, "location":'S3 location'}}}'\ --type orphan_file_deletion

Questo comando crea un ottimizzatore per l'eliminazione dei file orfani per la tabella Iceberg specificata. I parametri chiave sono:

  • roleARN: l'ARN del ruolo IAM con autorizzazioni di accesso al bucket S3 e alle risorse Glue.

  • enabled: impostare su true per abilitare l'ottimizzatore.

  • orphanFileRetentionPeriodInDays: il numero di giorni in cui mantenere i file orfani prima di eliminarli (minimo 1 giorno).

  • type: imposta su orphan_file_deletion per creare un ottimizzatore per l'eliminazione dei file orfani.

Dopo averlo creato, l'ottimizzatore di tabelle, eseguirà periodicamente l'eliminazione dei file orfani (una volta al giorno se lasciato abilitato). Puoi controllare le esecuzioni utilizzando l'list-table-optimizer-runsAPI. Il processo di eliminazione dei file orfani identificherà ed eliminerà i file che non sono tracciati nei metadati Iceberg per la tabella.

API

Chiama l'operazione CreateTableOptimizer per creare l'ottimizzatore di eliminazione dei file orfani per una tabella specifica.