Opzioni avanzate
Dimensioni di recupero
Numero massimo di risultati (righe) da restituire in questa richiesta. Per informazioni sul parametro, consulta GetQuery MaxResults. Per l'API di streaming, il valore massimo è pari a 10000000.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| RowsToFetchPerBlock | Facoltativo |
|
RowsToFetchPerBlock=20000; |
Sistema di recupero (fetcher) dei risultati
Il fetcher dei risultati predefinito scarica i risultati delle query direttamente da Amazon S3 senza utilizzare le operazioni API Athena. Quando rileva situazioni in cui il download diretto di S3 non è possibile, torna automaticamente a utilizzare l'operazione API GetQueryResultsStream. Ad esempio, ciò accade quando i risultati delle query vengono crittografati con l'opzione CSE_KMS.
L'uso del fetcher auto è consigliato nella maggior parte delle situazioni. Tuttavia, se le policy IAM o le policy di bucket S3 utilizzano la condizione s3:CalledVia per limitare l'accesso agli oggetti S3 alle richieste di Athena, l'auto fetcher tenta prima di scaricare i risultati da S3 e poi torna a utilizzare GetQueryResultsStream. In questa situazione, si potrebbe voler impostare il ResultFetcher su GetQueryResultsStream per evitare una chiamata API aggiuntiva.
Nota
Il driver riconosce ancora i parametri Enable streaming API (UseResultsetStreaming=1;) e Enable S3 fetcher (EnableS3Fetcher=1;). Tuttavia, consigliamo di utilizzare il parametro ResultFetcher per una migliore esperienza.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Valori possibili | Esempio stringa connessione |
|---|---|---|---|---|
|
ResultFetcher |
Facoltativo | auto |
auto, S3, GetQueryResults,
GetQueryResultsStream |
ResultFetcher=auto |
Come abilitare il riutilizzo dei risultati
Specifica se i risultati della query precedente possono essere riutilizzati quando la query viene eseguita. Per informazioni sul parametro, consulta ResultReuseByAgeConfiguration.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| EnableResultReuse | Facoltativo | 0 |
EnableResultReuse=1; |
Età massima per il riutilizzo di risultati
Specifica, in minuti, l'età massima dei risultati di una query precedente che Athena debba considerare per il riutilizzo. Per informazioni sul parametro, consulta ResultReuseByAgeConfiguration.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| ReusedResultMaxAgeInMinutes | Facoltativo | 60 |
ReusedResultMaxAgeInMinutes=90; |
Utilizzo di più thread S3
Recupera i dati da Amazon S3 utilizzando più thread. Quando questa opzione è abilitata, il file di risultati archiviato nel bucket Amazon S3 viene recuperato in parallelo utilizzando più thread.
Abilita questa opzione solo se disponi di una buona larghezza di banda della rete. Ad esempio, nelle nostre misurazioni su un'istanza EC2 c5.2xlarge
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
|
UseMultipleS3Threads |
Facoltativo | 0 |
UseMultipleS3Threads=1; |
Utilizzo di schema e catalogo singolo
Per impostazione predefinita, il driver ODBC esegue query su Athena per ottenere l'elenco dei cataloghi e degli schemi disponibili. Questa opzione prevede che il driver utilizzi il catalogo e lo schema specificati dalla finestra di dialogo di configurazione di ODBC Data Source Administrator o dai parametri di connessione.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| UseSingleCatalogAndSchema | Facoltativo | 0 |
UseSingleCatalogAndSchema=1; |
Utilizzare query per elencare tabelle
Per i tipi di catalogo LAMBDA, consente al driver ODBC di inviare una query SHOW TABLES per ottenere un elenco di tabelle disponibili. Questa è l'impostazione di default. Se questo parametro è impostato su 0, per ottenere un elenco di tabelle disponibili il driver ODBC utilizza l'API di Athena ListTableMetadata. Si noti che, per i tipi di catalogo LAMBDA, l'utilizzo di ListTableMetadata porta alla regressione delle prestazioni.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| UseQueryToListTables | Facoltativo | 1 |
UseQueryToListTables=1; |
Utilizzare WCHAR per i tipi di stringhe
Per impostazione predefinita, il driver ODBC utilizza SQL_CHAR e SQL_VARCHAR per Athena i tipi di dati stringa char, varchar, string, array, map<>, struct<>, e row. L'impostazione di questo parametro su 1 forza l'utilizzo da parte del driver di SQL_WCHAR e SQL_WVARCHAR per i tipi di dati a stringa. I tipi di caratteri wide e wide variable vengono utilizzati per garantire che i caratteri di diverse lingue possano essere archiviati e recuperati correttamente.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| UseWCharForStringTypes | Facoltativo | 0 |
UseWCharForStringTypes=1; |
Esecuzione di query su cataloghi esterni
Specifica se il driver deve eseguire query sui cataloghi esterni ad Athena. Per ulteriori informazioni, consulta Migrare al driver ODBC 2.x.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| QueryExternalCatalogs | Facoltativo | 0 |
QueryExternalCatalogs=1; |
Verifica di SSL
Controlla se verificare i certificati SSL quando utilizzi l'SDK di AWS. Questo valore viene passato al parametro ClientConfiguration.verifySSL. Per ulteriori informazioni, consulta Configurazione client AWS nella Guida per gli sviluppatori di AWS SDK per C++.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| VerifySSL | Facoltativo | 1 |
VerifySSL=0; |
Dimensione del blocco dei risultati S3
Specifica, in byte, la dimensione del blocco da scaricare per una singola richiesta API GetObject di Amazon S3. Il valore predefinito è pari a 67108864 (64 MB). I valori minimo e massimo consentiti sono 10485760 (10 MB) e 2146435072 (circa 2 GB).
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| S3ResultBlockSize | Facoltativo | 67108864 |
S3ResultBlockSize=268435456; |
Lunghezza della colonna di stringa
Speciifica la lunghezza delle colonne con il tipo di dati string. Poiché Athena utilizza il tipo di dati stringa Apache HiveINT_MAX). Poiché gli strumenti di BI di solito preallocano la memoria per le colonne, ciò può comportare un elevato consumo di memoria. Per evitare ciò, il driver ODBC Athena limita la precisione riportata per le colonne del tipo di dati string ed espone il parametro di connessione StringColumnLength in modo che il valore predefinito possa essere modificato.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| StringColumnLength | Facoltativo | 255 | StringColumnLength=65535; |
Lunghezza della colonna di tipo complesso
Speciifica la lunghezza delle colonne con tipi di dati complessi come mapstruct, e array. Come StringColumnLength, Athena riporta una precisione pari a 0 per le colonne con tipi di dati complessi. Il driver ODBC Athena imposta la precisione predefinita per le colonne con tipi di dati complessi ed espone il parametro di connessione ComplexTypeColumnLength in modo che il valore predefinito possa essere modificato.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| ComplexTypeColumnLength | Facoltativo | 65535 | ComplexTypeColumnLength=123456; |
Certificato CA attendibile
Indica al client HTTP dove trovare l'archivio attendibile con i certificati SSL. Questo valore viene passato al parametro ClientConfiguration.caFile. Per ulteriori informazioni, consulta Configurazione client AWS nella Guida per gli sviluppatori di AWS SDK per C++.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| TrustedCerts | Facoltativo | %INSTALL_PATH%/bin |
TrustedCerts=C:\\Program Files\\Amazon Athena ODBC
Driver\\bin\\cacert.pem; |
Periodo minimo del polling
Specifica in millisecondi il valore minimo di attesa prima di eseguire il polling di Athena per verificare lo stato di esecuzione della query.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| MinQueryExecutionPollingInterval | Facoltativo | 100 |
MinQueryExecutionPollingInterval=200; |
Periodo massimo del polling
Specifica in millisecondi il valore massimo di attesa prima di eseguire il polling di Athena per verificare lo stato di esecuzione della query.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| MaxQueryExecutionPollingInterval | Facoltativo | 60000 |
MaxQueryExecutionPollingInterval=1000; |
Moltiplicatore polling
Specifica il fattore di incremento del periodo del polling. Per impostazione predefinita, il polling inizia con il valore del periodo minimo del polling e raddoppia con ogni polling fino a raggiungere il valore del periodo massimo di polling.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| QueryExecutionPollingIntervalMultiplier | Facoltativo | 2 |
QueryExecutionPollingIntervalMultiplier=2; |
Durata massima del polling
Specifica il valore massimo in millisecondi entro cui un driver può eseguire il polling su Athena per verificare lo stato di esecuzione delle query.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| MaxPollDuration | Facoltativo | 1800000 |
MaxPollDuration=1800000; |
Timeout di connessione
La quantità di tempo (in millisecondi) di attesa prima che venga stabilita una connessione HTTP. Questo valore è impostato per il client Athena ClientConfiguration.connectTimeoutMs. Se non è specificato, viene utilizzato il valore predefinito curl. Per informazioni sui parametri di connessione, consulta Configurazione client nella Guida per gli sviluppatori di AWS SDK per Java.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| ConnectionTimeout (Timeout disconnessione) | Facoltativo | 0 |
ConnectionTimeout=2000; |
Timeout richiesta
Specifica il timeout di lettura dei socket per i client HTTP. Questo valore è impostato per il parametro ClientConfiguration.requestTimeoutMs del client Athena. Per informazioni, consulta Configurazione client nella Guida per gli sviluppatori di AWS SDK per Java.
| Nome stringa connessione | Tipo parametro | Valore predefinito | Esempio stringa connessione |
|---|---|---|---|
| RequestTimeout | Facoltativo | 10000 |
RequestTimeout=30000; |