- 印刷する
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 統合に関する追加情報も記載されています。