CData Connect AI を使用して Google Cloud Data Fusion でリアルタイムの Snowflake のデータ パイプラインを構築
Google Cloud Data Fusion は、ビジュアルインターフェースを使用してさまざまなソースと同期先間でデータを接続、変換、移動できるため、データパイプラインの構築と管理を簡素化します。CData Connect AI と組み合わせることで、ELT/ETL データパイプラインの構築と管理にSnowflake のデータへのアクセスが可能になります。この記事では、CData Connect AI を使用して Snowflake へのライブ接続を作成する方法と、Cloud Data Fusion プラットフォームからリアルタイムのSnowflake のデータに接続・アクセスする方法を説明します。
Snowflake データ連携について
CData は、Snowflake のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- Snowflake データを迅速かつ効率的に読み書きできます。
- 指定された Warehouse、Database、Schema のメタデータを動的に取得できます。
- OAuth、OKTA、Azure AD、Azure マネージド サービス ID、PingFederate、秘密鍵など、さまざまな方法で認証できます。
多くの CData ユーザーは、CData ソリューションを使用して、お気に入りのツールやアプリケーションから Snowflake にアクセスし、さまざまなシステムからデータを Snowflake にレプリケートして、包括的なウェアハウジングと分析を行っています。
CData ソリューションとの Snowflake 統合についての詳細は、ブログをご覧ください:https://jp.cdata.com/blog/snowflake-integrations
はじめに
Cloud Data Fusion 用の Snowflake 接続を設定
Cloud Data Fusion から Snowflake への接続は、CData Connect AI によって実現されます。Cloud Data Fusion からSnowflake のデータを扱うには、まず Snowflake 接続を作成・設定します。
- Connect AI にログインし、Sources をクリック、次に Add Connection をクリック
- Add Connection パネルから「Snowflake」を選択
-
Snowflake に接続するために必要な認証プロパティを入力します。
それでは、Snowflake データベースに接続していきましょう。認証に加えて、以下の接続プロパティを設定します。
- Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
- Legacy URL を使用する場合:https://myaccount.region.snowflakecomputing.com
- ご自身のURL は以下のステップで確認できます。
- Snowflake UI の左下にあるユーザー名をクリックします
- Account ID にカーソルを合わせます
- Copy Account URL アイコンをクリックして、アカウントURL をコピーします
- Database(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベースのものに制限したい場合に設定します
- Schema(オプション):CData 製品によって公開されるテーブルとビューを、特定のSnowflake データベーススキーマのものに制限したい場合に設定します
Snowflakeへの認証
CData 製品では、Snowflake ユーザー認証、フェデレーション認証、およびSSL クライアント認証をサポートしています。認証するには、User とPassword を設定し、AuthScheme プロパティで認証方法を選択してください。
キーペア認証
ユーザーアカウントに定義されたプライベートキーを使用してセキュアなトークンを作成し、キーペア認証で接続することも可能です。この方法で接続するには、AuthScheme をPRIVATEKEY に設定し、以下の値を設定してください。
- User:認証に使用するユーザーアカウント
- PrivateKey:プライベートキーを含む.pem ファイルへのパスなど、ユーザーに使用されるプライベートキー
- PrivateKeyType:プライベートキーを含むキーストアの種類(PEMKEY_FILE、PFXFILE など)
- PrivateKeyPassword:指定されたプライベートキーのパスワード
その他の認証方法については、ヘルプドキュメントの「Snowflakeへの認証」セクションをご確認ください。
- Url:お使いのSnowflake URL を指定します。例:https://orgname-myaccount.snowflakecomputing.com
- Save & Test をクリック
-
Add Snowflake Connection ページで Permissions タブに移動し、ユーザーベースの権限を更新します。
Personal Access Token を追加
REST API、OData API、または仮想 SQL Server 経由で Connect AI に接続する場合、Personal Access Token(PAT)が Connect AI への接続認証に使用されます。アクセスの粒度を維持するため、サービスごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして Settings ページを開きます。
- Settings ページで Access Tokens セクションに移動し、 Create PAT をクリック。
-
PAT に名前を付けて Create をクリック。
- Personal Access Token は作成時にのみ表示されるので、必ずコピーして安全な場所に保存してください。
接続の設定と PAT の生成が完了したら、Cloud Data Fusion からSnowflake のデータに接続する準備が整いました。
Cloud Data Fusion から Snowflake に接続
以下の手順に従って、CData Connect AI JDBC ドライバーを介して Cloud Data Fusion から Snowflake への接続を確立します:
- CData Connect AI JDBC ドライバーをダウンロード・インストール:
- CData Connect AI の Integrations ページを開きます。
- JDBC を検索・選択します。
- セットアップファイルをダウンロードして実行します。
- インストールが完了したら、インストールディレクトリ(例:C:\Program Files\CData\JDBC Driver for CData Connect\lib)から JAR ファイル(cdata.jdbc.connect.jar)をコピーします。
- Cloud Data Fusion にログイン。
- 右上の緑色の「+」ボタンをクリックしてエンティティを追加。
- Driver の下で Upload をクリック。
- CData Connect AI JDBC ドライバー(JAR ファイル)をアップロード。
- ドライバー設定を入力:
- Name:ドライバー名を入力
- Class name:「cdata.jdbc.connect.ConnectDriver」 と入力
- Version:ドライバーのバージョンを入力
- Description(オプション):ドライバーの説明を入力
- Finish をクリック。
- ソース設定を入力:
- Label:接続を識別するための名前
- JDBC driver name:ステップ 6 で設定したドライバーを識別する JDBC ドライバー名を入力
- Connection string:JDBC 接続文字列を入力(例:
jdbc:connect:AuthScheme=Basic;user=username;password=PAT;
- User:CData Connect AI のユーザー名(CData Connect AI インターフェースの右上に表示)を入力(例:「[email protected]」)
- Password:Settings ページで生成した PAT を入力
- 右上の Validate をクリック。
- 接続が成功したら、UI を通じてパイプラインを編集・管理できます。
- 作成したパイプラインを実行。
トラブルシューティング
Cloud Data Fusion では、ソースデータの 「int」 型が自動的に 「long」 にキャストされる既知の問題があることにご注意ください。
クラウドアプリケーションから Snowflake のデータ へのリアルタイムアクセス
これで、Google Cloud Data Fusion からリアルタイムのSnowflake のデータへの直接接続が確立されました。Snowflake のデータ をレプリケーションすることなく、さまざまなソースと同期先間でデータをスムーズに移動できる接続を追加作成し、データ統合プロセスを効率化できます。
クラウドアプリケーションから Snowflake を含む 300 以上の SaaS、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスについては、CData Connect AI をご覧ください。