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à.
Interroga le tabelle Apache Iceberg
È possibile utilizzare Athena per eseguire query di lettura, viaggio nel tempo, scrittura e DDL sulle tabelle Apache Iceberg.
Apache Iceberg
Per ulteriori informazioni su Apache Iceberg, consulta https://iceberg.apache.org/
Considerazioni e limitazioni
Il supporto di Athena per le tabelle Iceberg presenta le seguenti considerazioni e limitazioni:
-
Supporto per la versione Iceberg — Athena supporta la versione 1.4.2 di Apache Iceberg.
-
Tabelle registrate con Lake Formation — Athena attualmente non supporta le operazioni DDL sulle tabelle Iceberg registrate con Lake Formation.
-
Interrogazioni sullo schema informativo: quando si esegue una query sullo schema informativo delle tabelle Iceberg, Athena utilizza i metadati S3 come fonte di verità per i metadati delle colonne. Ciò significa che le informazioni sulle colonne derivano dai file S3 sottostanti anziché dai metadati del catalogo. Questo comportamento è diverso da altri formati di tabella in cui i metadati del catalogo potrebbero essere la fonte principale per le informazioni sulle colonne.
-
Solo tabelle con AWS Glue catalogo: solo le tabelle Iceberg create in base al AWS Glue catalogo in base alle specifiche definite dall'implementazione open source del catalogo Glue
sono supportate da Athena. -
Supporto AWS Glue solo per il blocco delle tabelle: a differenza dell'implementazione open source del catalogo Glue, che supporta il blocco personalizzato tramite plug-in, Athena supporta AWS Glue solo il blocco ottimistico. L'utilizzo di Athena per modificare una tabella Iceberg con qualsiasi altra implementazione di blocco causerà potenziali perdite di dati e interruzioni delle transazioni.
-
Formati di file supportati: la versione 3 del motore Athena supporta i seguenti formati di file Iceberg.
-
Parquet
-
ORC
-
Avro
-
-
Metadati limitati da Iceberg: Lake Formation non valuta le tabelle dei metadati di Iceberg. Pertanto, le tabelle dei metadati Iceberg sono limitate se nella tabella base sono presenti filtri di riga o cella di Lake Formation o se non si dispone delle autorizzazioni per visualizzare tutte le colonne nella tabella base. In questi casi, l'interrogazione delle tabelle di metadati
$partitions$files,$manifests, e$snapshotsIceberg ha esito negativo e viene visualizzato un errore.AccessDeniedExceptionInoltre, la colonna dei metadati$pathpresenta le stesse restrizioni di Lake Formation e ha esito negativo quando viene selezionata dalla query. Tutte le altre tabelle di metadati possono essere interrogate indipendentemente dai filtri di Lake Formation. Per ulteriori informazioni, consulta Tabelle di metadati. -
Tabelle Iceberg v2: Athena crea e opera solo su tabelle Iceberg v2. Per la differenza tra le tabelle v1 e v2, consulta Modifiche al tipo di formato
nella documentazione di Apache Iceberg. -
Visualizzazione dei tipi di orari senza fuso orario: l'ora e il timestamp senza tipi di fuso orario vengono visualizzati in UTC. Se il fuso orario non è specificato in un'espressione di filtro su una colonna temporale, viene utilizzato UTC.
-
Precisione dei dati relativi al timestamp: mentre Iceberg supporta una precisione al microsecondo per il tipo di dati del timestamp, Athena per i timestamp supporta solo una precisione al millisecondo sia in lettura che in scrittura. Per i dati nelle colonne relative al tempo riscritti durante le operazioni di compattazione manuale, Athena mantiene solo una precisione al millisecondo.
-
Operazioni non supportate:le seguenti operazioni Athena non sono supportate per le tabelle Iceberg.
-
Viste: utilizza
CREATE VIEWper creare viste Athena come descritto nella pagina Lavora con le viste. Se desideri utilizzare le specifiche di visualizzazione Icebergper creare viste, contatta athena-feedback@amazon.com . -
I comandi di gestione TTF non sono supportati in AWS Lake Formation: sebbene sia possibile utilizzare Lake Formation per gestire le autorizzazioni di accesso in lettura per TransactionTable formati (TTFs) come Apache Iceberg, Apache Hudi e Linux Foundation Delta Lake, non è possibile utilizzare Lake Formation per gestire le autorizzazioni per operazioni come
VACUUM,MERGEo con questi formati di tabella.UPDATEOPTIMIZEPer ulteriori informazioni sull'integrazione di Lake Formation con Athena, consulta Using AWS Lake Formation with Amazon Athena nella AWS Lake Formation Developer Guide. -
Partizionamento per campi annidati: il partizionamento per campi annidati non è supportato. Il tentativo di eseguire questa operazione genera il messaggio
NOT_SUPPORTED: Il partizionamento per campo annidato non è supportato:.column_namenested_field_name. -
Ignorare gli oggetti Amazon Glacier non è supportato: se gli oggetti nella tabella Apache Iceberg si trovano in una classe di storage Amazon Glacier, l'impostazione della proprietà della tabella su non ha alcun effetto.
read_restored_glacier_objectsfalseAd esempio, supponiamo di emettere il seguente comando:
ALTER TABLEtable_nameSET TBLPROPERTIES ('read_restored_glacier_objects' = 'false')Per le tabelle Iceberg e Delta Lake, il comando produce l'errore
Chiave delle proprietà della tabella non supportata: read_restored_glacier_objects. Per le tabelle Hudi, ilALTER TABLEcomando non produce errori, ma gli oggetti Amazon Glacier non vengono ancora ignorati. L'esecuzione delle querySELECTdopo il comandoALTER TABLEcontinuerà a restituire tutti gli oggetti.
Se si desidera che Athena supporti una particolare funzionalità, inviare un feedback all'indirizzo athena-feedback@amazon.com