Considerazioni e restrizioni per le query SQL in Amazon Athena
Quando si eseguono query sulle tabelle Athena, tenere presente le seguenti considerazioni e limitazioni:
-
Procedure archiviate: le procedure archiviate non sono supportate.
-
Numero massimo di partizioni: il numero massimo di partizioni che è possibile creare con le istruzioni
CREATE TABLE AS SELECT(CTAS) è 100. Per ulteriori informazioni, consulta CREATE TABLE AS. Per una soluzione alternativa, vedere Utilizzare CTAS e INSERT INTO per aggirare il limite di 100 partizioni. -
Istruzioni non supportate: le istruzioni non supportate includono le seguenti. Per un elenco delle istruzioni DDL non supportate in Athena, consultare DDL non supportato.
-
CREATE TABLE LIKEnon è supportato. -
DESCRIBE INPUTeDESCRIBE OUTPUTnon sono supportate. -
L'istruzione
MERGEè supportata solo per i formati di tabelle transazionali. Per ulteriori informazioni, consulta MERGE INTO. -
UPDATELe istruzioni non sono supportate. -
DELETE FROMnon è supportato.
-
-
Connettori Trino e Presto: i connettori Trino
e Presto non sono supportati. Utilizzare Amazon Athena Federated Query per collegare le origini dati. Per ulteriori informazioni, consulta Utilizza Amazon Athena Federated Query. -
Timeout su tabelle con molte partizioni – Athena potrebbe verificarsi un timeout quando si esegue una query su una tabella con molte migliaia di partizioni. Questo può accadere quando la tabella ha molte partizioni che non sono di tipo
string. Quando si utilizza il tipostring, Athena elimina le partizioni a livello di metastore. Tuttavia, quando si utilizzano altri tipi di dati, Athena elimina le partizioni a livello di server. Più partizioni hai, più questo processo richiede tempo e più è probabile che le tue query vadano in timeout. Per risolvere questo problema, impostare il tipo di partizione sustringin modo che Athena elimini le partizioni a livello di metastore. Ciò riduce il sovraccarico e impedisce il timeout delle query. -
Supporto per Amazon Glacier: per informazioni sull'esecuzione di query su oggetti Amazon S3 Glacier ripristinati, consultare Eseguire query su oggetti Amazon Glacier ripristinati.
-
File trattati come nascosti – Athena tratta i file sorgenti che iniziano con un trattino basso (
_) o un punto (.) come nascosti. Per aggirare questa limitazione, rinominare i file. -
Limitazione della dimensione di righe o colonne — Le dimensioni di una singola riga o delle relative colonne non può superare i 32 MB. Questo limite può essere superato quando, ad esempio, una riga contiene una singola colonna di 35 MB. Questo è un limite fissato per il servizio che non può essere modificato.
-
Lunghezza massima della riga in un file di testo: la dimensione di una singola riga in un file di testo ha un limite massimo di 200 MB. Il superamento di questo limite può anche produrre il messaggio di errore
TextLineLengthLimitExceededException: Too many bytes before newlinePer aggirare questa limitazione, assicurarsi di non avere alcuna riga in un file di testo che supera i 200 MB. -
Massimo clausola LIMIT: il numero massimo di righe che è possibile specificare per la clausola
LIMITè9223372036854775807. Quando si utilizza
ORDER BY, il numero massimo di righe supportate per la clausola LIMIT è 2147483647. Il superamento di questo limite causa il messaggio di erroreNOT_SUPPORTED: ORDER BY LIMIT > 2147483647 is not supported(NOT_SUPPORTED: ORDER BY LIMIT > 2147483647 non è supportato). -
information_schema: l'interrogazione di
information_schemaè più performante se disponi di una quantità di metadati AWS Glue da piccola a moderata. Se disponi di una quantità di metadati elevata, possono verificarsi degli errori. Per informazioni sull'interrogazione del databaseinformation_schemaper i metadati AWS Glue, consulta la sezione Eseguire query sul AWS Glue Data Catalog. -
Inizializzazioni dell'array: a causa di una limitazione in Java, non è possibile inizializzare un array in Athena con più di 254 argomenti.
-
Colonne di metadati nascoste: le colonne di metadati nascoste Hive o Iceberg,
$bucket,$file_modified_time,$file_sizee$partitionnon sono supportate per le visualizzazioni. Per informazioni sull'utilizzo della colonna dei metadati$pathin Athena, consulta Ottenere le posizioni dei file per i dati di origine in Amazon S3 .
Per informazioni sulla lunghezza massima della stringa di query, sulle quote per i timeout delle query e sulle quote per il numero attivo di query DML, consulta la sezione Service Quotas (Quote di Servizio).