Choreo でRedshift とデータ連携するアプリを作成

古川えりか
古川えりか
コンテンツスペシャリスト
CData Connect AI を使ってChoreo からRedshift に接続し、リアルタイムRedshift のデータと連携するカスタムアプリを構築します。

Choreo は、ローコードおよびクラウドネイティブなSaaS 開発のための多機能かつ包括的なプラットフォームです。 開発者は、高度なコーディングスキルがなくても、Choreo のローコード環境を利用することで簡単にアプリケーションを構築することができます。 さらにCData Connect AI と連携することで、アプリケーションにRedshift のデータへのクラウドベースのアクセスを即座に追加できます。 この記事では、Connect AI からRedshift に接続し、Choreo からリアルタイムRedshift のデータにアクセスするアプリケーションを作成する方法を紹介します。

CData Connect AI は、Redshift にクラウドベースのインターフェースを提供し、ネイティブにサポートされているデータベースにデータを複製することなくChoreo でリアルタイムRedshift のデータを使用するアプリケーションを構築できるようにします。 CData Connect AI は最適化されたデータ処理により、サポートされているすべてのSQL 操作(フィルタ、JOIN など)をRedshift に直接発行し、サーバー側の処理を利用して要求されたRedshift のデータを高速で返します。

Connect AI からRedshift への接続

