スノーフレーク・コネクター
  • 13 May 2024
  • 1 読む分
  • 寄稿者

スノーフレーク・コネクター


記事の要約

Snowflakeの情報をTulipのアプリに問い合わせる

オーディエンス

Snowflakeとの統合は技術的なものであり、適切なオブジェクト、ロール、権限を作成するためにITサポートが必要になる場合があります。

サポート窓口

このコネクターは、Spaulding Ridgeとのコラボレーションによって作成されました。詳細やご質問については、info@spauldingridge.com までお問い合わせください。

目的

Snowflake コネクタは、Snowflake Data Cloud から情報をクエリする方法を合理化します。Snowflake SQL REST API ドキュメントはこちらをご覧ください。

コネクタの注意事項

Snowflake コネクタは単一レコードを比較的簡単に操作できます。複数行のデータをクエリしたり、Tulip の出力(インターカティブテーブルなど)を操作したりするには、カスタムウィジェットが必要になる場合があります。

Snowflake OAuth は Snowflake の組み込み OAuth サービスを使用し、カスタムクライアントとして Tulip をサポートします。Snowflake OAuthのドキュメントはこちらにあります。カスタムクライアント設定の詳細はこちらをご覧ください。

セットアップ

このセクションでは、SnowflakeのOAuthサーバからOAuthトークンを設定し、クライアントとしてTulipとの接続を確立する手順と、TulipでSnowflakeコネクタを設定する手順を説明します。

ステップ1:SnowflakeにクライアントアプリケーションとしてTulipを登録する

Security Integrationsを作成および管理するロール/権限を持つユーザー(ACCOUNTADMIN)でSnowflakeインスタンスにログインします。

COMPUTE_WH ウェアハウスに新しい SQL ワークシートを作成します。

以下のスクリプトを実行して、OAuth タイプのセキュリティ統合を作成します。INTEGRATION_NAME、TULIP_INSTANCE_NAME、TIME_IN_SECONDS の値を更新することを忘れないでください。

Create or replace security integration <integration_name> type = oauth enabled = true oauth_client = custom oauth_client_type = 'confidential' oauth_redirect_uri = 'https://<tulip_instance_name>.tulip.co/oauth-redirect-handler' OAUTH_ISSUE_REFRESH_TOKENS = TRUE OAUTH_ISSUE_REFRESH_TOKEN_VALIDITY = <TIME_IN_SECONDS>;

注:リフレッシュ・トークンの有効期限は、90日(7776000秒)まで可能です。

ステップ2:TulipでOAuth設定の詳細を収集する

以下のコマンドを実行して、作成したばかりのセキュリティ統合を記述し、以下の詳細をメモしてください: OAUTH_CLIENT_ID OAUTH_REDIRECT_URI OAUTH_AUTHORIZATION_ENDPOINT OAUTH_TOKEN_ENDPOINT OAUTH_CLIENT_SECRET

description security integration; select system$show_oauth_client_secrets('');

ステップ3:Snowflakeコネクタを設定する

Tulipにログインし、Tulipライブラリ(Webまたは埋め込み)からSnowflakeコネクタを追加します。

Production & Testing & Development」ボタンをクリックして、接続の詳細を以下のように編集します。SNOWFLAKE_ACCOUNT_NAMEは、ステップ2のOAUTH_AUTHORIZATION_ENDPOINTまたはOAUTH_TOKEN_ENDPOINTで確認できます。

Test」と「Save」をクリックします。コネクタがオンラインになります。

ステップ4:Snowflakeコネクタの認証詳細を編集する

Production & Testing & Development "ボタンをクリックし、"Edit Headers "ボタンをクリックします。

認証タイプを、要件に応じて「OAuth 2 (Admin)」または「OAuth 2 (Operator)」のいずれかを選択します。これに関する詳細は、コネクタの設定方法の認証セクションを参照してください。

認証コード URL = OAUTH_AUTHORIZATION_ENDPOINT アクセストークン URL = OAUTH_TOKEN_ENDPOINT クライアント ID = OAUTH_CLIENT_ID クライアントシークレット = OAUTH_CLIENT_SECRET

Test」をクリックします。Snowflake アカウントのログインウィンドウが表示されます。

ユーザーがログインする必要があります。デフォルトのロールが ACCOUNTADMIN、SECURITYADMIN、または ORGADMIN であってはならないことに注意してください。このSnowflakeリソースで詳しく説明されているように、OAuthのためにユーザのデフォルトのロールを変更することができます:詳しくは、Snowflakeのリソース:OAuthのユーザー同意の管理 を参照してください。

認証に成功すると、同意を求めるメッセージが表示されます。このメッセージをよく読んで、実行される操作を理解し、"Allow "をクリックしてください。 これで、TulipからSnowflakeに安全に接続できるようになりました!

利用方法

コネクタを使い始めるには2つの方法があります:

コネクタテンプレートの機能をカスタマイズして、特定の要件に適合させることから始めます。

TulipのSnowflakeテーブルからすべてのテーブルレコードを取得する、新しいレコードを作成する、既存のレコードを更新する、レコードを削除する、などのタスクでコネクタを使用する方法を実践的にデモンストレーションするためのSnowflakeユニットテストの手順に従ってください。

テンプレート関数

Library コネクタには以下のテンプレート関数があります:クエリ・データベースの説明:実行のために 1 つ以上の SQL 文を送信できます:POST エンドポイント:/api/v2/statements リファレンス: https://docs.snowflake.com/en/developer-guide/sql-api/reference#post-api-v2-statements Template:クエリ・ステータスの確認説明:ステートメントの実行ステータスをチェックできるようにします。 メソッド:GETGET エンドポイント:/api/v2/statements/{statementHandle} Reference: https://docs.snowflake.com/en/developer-guide/sql-api/reference#get-api-v2-statements-statementhandle Template:テンプレート: Cancel Query Description:説明: ステートメントの実行をキャンセルできます。 メソッド: POSTPOST エンドポイント:/api/v2/statements/{statementHandle}/cancel リファレンス: https://docs.snowflake.com/en/developer-guide/sql-api/reference#post-api-v2-statements-statementhandle-cancel

その他のリファレンス

この Snowflake Community ガイドには、Snowflake 統合に関する追加情報も記載されています。


この記事は役に立ちましたか?