詳細オプション - Amazon Athena

詳細オプション

フェッチサイズ

このリクエストで返す結果 (行) の最大数。パラメータ情報については、「GetQuery MaxResults」を参照してください。ストリーミング API の場合、最大値は 10000000 です。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
RowsToFetchPerBlock オプションです。

非ストリーミング用の 1000

ストリーミング用の 20000

RowsToFetchPerBlock=20000;

結果の再利用を有効にする

クエリの実行時に以前のクエリ結果を再利用できるかどうかを指定します。パラメータ情報については、「ResultReuseByAgeConfiguration」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
EnableResultReuse オプションです。 0 EnableResultReuse=1;

結果再利用の上限有効期間

Athena が再利用を検討するべき以前のクエリ結果の最大保存期間を、分単位で指定します。パラメータ情報については、「ResultReuseByAgeConfiguration」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
ReusedResultMaxAgeInMinutes オプションです。 60 ReusedResultMaxAgeInMinutes=90;

ストリーミング API を有効にする

Athena ストリーミング API を使用して結果セットを取得するかどうかを選択します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
UseResultsetStreaming オプションです。 0 UseResultsetStreaming=1;

S3 フェッチャーを有効にする

Athena が生成された結果セットを、Amazon S3 と直接やり取りして Amazon S3 バケットから取得します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
EnableS3Fetcher オプションです。 1 EnableS3Fetcher=1;

複数の S3 スレッドを使用する

複数のスレッドを使用して Amazon S3 からデータを取得します。このオプションを有効にすると、Amazon S3 バケットに保存された結果ファイルが、複数のスレッドを使用して同時に取得されます。

このオプションは、ネットワーク帯域幅が十分である場合にのみ有効にしてください。たとえば、EC2 c5.2xlarge インスタンスでの測定では、シングルスレッドの S3 クライアントは 1 Gbps に達し、マルチスレッドの S3 クライアントではネットワークスループットが 4 Gbps に達しました。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例

UseMultipleS3Threads

オプションです。 0 UseMultipleS3Threads=1;

単一のカタログとスキーマを使用

デフォルトでは、ODBC ドライバーは Athena にクエリを実行して、使用可能なカタログとスキーマのリストを取得します。このオプションでは、[ODBC データソースの管理者] 設定ダイアログボックスまたは接続パラメータで指定されたカタログとスキーマをドライバーに強制的に使用させます。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
UseSingleCatalogAndSchema オプションです。 0 UseSingleCatalogAndSchema=1;

クエリを使用してテーブルをリストする

LAMBDA カタログ型の場合に、ODBC ドライバーが SHOW TABLES クエリを送信して利用可能なテーブルのリストを取得できるようにします。この設定はデフォルトです。このパラメータが 0 に設定されていると、ODBC ドライバーは Athena ListTableMetadata API を使用して利用可能なテーブルのリストを取得します。LAMBDA カタログ型では、ListTableMetadata の使用がパフォーマンスの低下につながることに注意してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
UseQueryToListTables オプションです。 1 UseQueryToListTables=1;

文字列型に WCHAR を使用する

デフォルトで、ODBC ドライバーは Athena 文字列型 charvarcharstringarraymap<>struct<>、および row に、SQL_CHARSQL_VARCHAR を使用します。このパラメータを 1 に設定すると、文字列型への SQL_WCHARSQL_WVARCHAR の使用をドライバーに強制します。ワイド文字型とワイド可変文字型は、異なる言語からの文字が正しく保存および取得されることを確実にするために使用されます。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
UseWCharForStringTypes オプションです。 0 UseWCharForStringTypes=1;

外部カタログをクエリする

ドライバーが Athena から外部カタログをクエリする必要があるかどうかを指定します。詳細については、「ODBC 2.x ドライバーに移行する」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
QueryExternalCatalogs オプションです。 0 QueryExternalCatalogs=1;

SSL の検証

