AWS Serverless Application Repository を使用したデータソースコネクタのデプロイ - Amazon Athena

AWS Serverless Application Repository を使用したデータソースコネクタのデプロイ

データソースコネクタをデプロイするには、Athena コンソールではなく AWS Serverless Application Repository を使用します。AWS Serverless Application Repository により、使用する対象のコネクタを検索し、コネクタに必要なパラメータを指定した上で、そのコネクタをアカウントにデプロイします。コネクタのデプロイが完了したら、Athena コンソールを使用して Athena がデータソースを使用できるようにします。

アカウントへのコネクタのデプロイ

注記

Amazon Athena の横串検索機能を使用するには、ワークグループを Athena エンジンバージョン 2 に設定します。この手順については、「Athena エンジンバージョンの変更」を参照してください。

AWS Serverless Application Repository を使用してデータソースコネクタをアカウントにデプロイするには
  1. AWS Management Console にサインインし、サーバーレスアプリケーションリポジトリを開きます。

  2. ナビゲーションペインで、[Available applications] (利用可能なアプリケーション) を選択します。

  3. [Show apps that create custom roles or resource policies] (カスタム IAM ロールまたはリソースポリシーを作成するアプリを表示する) オプションを選択します。

  4. 検索ボックスに、コネクタの名前を入力します。事前構築された Athena データコネクタのリストについては、「Athena データソースコネクタの使用」を参照してください。

  5. コネクタの名前を選択します。コネクタを選択すると、Lambda 関数の [Application details] (アプリケーションの詳細) ページが AWS Lambda コンソールに表示されます。

  6. 詳細ページの右側の [Application settings] (アプリケーションの設定) で、必要な情報を入力します。最低限必要な設定は次のとおりです。Athena で構築されるデータコネクタのその他の設定可能なオプションについては、GitHub の「Available connectors」(使用可能なコネクタ) の対応するトピックを参照してください。

    • AthenaCatalogName — ターゲットとなるデータソースを示す小文字の Lambda 関数の名前 (例えば、cloudwatchlogs)。

    • SpillBucket — アカウント内の Amazon S3 バケットを指定して、Lambda 関数のレスポンスサイズ制限を超える大規模なレスポンスペイロードからデータを受信します。

  7. [I acknowledge that this app creates custom IAM roles and resource policies] (このアプリがカスタム IAM ロールとリソースポリシーを作成することを承認します) を選択します。詳細については、[Info] (情報) リンクを選択してください。

  8. [Application settings] (アプリケーションの設定) セクションの右下で [Deploy] (デプロイ) を選択します。デプロイが完了すると、Lambda 関数が Lambda コンソールの [リソース] セクションに表示されます。

コネクタを Athena で使用できるようにする

Athena コンソールを使用して、データソースコネクタを Athena で使用できるようにします。

データソースコネクタを Athena で使用できるようにするには
  1. https://console.aws.amazon.com/athena/ で Athena コンソールを開きます。

  2. コンソールのナビゲーションペインが表示されない場合は、左側の展開メニューをクリックします。

    
                            展開メニューを選択します。
  3. ナビゲーションペインで、[Data source] (データソース) をクリックします。

  4. [Data sources] (データソース) タブで [Connect data source] (データソースを接続する) を選択します。

  5. [データソースを選択] で、AWS Serverless Application Repository でコネクタを作成したデータソースを選択します。このチュートリアルでは、フェデレーションデータソースとして Amazon CloudWatch Logs を選択します。

  6. [Next] を選択します。

  7. [Data source details] (データソースの詳細) ページの [Data source name] (データソース名) に、Athena からデータソースをクエリする際に SQL ステートメントで使用する名前 (例えば CloudWatchLogs) を入力します。名前は最大 127 文字で、アカウント内で一意である必要があります。この設定は、作成後に変更することはできません。有効な文字は、a~z、A~Z、0~9、_ (アンダースコア)、@ (at マーク)、および - (ハイフン) です。awsdatacataloghivejmx、および system の名前は Athena によって予約されており、データソース名には使用できません。

  8. [接続の詳細] セクションで、[Lambda 関数を選択または入力] ボックスを使って、先ほど作成した関数の名前を選択します。Lambda 関数の ARN が表示されます。

  9. (オプション) [Tags] (タグ) でキーと値のペアを追加して、このデータソースに関連付けます。タグの詳細については、「Athena リソースへのタグ付け」を参照してください。

  10. [Next] を選択します。

  11. [Review and create] (確認と作成) ページで、データソースの詳細について確認し、[Add data source] (データソースの追加) を選択します。

  12. データソースのページの [データソースの詳細] セクションには、新しいコネクタに関する情報が表示されます。これで、Athena クエリでコネクタを使用できるようになりました。

    データコネクタを使用したクエリの記述については、「フェデレーティッドクエリの記述」を参照してください。