「Snowflake」の『Direct Share』でデータを参照したい

本記事について

本記事では、「Snowflake」の『Direct Share』を利用してデータを参照する方法について紹介します

前提としてb→dashでは、一部のサーバーに「Snowflake」というクラウドサービスを利用しています。
「Snowflake」の『Direct Share』とは、異なるアカウント間でデータを共有できる仕組みのことで、データの複製や移動を行わずに、データを参照することが可能です。
データ連携や取込を行わず貴社の「Snowflake」で管理しているデータをリアルタイムに参照したい場合や、b→dash上に1次データのデータ量を増やしたくない場合、セキュリティの観点から社外環境へデータを移動せずに運用したい場合などにご活用ください。

「Snowflake」の『Direct Share』を利用する際の注意点
❶「テキスト型」におけるデータ容量

「テキスト型」のデータの容量上限は『16MB』です。
この上限を超えるデータを『Direct Share』すると、b→dashの各処理でエラーが発生する可能性があります。
ご利用の際は、事前にデータ容量をご確認ください。

❷「Snowflake」の「VIEW」を連携する際の推奨方法

「Snowflake」の「VIEW」を連携する方法は以下の2パターンがありますが、b→dashでは”2”を推奨しています

1.「VIEW」の作成時に「CREATE SECURE VIEW」で作成する
2.「SHARE」の作成時に「SECURE_OBJECTS_ONLY=FALSE」を指定する

※「Snowflake」の「VIEW」については、
 ビューの概要」(※ Snowflake Documentation/公式サイト)をご参照ください

❸「Snowflake」の既存の「VIEW」の定義を変更する際の注意事項

既存の「VIEW」の定義を変更(ロジック変更など)するために「CREATE OR REPLACE VIEW」を実行すると、
b→dashに共有した権限がリセットされます
共有した権限を維持するためには、変更後に再度共有の設定を行ってください。

※「CREATE OR REPLACE VIEW」については、
 CREATE OR ALTER VIEW」(※ Snowflake Documentation/公式サイト)をご参照ください

❹ 共有する「データベース」「スキーマ」「オブジェクト」「カラム」の名称の制限

大文字、小文字の違いは区別されません。b→dashではすべて大文字として扱います。
 例えば、「column1」と「COLUMN1」は同一として扱われます。

サポート対象は「引用符で囲まれていない識別子」のみです。
 二重引用符(”)で囲んだ識別子はサポート対象外ですので、ご注意ください。
 例えば、「column1」はサポート対象ですが、「”column1″」はサポート対象外です。
 ※ 詳細は、「識別子の要件」(※ Snowflake Documentation/公式サイト)をご参照ください

・使用可能な文字:半角英数字 / アンダースコア(_)/ ドル記号($
 使用不可な文字:ASCII / 拡張ASCIIで引用符が必要な文字 / 非ASCII文字(日本語、特殊文字、スペースなど)

※b→dashは「引用符で囲まれていないオブジェクト名」を前提に処理を行っています。
 そのため、上記に沿わない名称は共有できません。

[事前準備]「Snowflake」上で「データの共有」を作成する

ユーザー名」「パスワード」を入力し、サインインします

ユーザー名」をクリックします

ロールを切り替え」をクリックします

AccountAdmin」のロールをクリックします

データ製品」をクリックします

プライベート共有」をクリックします

共有」をクリックします

直接共有を作成」をクリックします

データを選択」をクリックします

共有したいデータ製品」をクリックします

共有したいデータ」をクリックします

共有したいテーブル」を選択します

完了」をクリックします

任意の共有識別子」を入力します

共有先のアカウント情報である「ロケーター」を入力します

「ロケーター」には『b→dashのロケーター名』を入力してください

「ロケーター」には、b→dash上の連携システム作成画面に表示されている『b→dashのロケーター名』を入力してください。

共有を作成」をクリックします

b→dashへ接続情報を登録する

データパレット」をクリックします

データを連携」をクリックします

新規追加」をクリックします

Snowflake」を選択し、「適用」をクリックします

共有識別子」と「アカウント識別子」を入力し、次へ」をクリックします

「共有識別子」と「アカウント識別子」に入力する値について
共有識別子

「Snowflake」上で「データの共有」を作成した際に入力した「任意の共有識別子」を入力してください。

[参考画像]

アカウント識別子

「Snowflake」上の「アカウントの詳細画面」に表示されている「データ共有アカウント識別子」を入力してください。
確認手順は、以下をご参照ください。

確認手順
ユーザー名」をクリックします

アカウント」をクリックします

アカウントの詳細を表示する」をクリックします

データ共有アカウント識別子」を確認できます

任意の名前を入力し、「保存」をクリックします

新規作成した連携システムが画面に表示されます

データを参照する

『Direct Share』で参照したデータを元に、新たなデータを生成することはできますが、
貴社の「Snowflake」上のデータを編集、操作することはできませんので、ご注意ください。
データ確認」をクリックします

参照したデータファイル」を確認できます