App Builder を使ってローコードでAmazon Athena と連携したBlazor アプリを作成
App Builder はインフラジスティックス社が提供している「ドラッグアンドドロップで迅速なアプリケーション開発作成を可能にする」ローコードツールです。この記事では、CData Connect AI を経由して App Builder からAmazon Athena に連携するBlazor アプリを作成する方法を説明します。
CData Connect AI は、Amazon Athena のデータのクラウド to クラウドの仮想OData インターフェースを提供し、App Builder からリアルタイムにAmazon Athena のデータへ連携することができます。
Amazon Athena データ連携について
CData は、Amazon Athena のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:
- IAM 認証情報、アクセスキー、インスタンスプロファイルなど、さまざまな方法で安全に認証できます。多様なセキュリティニーズに対応し、認証プロセスを簡素化します。
- 詳細なエラーメッセージにより、セットアップを効率化し、問題を迅速に解決できます。
- サーバーサイドでのクエリ実行により、パフォーマンスを向上させ、クライアントリソースへの負荷を最小限に抑えます。
ユーザーは、Tableau、Power BI、Excel などの分析ツールと Athena を統合し、お気に入りのツールから詳細な分析を行うことができます。
CData を使用した Amazon Athena のユニークなユースケースについては、ブログ記事をご覧ください:https://jp.cdata.com/blog/amazon-athena-use-cases
はじめに
CData Connect AI の設定
App Builder でAmazon Athena のデータをリアルタイムで操作するには、Connect AI からAmazon Athena に接続し、コネクションにユーザーアクセスを提供してAmazon Athena のデータのOData エンドポイントを作成する必要があります。
(オプション)新しいConnect AI ユーザーの追加
必要であれば、Connect AI 経由でAmazon Athena に接続するユーザーを作成します。
- ユーザーページに移動し、 Invite Users をクリックします。
- 新しいユーザーのE メールアドレスを入力して、 Send to invite the user をクリックします。
- ユーザーページからユーザーを確認および編集できます。
パーソナルアクセストークンの追加
OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用するパーソナルアクセストークン(PAT)を作成できます。きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect AI アプリの右上にあるユーザー名をクリックし、User Profile をクリックします。
- User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。
Connect AI からAmazon Athena に接続
CData Connect AI では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect AI にログインし、 Add Connection をクリックします。
- Add Connection パネルから「Amazon Athena」を選択します。
-
必要な認証プロパティを入力し、Amazon Athena に接続します。
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 ユーザーの認証情報を取得するには、以下のステップお試しください。
- IAM コンソールにサインインします。
- ナビゲーションペインでユーザーを選択します。
- ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してからセキュリティ認証情報タブに移動します。
AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。
- ルートアカウントの認証情報を使用してAWS 管理コンソールにサインインします。
- アカウント名または番号を選択します。
- 表示されたメニューでMy Security Credentials を選択します。
- ルートアカウントのアクセスキーを管理または作成するには、Continue to Security Credentials をクリックし、[Access Keys]セクションを展開します。
その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。
- Create & Test をクリックします。
- Edit Amazon Athena Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect AI にAmazon Athena OData エンドポイントを追加する
Amazon Athena に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add to create new OData endpoints をクリックします。
- Amazon Athena 接続(例:AmazonAthena1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、Confirm をクリックします。
コネクションとOData エンドポイントを設定したら、App Builder からAmazon Athena のデータに接続できます。
App Builderでプロジェクトを作成する
Web API の準備ができたら、App Builder で作業を進めていきます。
- App Builder を立ち上げて「+新しいアプリ」をクリックします。
- テンプレートから任意のものを選択します。
- これでアプリを作成するための下準備が整いました。
データソースの追加
前述の通りApp Builder ではREST API に接続したアプリを手軽に作成することができます。API 接続部分はあらかじめデータソースとして定義しておくことで、簡単にUI とバインドすることができるようになるので、まずはこのデータソースの準備を進めます。
- 画面左の「データ」タブに移動し新しく「REST API」を追加します。
- 「REST API データソースの設定」で任意の名称を入力し、ソースとして「OpenAPI」または「URL の追加」を選択します。今回はOpenAPI の手順で解説します。OpenAPI を使わない場合は「URL の追加」で手動で設定します。
- ここでは先程CData Connect AI からダウンロードしておいたOpenAPI の定義を使用するので「定義のアップロード」をクリックします。
- アップロードが完了したら「エンドポイントの設定」をクリックします。
- 「エンドポイントの設定」ではOpenAPI で定義されているエンドポイントの一覧の中から利用するものを選択し、App Builder で利用するデータソースとして定義します。今回はデータの一覧が取得できるGET エンドポイントを指定し、事前に作成したユーザーID・トークンを使って必要な認証情報を入力します。
- 「送信」をクリックして「200OK」を受け取ったら接続はOKです。
- 併せてエンドポイントのベースURL から「/$oas」を除外しておきましょう。
- 最後にデータの選択です。ここではUI 上にマッピングするためのデータフィールドを持つ配列要素を指定します。CData Connect AI はすべて「value」配下で要素を提供するための以下のように「value」のところにチェックを入れておくだけでOKです。
Grid を配置
データソースの設定が完了したら、一覧画面を作成していきましょう。今回はGridのコンポーネントを利用して、一覧画面を作成します。
- 「コンポーネント」タブに移動して、「Grid」を選択し画面上に配置します。
- デフォルトではダミーデータが表示されているので、「GRIDプロパティの設定」→「Data」から先程作成したCData Connect AI の接続設定を選択します。
- これを行うだけで、そのまま画面上にCData Connect AI 経由で取得した結果が一覧画面として構成されます。
- App Builder で作成したアプリは最終的にAngular やBlazor として出力することができます。これを任意のサーバー・クラウド環境にホスティングするだけで、簡単にアプリが作成できます。
このように、CData Connect AI を経由することで、各種Web API 側の複雑な仕様を意識せずにApp Builder でアプリ開発ができます。他にも多くのデータソースに対応するCData Connect AI の詳細をこちらからご覧ください。