Choreo でAzure Data Lake Storage とデータ連携するアプリを作成
Choreo は、ローコードおよびクラウドネイティブなSaaS 開発のための多機能かつ包括的なプラットフォームです。 開発者は、高度なコーディングスキルがなくても、Choreo のローコード環境を利用することで簡単にアプリケーションを構築することができます。 さらにCData Connect AI と連携することで、アプリケーションにAzure Data Lake Storage のデータへのクラウドベースのアクセスを即座に追加できます。 この記事では、Connect AI からAzure Data Lake Storage に接続し、Choreo からリアルタイムAzure Data Lake Storage のデータにアクセスするアプリケーションを作成する方法を紹介します。
CData Connect AI は、Azure Data Lake Storage にクラウドベースのインターフェースを提供し、ネイティブにサポートされているデータベースにデータを複製することなくChoreo でリアルタイムAzure Data Lake Storage のデータを使用するアプリケーションを構築できるようにします。 CData Connect AI は最適化されたデータ処理により、サポートされているすべてのSQL 操作(フィルタ、JOIN など)をAzure Data Lake Storage に直接発行し、サーバー側の処理を利用して要求されたAzure Data Lake Storage のデータを高速で返します。
Connect AI からAzure Data Lake Storage への接続
CData Connect AI を使うと、直感的なクリック操作ベースのインターフェースを使ってデータソースに接続できます。
- Connect AI にログインし、 Add Connection をクリックします。
- Add Connection パネルで「Azure Data Lake Storage」を選択します。
-
必要な認証プロパティを入力し、Azure Data Lake Storage に接続します。
Azure Data Lake Storage 接続プロパティの取得・設定方法
Azure Data Lake Storage Gen2 への接続
それでは、Gen2 Data Lake Storage アカウントに接続していきましょう。接続するには、以下のプロパティを設定します。
- Account:ストレージアカウントの名前
- FileSystem:このアカウントに使用されるファイルシステム名。例えば、Azure Blob コンテナの名前
- Directory(オプション):レプリケートされたファイルが保存される場所へのパス。パスが指定されない場合、ファイルはルートディレクトリに保存されます
Azure Data Lake Storage Gen2への認証
続いて、認証方法を設定しましょう。CData 製品では、5つの認証方法をサポートしています:アクセスキー(AccessKey)の使用、共有アクセス署名(SAS)の使用、Azure Active Directory OAuth(AzureAD)経由、Azure サービスプリンシパル(AzureServicePrincipal またはAzureServicePrincipalCert)経由、およびManaged Service Identity(AzureMSI)経由です。
アクセスキー
アクセスキーを使用して接続するには、まずADLS Gen2ストレージアカウントで利用可能なアクセスキーを取得する必要があります。
Azure ポータルでの手順は以下のとおりです:
- ADLS Gen2ストレージアカウントにアクセスします
- 設定でアクセスキーを選択します
- 利用可能なアクセスキーの1つの値をAccessKey 接続プロパティにコピーします
接続の準備ができたら、以下のプロパティを設定してください。
- AuthScheme:AccessKey
- AccessKey:先ほどAzure ポータルで取得したアクセスキーの値
共有アクセス署名(SAS)
共有アクセス署名を使用して接続するには、まずAzure Storage Explorer ツールを使用して署名を生成する必要があります。
接続の準備ができたら、以下のプロパティを設定してください。
- AuthScheme:SAS
- SharedAccessSignature:先ほど生成した共有アクセス署名の値
その他の認証方法については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「Azure Data Lake Storage Gen2への認証」セクションをご確認ください。
- Create & Test をクリックします。
- Add Azure Data Lake Storage Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。
パーソナルアクセストークンの取得
OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用する個人用アクセストークン(PAT)を作成できます。 きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect AI アプリの右上にあるユーザー名をクリックし、User Profile をクリックします。
- User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- 個人用アクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。
接続の設定が完了したら、Choreo からAzure Data Lake Storage のデータに接続できるようになります。
Choreo からAzure Data Lake Storage への接続
以下のステップでは、Choreo からCData Connect AI に接続し、リアルタイムAzure Data Lake Storage のデータにアクセスできる新しいアプリケーションを作成する方法を紹介します。
コンストラクトを作成する
-
Choreo プラットフォームにサインインします。Note:この記事は、Anonymously を選択した場合について説明しています。
-
左サイドバーからComponents を選択し、+Create をクリックします。次に、Manual Trigger を選択し、続けてStart from scratch を選択します。
-
マニュアルトリガーのName とDescription を入力し、Create をクリックします。
-
トリガーが作成されたら、Edit Code をクリックします。
-
Ballerina Low-Code IDE が表示されます。Choreo は、ローコードダイアグラムビューでコンストラクトを自動生成します。
このコンストラクトをハイライトしてゴミ箱アイコンをクリックし、削除します。
-
画面上部の + アイコンをクリックし、右サイドのAdd Constructs ツールバーにあるMain を選択します。
続けてFunction Configuration フォームでSave をクリックします。
CData Connect AI コネクタを追加する
- 楕円形のSTART とEND の間にある + アイコンをクリックして、Connector をクリックします。
- 右サイドバーのConnectors で「CData」を検索します。CData Connect をクリックしてConnector 設定ペインを開きます。
-
Connector 設定ペインで、構成の設定を入力します。
- 使用するEndpoint Name を入力します。例では「connectEndpoint」を使用しています。
- User フィールドに、CData Connect AI ユーザーのE メールアドレスを引用符で囲んで入力します(例:"user@cdata.com")。
- Password フィールドに、前述の生成されたPAT を引用符で囲んで入力します(例:"SampleToken")。
- Save をクリックすると、CData Connect AI のロゴがついたローコードエディタが表示されます。
クエリのアクションを追加する
- new とend の間の + アイコンをクリックし、Action を選択して既存のコネクタエンドポイントを選択します。
- connector Operation クエリを選択します。右側にAction ペインが表示されます。
- Azure Data Lake Storage のデータを取得するためのSQL クエリを、query のsqlQuery パラメータとして入力します。次に例を示します。
SELECT * FROM ADLS1.ADLS.Resources LIMIT 10
- クエリを入力する際、カタログにConnection Name を、スキーマにData Source Name を必ず指定してください。例えば、ADLS1.ADLS です。
- これらのパラメータはCData Connect AI ダッシュボードのConnections ページに表示されます。
Azure Data Lake Storage のデータを反復処理する
- コードエディタの右上にあるShow Source アイコンをクリックします。
- ballerina/io ライブラリをインポートするimport 文を追加します。
import ballerina/io;
- 次に、SQL クエリの結果を繰り返し処理するために、query アクションの後にfrom 文を追加します。
- コンストラクトのコードは次のようになります。
- Save をクリックしてアクションを保存します。次のようなダイアグラムになります。
check from record{} result in resultStream
do {
io:println("Full Resources details: ", result);
};
import ballerinax/cdata.connect;
import ballerinax/cdata.connect.driver as _;
import ballerina/io;
public function main() returns error? {
connect:Client connectEp = check new (user = "connect_cloud_username", password="connect_cloud_pat");
stream<record {}, error=""?> resultStream =
connectEp->query(sqlQuery = `SELECT * FROM ADLS1.ADLS.Resources LIMIT 10`);
check from record{} result in resultStream
do {
io:println("Full Resources details: ", result);
};
}
プログラムをデプロイする
必要とするアクションをすべてプログラムに追加したら、次のステップに進みます。
- Web エディタで最終的なソースコードをコミットしてプッシュし、その変更をChoreo プラットフォームに同期します。
- Choreo Console の左ナビゲーションバーでDeploy をクリックします。
- Build Area でConfigure & Deploy をクリックし、プログラムをデプロイします。
- プロンプトが表示されたら、先ほど使用したCData Connect AI のユーザー名とパスワードを入力し、Deploy をクリックします。
Choreo でリアルタイムAzure Data Lake Storage のデータにアクセスできるアプリケーションを作成できました。
CData Connect AI の入手
Choreo をCData Connect AI で連携するための詳細は、CData Connect Ballerina Guide を参照してください。 CData Connect AI の14日間無償トライアルを利用して、クラウドアプリケーションから100を超えるSaaS、ビッグデータ、NoSQL データソースへのダイレクトなSQL アクセスをお試しください!