Mule アプリケーションからAmazon Athena のデータにアクセス:CData JDBC Driver

古川えりか
古川えりか
コンテンツスペシャリスト
CData JDBC ドライバとHTTP、SQL を組み合わせれば、Amazon Athena のデータのJSON エンドポイントに接続できるMule アプリケーションを簡単に作成できます。

CData JDBC Driver for AmazonAthena はAmazon Athena のデータをMule アプリケーションと連携することで、読み、書き、更新、削除といった機能をおなじみのSQL クエリを使って実現します。JDBC ドライバーを使えば、Amazon Athena のデータをバックアップ、変換、レポート作成、分析するMule アプリケーションをユーザーは簡単に作成できます。

本記事では、Mule プロジェクト内でCData JDBC Driver for AmazonAthena を使用して、Amazon Athena のデータのWeb インターフェースを作成する方法を紹介します。作成したアプリケーションを使えば、HTTP 経由でAmazon Athena のデータをリクエストして、JSON 形式で結果を取得できます。まったく同様の手順で、すべてのCData JDBC ドライバで250 を超えるデータソースのWeb インターフェースを作成できます。手順は以下のとおりです。

  1. Anypoint Studio で新しいMule プロジェクトを作る。
  2. Message Flow にHTTP コネクタを追加する。
  3. HTTP コネクタのアドレスを設定する。 HTTP コネクタを追加・設定
  4. HTTP コネクタの追加後、Database Select コネクタを同じフローに追加する。
  5. データベースへの新しい接続を作成し(または既存の接続を編集し)、プロパティを設定する。
    • 接続を「Generic Connection」に設定
    • Required Libraries セクションでCData JDBC ドライバのJAR ファイルを指定する(例:cdata.jdbc.amazonathena.jar)。 JAR ファイルを追加(Salesforce の場合)。
    • Amazon Athena の接続文字列にURL を指定

      Amazon Athena 接続プロパティの取得・設定方法

      それでは、早速Athena に接続していきましょう。

      データに接続するには、以下の接続パラメータを指定します。

      • DataSource:接続するAmazon Athena データソース。
      • Database:接続するAmazon Athena データベース。
      • AWSRegion:Amazon Athena データがホストされているリージョン。
      • S3StagingDirectory:クエリの結果を保存するS3 フォルダ。

      Database またはDataSource が設定されていない場合、CData 製品はAmazon Athena の利用可能なデータソースからすべてのデータベースのリスト化を試みます。そのため、両方のプロパティを設定することでCData 製品のパフォーマンスが向上します。

      Amazon Athena の認証設定

      CData 製品は幅広い認証オプションに対応しています。詳しくはヘルプドキュメントの「はじめに」を参照してみてください。

      AWS キーを取得

      IAM ユーザーの認証情報を取得するには、以下のステップお試しください。

      1. IAM コンソールにサインインします。
      2. ナビゲーションペインでユーザーを選択します。
      3. ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してからセキュリティ認証情報タブに移動します。

      AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。

      1. ルートアカウントの認証情報を使用してAWS 管理コンソールにサインインします。
      2. アカウント名または番号を選択します。
      3. 表示されたメニューでMy Security Credentials を選択します。
      4. ルートアカウントのアクセスキーを管理または作成するには、Continue to Security Credentials をクリックし、[Access Keys]セクションを展開します。

      その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。

      組み込みの接続文字列デザイナ

      JDBC 用のURL の作成にサポートが必要な場合は、Amazon Athena JDBC Driver に組み込まれた接続文字列デザイナを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行してください。

      		java -jar cdata.jdbc.amazonathena.jar
      		

      接続プロパティを入力して、接続文字列をクリップボードにコピーします。

    • Driver クラス名をcdata.jdbc.amazonathena.AmazonAthenaDriver に指定します。 設定したデータベース接続(Salesforce の場合)。
    • 「接続テスト」をクリックします。
  6. SQL Query Text をAmazon Athena のデータをリクエストするためのSQL クエリに設定します。例えば、
    SELECT Name, TotalDue FROM Customers
    Select オブジェクトを設定(Salesforce の場合)
  7. Transform Message コンポーネントをフローに追加します。
  8. Output スクリプトを次のように設定して、ペイロードをJSON に変換します。
    %dw 2.0
    output application/json
    ---
    payload
            
    Transform Message コンポーネントをフローに追加
  9. Amazon Athena のデータを閲覧するには、HTTP コネクタ用に設定したアドレスに移動します(デフォルトでは、localhost:8081):http://localhost:8081。Web ブラウザおよびJSON エンドポイントを使用可能な他のツール内で、Amazon Athena のデータをJSON として利用できます。

これで、カスタムアプリケーションおよび他のさまざまなBI、帳票、ETL ツールからAmazon Athena のデータを(JSON データとして)扱うための簡易なWeb インターフェースを作成できました。Mule アプリケーションからお好みのデータソースにアクセスできる、JDBC Driver for AmazonAthena の30日の無償評価版のダウンロードはこちらから。

はじめる準備はできましたか?

Amazon Athena Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Amazon Athena Icon Amazon Athena JDBC Driver お問い合わせ

Amazon Athena 連携のパワフルなJava アプリケーションを素早く作成して配布。