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

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

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

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

Connect AI からSnowflake への接続

Snowflake Partner Connect を使って、Connect AI への接続を簡単に設定

Snowflake にログインした状態で「Snowflake Partner Connect」からCData Connect AI に直接サインアップして使用開始できます。

Snowflake のUI から「Data Products」 -> 「Partner Connect」の画面に移動し、「CData Software」をクリックすると、CData Connect AI にサインアップしてSnowflake への接続を自動作成してくれます。

この方法でサインアップした場合、Snowflake への接続設定の必要なくツールからご利用を開始いただけます。

コネクションを追加

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

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

    それでは、Snowflake データベースに接続していきましょう。認証に加えて、以下の接続プロパティを設定します。

    • Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
      • Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
      • ご自身のURL は以下のステップで確認できます。
        1. Snowflake UI の左下にあるユーザー名をクリックします
        2. Account ID にカーソルを合わせます
        3. Copy Account URL アイコンをクリックして、アカウントURL をコピーします
    • Database(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
    • Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します

    Snowflakeへの認証

    CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、UserPassword を設定し、AuthScheme プロパティで認証方法を選択してください。

    キーペア認証

    ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthSchemePRIVATEKEY に設定し、以下の値を設定してください。

    • User:認証に使用するユーザーアカウント
    • PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
    • PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
    • PrivateKeyPassword:指定されたプライベートキーのパスワード

    その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。

    Configuring a connection (Salesforce is shown)
  4. Create & Test をクリックします。
  5. Add Snowflake 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 からSnowflake のデータに接続できるようになります。

Choreo からSnowflake への接続

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

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

  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. Snowflake のデータを取得するためのSQL クエリを、querysqlQuery パラメータとして入力します。次に例を示します。
    			SELECT * FROM Snowflake1.Snowflake.Products LIMIT 10
    		
    • クエリを入力する際、カタログにConnection Name を、スキーマにData Source Name を必ず指定してください。例えば、Snowflake1.Snowflake です。
    • これらのパラメータはCData Connect AI ダッシュボードのConnections ページに表示されます。

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

  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 Products 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 Snowflake1.Snowflake.Products LIMIT 10`);
    
    				check from record{} result in resultStream
    				do {
    					io:println("Full Products 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 でリアルタイムSnowflake のデータにアクセスできるアプリケーションを作成できました。

CData Connect AI の入手

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

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

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

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