各製品の資料を入手。
詳細はこちら →Power Automate を使用してAmazon Athena のデータを自動化タスクに統合
CData Connect Server を使用してAmazon Athena のデータの仮想SQL Server データベースを作成し、リアルタイムAmazon Athena のデータをPower Automate タスクに統合します。
最終更新日:2021-04-09
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
Power Automate(旧名:Microsoft Flow)は、一般的なアプリとサービスのイベント(ワークフロー)を自動化するオンラインサービスです。CData Connect Server と組み合わせることで、Amazon Athena のデータを使用した自動化タスクの作成を実現できます。この記事では、Power Automate からConnect Server に接続し、Amazon Athena のデータをワークフローとタスクに統合する方法を説明します。
Power Automate はCData Connect Server をSQL Server データベースとして認識し、最適化されたデータ処理を使用してサポートされているすべてのSQL 操作(フィルタ、JOIN など)をAmazon Athena に直接渡し、サーバーサイドの処理を利用してAmazon Athena のデータを素早く返します。
以下のステップでは、CData Connect Server のインスタンスが必要になります。まずは、こちらからConnect Server をダウンロード・インストールしてください。
Amazon Athena のデータの仮想SQL データベースを作成する
CData Connect Server を使えば、簡単なポイントアンドクリックインターフェースを使用してデータソースに接続し、API を生成できます。
- Connect Server にログインし、「CONNECTIONS」をクリックします。
- [Available Data Sources]から[Amazon Athena]を選択します。
-
必要な認証プロパティを入力し、Amazon Athena に接続します。
Amazon Athena 接続プロパティの取得・設定方法
Amazon Athena リクエストの認証には、アカウントの管理のクレデンシャルか、IAM ユーザーのカスタムPermission を設定します。 AccessKey にAccess Key Id、SecretKey にはSecret Access Key を設定します。
AWS アカウントアドミニストレータとしてアクセスできる場合でも、AWS サービスへの接続にはIAM ユーザークレデンシャルを使用することが推奨されます。
IAM ユーザーのクレデンシャル取得は以下のとおり:
- IAM コンソールにログイン。
- Navigation ペインで「ユーザー」を選択。
- ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してから「セキュリティ認証情報」タブを選択。
AWS ルートアカウントのクレデンシャル取得は以下のとおり:
- ルートアカウントの資格情報を使用してAWS 管理コンソールにサインイン。
- アカウント名または番号を選択し、表示されたメニューで「My Security Credentials」を選択。
- 「Continue to Security Credentials」をクリックし、「Access Keys」セクションを展開して、ルートアカウントのアクセスキーを管理または作成。
EC2 インスタンスからの認証
EC2 インスタンスからCData 製品を使用していて、そのインスタンスにIAM ロールが割り当てられている場合は、認証にIAM ロールを使用できます。 これを行うには、UseEC2Roles をtrue に設定しAccessKey とSecretKey を空のままにします。 CData 製品は自動的にIAM ロールの認証情報を取得し、それらを使って認証します。
AWS ロールとして認証
多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。 代わりにRoleARN を指定してAWS ロールを使用できます。これにより、CData 製品は指定されたロールの資格情報を取得しようと試みます。 (すでにEC2 インスタンスなどで接続されているのではなく)AWS に接続している場合は、役割を担うIAM ユーザーのAccessKeyと SecretKey を追加で指定する必要があります。AWS ルートユーザーのAccessKey およびSecretKey を指定する場合、 ロールは使用できません。
MFA での認証
多要素認証を必要とするユーザーおよびロールには、MFASerialNumber およびMFAToken 接続プロパティを指定してください。 これにより、CData 製品は一時的な認証資格情報を取得するために、リクエストでMFA 認証情報を送信します。一時的な認証情報の有効期間 (デフォルトは3600秒)は、TemporaryTokenDuration プロパティを介して制御できます。
Amazon Athena への接続
AccessKey とSecretKey プロパティに加え、Database、S3StagingDirectory、Region を設定します。Region をAmazon Athena データがホストされているリージョンに設定します。S3StagingDirectory をクエリの結果を格納したいS3内のフォルダに設定します。
接続にDatabase が設定されていない場合は、CData 製品はAmazon Athena に設定されているデフォルトデータベースに接続します。
- 「 Test Database」をクリックします。
- [Permission]->[ Add]とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー)を追加します。
CData Connect Server に接続する
Connect Server を使用してAmazon Athena のデータをPower Automate タスクに統合するには、新しいSQL Server 接続を作成します。
- まずは、Power Automate にログインします。
- [Data]->[Connections]->[New connection]とクリックします。
- SQL Server を選択します。
- 接続ウィザードにて
- Authentication Type を"SQL Server Authentication" に設定します。
- SQL server name をConnect Server インスタンスのアドレスに設定します。(CONNECT_SERVER_URL)
- SQL database name を以前作成したAmazon Athena の名前(athenadb など)に設定します。
- Username とPassword を設定し、[Create]をクリックします。
Amazon Athena のデータをPower Automate タスクに統合する
Connect Server への接続が構成されたら、いよいよAmazon Athena のデータをPower Automate タスクに統合しましょう。
- [My flows]->[New flow]とクリックし、スクラッチまたはテンプレートからフローを作成します。
- フロー内にSQL Server アクション(Get rows など)を追加し、Connect Server に接続するようアクションを構成します。
- 使用するテーブルをドロップダウンメニューから選択し、詳細オプション(フィルタ、オーダーなど)を構成します。
- フローを保存して、テストが成功したら準備は完了です

あらゆるアプリケーションからAmazon Athena のデータにSQL でアクセス
以上で、Power Automate タスクからリアルタイムAmazon Athena のデータへの接続ができるようになりました。
Connect Server を使えばAmazon Athena 以外にも270種類以上のSaaS、ビッグデータ、NoSQL データソースへのSQL アクセスが可能です。ぜひ、こちらから30日間無償トライアルをお試しください。