CData Connect AI を使うと、直感的なクリック操作ベースのインターフェースを使ってデータソースに接続できます。

  1. Connect AI にログインし、 Add Connection をクリックします。 Adding a Connection
  2. Add Connection パネルで「Redshift」を選択します。 Selecting a data source
  3. 必要な認証プロパティを入力し、Redshift に接続します。

    Amazon Redshift への接続

    それでは、早速Amazon Redshift に接続していきましょう。データに接続するには、以下の接続パラメータを指定します。

    • Server:Amazon Redshift データベースをホスティングしているサーバーのホスト名またはIP アドレス
    • Database:Amazon Redshift クラスター用に作成したデータベース
    • Port(オプション):Amazon Redshift データベースをホスティングしているサーバーのポート。デフォルトは5439です

    これらの値は、以下のステップでAWS マネージメントコンソールから取得できます。

    1. Amazon Redshift コンソールを開きます(http://console.aws.amazon.com/redshift)
    2. Clusters ページで、クラスター名をクリックしてください
    3. Configuration タブの"Cluster Database Properties" セクションからプロパティを取得します。接続プロパティの値は、ODBC URL で設定された値と同じになります

    Amazon Redshiftへの認証

    CData 製品では幅広い認証オプションに対応しています。標準認証情報からIAM クレデンシャル、ADFS、Ping Federate、Microsoft Entra ID(Azure AD)、Azure AD PKCE まで利用可能です。

    標準認証

    ログイン資格情報を使用してAmazon Redshift に接続するには、以下のプロパティを設定してみましょう。
    • AuthSchemeBasic
    • User:認証するユーザーのログイン情報
    • Password:認証するユーザーのパスワード

    その他の認証方法については、ヘルプドキュメントをご確認ください。

    Configuring a connection (Salesforce is shown)
  4. Create & Test をクリックします。
  5. Add Redshift Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。 Updating permissions

パーソナルアクセストークンの取得

OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用する個人用アクセストークン(PAT)を作成できます。 きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。

  1. Connect AI アプリの右上にあるユーザー名をクリックし、User Profile をクリックします。
  2. User Profile ページでPersonal Access Token セクションにスクロールし、 Create PAT をクリックします。
  3. PAT の名前を入力して Create をクリックします。 Creating a new PAT
  4. 個人用アクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。

接続の設定が完了したら、Choreo からRedshift のデータに接続できるようになります。

Choreo からRedshift への接続

以下のステップでは、Choreo からCData Connect AI に接続し、リアルタイムRedshift のデータにアクセスできる新しいアプリケーションを作成する方法を紹介します。

コンストラクトを作成する

  1. Choreo プラットフォームにサインインします。Note:この記事は、Anonymously を選択した場合について説明しています。 Displaying Choreo landing page
  2. 左サイドバーからComponents を選択し、+Create をクリックします。次に、Manual Trigger を選択し、続けてStart from scratch を選択します。 Selecting manual trigger
  3. マニュアルトリガーのName とDescription を入力し、Create をクリックします。 Creating manual trigger
  4. トリガーが作成されたら、Edit Code をクリックします。 Clicking Edit Code
  5. Ballerina Low-Code IDE が表示されます。Choreo は、ローコードダイアグラムビューでコンストラクトを自動生成します。 このコンストラクトをハイライトしてゴミ箱アイコンをクリックし、削除します。 Showing Ballerina Low-Code IDE
  6. 画面上部の + アイコンをクリックし、右サイドのAdd Constructs ツールバーにあるMain を選択します。 続けてFunction Configuration フォームでSave をクリックします。 Adding a Construct

CData Connect AI コネクタを追加する

  1. 楕円形のSTART とEND の間にある + アイコンをクリックして、Connector をクリックします。
  2. Adding a Connector
  3. 右サイドバーのConnectors で「CData」を検索します。CData Connect をクリックしてConnector 設定ペインを開きます。
  4. Searching for CData Connector
  5. Connector 設定ペインで、構成の設定を入力します。
    • 使用するEndpoint Name を入力します。例では「connectEndpoint」を使用しています。
    • User フィールドに、CData Connect AI ユーザーのE メールアドレスを引用符で囲んで入力します(例:"user@cdata.com")。
    • Password フィールドに、前述の生成されたPAT を引用符で囲んで入力します(例:"SampleToken")。
  6. Configuring an endpoint
  7. Save をクリックすると、CData Connect AI のロゴがついたローコードエディタが表示されます。
  8. Displaying the new CData connector

クエリのアクションを追加する

  1. newend の間の + アイコンをクリックし、Action を選択して既存のコネクタエンドポイントを選択します。
  2. Creating an Action
  3. connector Operation クエリを選択します。右側にAction ペインが表示されます。
  4. Showing Action pane
  5. Redshift のデータを取得するためのSQL クエリを、querysqlQuery パラメータとして入力します。次に例を示します。
    			SELECT * FROM Redshift1.Redshift.Orders LIMIT 10
    		
    • クエリを入力する際、カタログにConnection Name を、スキーマにData Source Name を必ず指定してください。例えば、Redshift1.Redshift です。
    • これらのパラメータはCData Connect AI ダッシュボードのConnections ページに表示されます。

Redshift のデータを反復処理する

  1. コードエディタの右上にあるShow Source アイコンをクリックします。
  2. ballerina/io ライブラリをインポートするimport 文を追加します。
    		
    		import ballerina/io;
    	
  3. 次に、SQL クエリの結果を繰り返し処理するために、query アクションの後にfrom 文を追加します。
  4. 		
    		check from record{} result in resultStream
    		do {
    			io:println("Full Orders details: ", result);
    		};
    	
  5. コンストラクトのコードは次のようになります。
  6. 			
    			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 Redshift1.Redshift.Orders LIMIT 10`);
    
    				check from record{} result in resultStream
    				do {
    					io:println("Full Orders details: ", result);
    				};
    			}
    		
  7. Save をクリックしてアクションを保存します。次のようなダイアグラムになります。
  8. Displaying the new endpoint in Ballerina

プログラムをデプロイする

必要とするアクションをすべてプログラムに追加したら、次のステップに進みます。

  1. Web エディタで最終的なソースコードをコミットしてプッシュし、その変更をChoreo プラットフォームに同期します。
  2. Choreo Console の左ナビゲーションバーでDeploy をクリックします。
  3. Build Area でConfigure & Deploy をクリックし、プログラムをデプロイします。
  4. プロンプトが表示されたら、先ほど使用したCData Connect AI のユーザー名とパスワードを入力し、Deploy をクリックします。
  5. Deploying the program

Choreo でリアルタイムRedshift のデータにアクセスできるアプリケーションを作成できました。

CData Connect AI の入手

Choreo をCData Connect AI で連携するための詳細は、CData Connect Ballerina Guide を参照してください。 CData Connect AI の14日間無償トライアルを利用して、クラウドアプリケーションから100を超えるSaaS、ビッグデータ、NoSQL データソースへのダイレクトなSQL アクセスをお試しください!

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

CData Connect AI の詳細、または無料トライアルにお申し込みください:

無料トライアル お問い合わせ