AWS SDK を使用するときに、SSL 証明書を検証するかどうかを管理します。この値は ClientConfiguration.verifySSL パラメータに渡されます。詳細については、「AWS SDK for C++ デベロッパーガイド」の「AWS クライアント設定」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
VerifySSL オプションです。 1 VerifySSL=0;

S3 結果のブロックサイズ

1 回の Amazon S3 GetObject API リクエストでダウンロードするブロックのサイズをバイト単位で指定します。デフォルト値は 67108864 (64 MB) です。許容される最小値と最大値は 10485760 (10 MB) と 2146435072 (約 2 GB) です。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
S3ResultBlockSize オプションです。 67108864 S3ResultBlockSize=268435456;

文字列の列長

string データ型の列の列長を指定します。Athena は精度が定義されていない Apache Hive 文字列データ型を使用するため、Athena が報告するデフォルト長は 2147483647 (INT_MAX) になります。通常、BI ツールは列のメモリを事前に割り当てるため、メモリ消費量の増加につながる可能性があります。これを回避するため、Athena ODBC ドライバーは string データ型の列について報告される精度を制限するとともに、StringColumnLength 接続パラメータを公開してデフォルト値を変更できるようにします。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
StringColumnLength オプションです。 255 StringColumnLength=65535;

複合型の列長

mapstruct、および array といった複合データ型の列の列長を指定します。StringColumnLength と同様に、Athena は複合データ型の列にも 0 精度を報告します。Athena ODBC ドライバーは、複合データ型の列のデフォルト精度を設定するとともに、ComplexTypeColumnLength 接続パラメータを公開してデフォルト値を変更できるようにします。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
ComplexTypeColumnLength オプションです。 65535 ComplexTypeColumnLength=123456;

信頼できる CA 証明書

SSL 証明書の信頼ストアの場所を HTTP クライアントに指示します。この値は ClientConfiguration.caFile パラメータに渡されます。詳細については、「AWS SDK for C++ デベロッパーガイド」の「AWS クライアント設定」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
TrustedCerts オプションです。 %INSTALL_PATH%/bin TrustedCerts=C:\\Program Files\\Amazon Athena ODBC Driver\\bin\\cacert.pem;

最小ポーリング時間

Athena にクエリ実行ステータスをポーリングする前に、待機する最小値をミリ秒単位で指定します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
MinQueryExecutionPollingInterval オプションです。 100 MinQueryExecutionPollingInterval=200;

最大ポーリング時間

Athena にクエリ実行ステータスをポーリングする前に、待機する最大値をミリ秒単位で指定します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
MaxQueryExecutionPollingInterval オプションです。 60000 MaxQueryExecutionPollingInterval=1000;

ポーリングの乗数

ポーリング時間を延長する要素を指定します。デフォルトでは、ポーリングは最小ポーリング時間の値から始まり、最大ポーリング時間の値に達するまでポーリングごとに倍増します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
QueryExecutionPollingIntervalMultiplier オプションです。 2 QueryExecutionPollingIntervalMultiplier=2;

最大ポーリング時間

ドライバーは Athena にクエリ実行ステータスをポーリングできる時間の最大値をミリ秒単位で指定します。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
MaxPollDuration オプションです。 1800000 MaxPollDuration=1800000;

接続タイムアウト

接続を確立するまでに HTTP 接続が待機する時間 (ミリ秒単位)。この値は ClientConfiguration.connectTimeoutMs Athena クライアントで設定されます。指定されていない場合、curl デフォルト値が使用されます。接続パラメータに関する詳細については、「AWS SDK for Java デベロッパーガイド」の「クライアント設定」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
[ConnectionTimeout] オプションです。 0 ConnectionTimeout=2000;

リクエストのタイムアウト

HTTP クライアントのソケット読み取りのタイムアウト値を指定します。この値は Athena クライアントの ClientConfiguration.requestTimeoutMs パラメータで設定します。詳細については、「AWS SDK for Java デベロッパーガイド」の「クライアント設定」を参照してください。

接続文字列名 パラメータタイプ デフォルト値 接続文字列の例
RequestTimeout オプションです。 10000 RequestTimeout=30000;