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à.
Sincronizza i metadati di Delta Lake
Athena sincronizza i metadati della tabella, inclusi schema, colonne di partizione e proprietà della tabella, con se AWS Glue usi Athena per creare la tua tabella Delta Lake. Con il passare del tempo, questi metadati possono perdere la sincronizzazione con i metadati della tabella sottostante nel log delle transazioni. Per mantenere aggiornata la tua tabella, puoi scegliere una delle seguenti opzioni:
-
Usa il AWS Glue crawler per le tabelle Delta Lake. Per maggiori informazioni, consulta Introduzione al supporto nativo delle tabelle Delta Lake con AWS Glue i crawler
nel AWS Big Data Blog e Scheduling an AWS Glue crawler nella Developer Guide. AWS Glue -
Elimina e ricrea la tabella in Athena.
-
Usa l'SDK, la CLI AWS Glue o la console per aggiornare manualmente lo schema in. AWS Glue
Tieni presente che le seguenti funzionalità richiedono che AWS Glue lo schema abbia sempre lo stesso schema del log delle transazioni:
-
Lake Formation
-
Visualizzazioni
-
Filtri di righe e colonne
Se il tuo flusso di lavoro non richiede nessuna di queste funzionalità e preferisci non mantenere questa compatibilità, puoi utilizzare CREATE TABLE DDL in Athena e quindi aggiungere il percorso Amazon S3 come parametro in. SerDe AWS Glue
È possibile utilizzare la procedura seguente per creare una tabella Delta Lake con Athena e AWS Glue console.
Per creare una tabella Delta Lake utilizzando Athena e console AWS Glue
Apri la console Athena all'indirizzo https://console.aws.amazon.com/athena/
. -
Nell'editor di query Athena, utilizza il seguente DDL per creare una tabella Delta Lake. Tiene presente che quando utilizzi questo metodo il valore per
TBLPROPERTIESdeve essere'spark.sql.sources.provider' = 'delta'e non'table_type' = 'delta'.Nota, inoltre, che questo stesso schema (con una sola colonna denominata
coldi tipoarray<string>) viene inserito quando utilizzi Apache Spark (Athena per Apache Spark) o la maggior parte degli altri motori per creare una tabella.CREATE EXTERNAL TABLE [db_name.]table_name(col array<string>) LOCATION 's3://amzn-s3-demo-bucket/your-folder/' TBLPROPERTIES ('spark.sql.sources.provider' = 'delta') Apri la AWS Glue console all'indirizzo. https://console.aws.amazon.com/glue/
-
Nel pannello di navigazione, seleziona Catalogo dati, Tabelle.
-
Nell'elenco delle tabelle, seleziona il link per la tabella.
-
Nella pagina della tabella seleziona Azioni, Modifica tabella.
-
Nella sezione Parametri Serde aggiungi la chiave
pathcon il valores3://amzn-s3-demo-bucket/.your-folder/ -
Scegli Save (Salva).
Per creare una tabella Delta Lake utilizzando il AWS CLI, immettete un comando come il seguente.
aws glue create-table --database-name dbname \ --table-input '{"Name" : "tablename", "StorageDescriptor":{ "Columns" : [ { "Name": "col", "Type": "array<string>" } ], "Location" : "s3://amzn-s3-demo-bucket/<prefix>/", "SerdeInfo" : { "Parameters" : { "serialization.format" : "1", "path" : "s3://amzn-s3-demo-bucket/<prefix>/" } } }, "PartitionKeys": [], "TableType": "EXTERNAL_TABLE", "Parameters": { "EXTERNAL": "TRUE", "spark.sql.sources.provider": "delta" } }'