クエリを実行する前に、Amazon S3 のクエリ結果バケットの場所を指定しておく、または指定されたバケットがあり、その設定がクライアント設定を上書きするワークグループを使用する必要があります。
Athena コンソールを使用してクライアント側の設定のクエリ結果の場所を指定する
-
クエリ結果の場所を指定するワークグループに切り替えます。デフォルトのワークグループの名前は primary です。
-
ナビゲーションバーから [Settings] (設定) を選択します。
-
ナビゲーションバーで [Manage] (管理) を選択します。
-
[Manage settings] (設定の管理) で、以下のいずれかを実行します。
-
[Location of query result] (クエリ結果の場所) ボックスで、クエリ結果のために Amazon S3 に作成したバケットへのパスを入力します。パスの先頭に
s3://
を付けます。 -
[Browse S3] (S3 をブラウズ) をクリックし、現在のリージョンで作成した Amazon S3 バケットを選択した上で、[Choose] (選択) をクリックします。
注記
ワークグループのすべてのユーザーに対してクエリ結果の場所を指定するワークグループを使用している場合、クエリ結果の場所を変更するオプションは使用できません。
-
-
(オプション) [View lifecycle configuration] (ライフサイクル設定を表示) を選択すると、クエリ結果バケットの [Amazon S3 lifecycle rules] (Amazon S3 ライフサイクルルール) を表示および設定できます。作成する Amazon S3 ライフサイクルルールは、有効期限ルールまたは移行ルールのいずれでも可能です。有効期限ルールでは、一定の時間が経過するとクエリ結果は自動的に削除されます。移行ルールは別の Amazon S3 ストレージ階層に移動します。詳細については、Amazon Simple Storage Service ユーザーガイドの「バケットのライフサイクル設定の指定」を参照してください。
-
(オプション) [Expected bucket owner] (想定されるバケット所有者) に、出力ロケーションバケットの所有者になると想定されている AWS アカウント の ID を入力します。これは追加のセキュリティ対策です。バケット所有者のアカウント ID がここで指定した ID と一致しない場合、バケットに出力できません。詳細については、「Amazon S3 ユーザーガイド」の「バケット所有者条件によるバケット所有者の確認」を参照してください。
注記
予期されるバケット所有者の設定は、Athena クエリの結果の出力先として指定した Amazon S3 内の場所にのみ適用されます。これは、外部 Simple Storage Service (Amazon S3) バケット内のデータソースの場所、
CTAS
やINSERT INTO
の書き込み先のテーブルの場所、UNLOAD
ステートメントの出力場所、串刺検索のバケットのスピルオペレーション、別のアカウントのテーブルに対して実行されるSELECT
クエリなど、他の Amazon S3 ロケーションには適用されません。 -
(オプション) Simple Storage Service (Amazon S3) に保存されているクエリ結果を暗号化するには、[Encrypt query results] (クエリ結果の暗号化) を選択します。Athena の暗号化に関する詳細については、保管中の暗号化 を参照してください。
-
(オプション) クエリ結果バケットの ACL が有効になっているときに、バケット所有者にクエリ結果に対するフルコントロールアクセスを割り当てるには、[Assign bucket owner full control over query results] (クエリ結果に対する完全なコントロールをバケット所有者に付与する) を選択します。たとえば、クエリ結果の場所を別のアカウントが所有している場合に、クエリ結果の所有権とフルコントロールを他のアカウントに付与することができます。詳細については、Simple Storage Service (Amazon S3) ユーザーガイドのオブジェクトの所有権のコントロールとバケットに対する ACL の無効化を参照してください。
-
[Save] を選択します。