SalesforceのData CloudからSnowflakeのデータを読むには
Data CloudはSalesforceの提供するサービスで、Salesforce内のデータと、その外にあるデータを良い感じに結びつけることで、個人に関するあらゆる情報を良い感じにマージしてくれる、そんな仕組みだ
これまではコネクタがしょぼかったので、Mulesoftを使っている人じゃないとほぼ活用が難しかった
先日GAになった機能によって、ついにData CloudからSnowflakeのデータにタッチできるようになったので、その方法について紹介したい
何が嬉しいの
Salesforceには大量のデータを入れて処理するというのが難しい。100万レコードとかになると使い物にならないみたいなことがまま起きる。Webのアクセスデータなどのストリームデータを扱うようなプラットフォームではないのだ。
Data Cloudは発表当初からこれらの莫大なデータを処理するための基盤として喧伝されており、つまりそういうものをSalesforceから扱えるようにするためのソリューションだ。
設定してみましょう
設定するにはData Cloud及びSnowflake両方の設定が必要だ
まずはSnowflake側から設定していきましょう
Snowflakeに鍵認証の設定をする
Data CloudからSnowflakeへは、鍵認証されたユーザーのデータを使って接続する。
そのため、Snowflakeに鍵認証の設定をしていく必要がある
やり方はこちら
ローカル端末でキーペアを作ります
ターミナルで以下の2つを実行します。鍵は ~/.ssh の中にでも入れましょう
$ ~/.ssh
としてから
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt
と
openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub
を実行すると、rsa_key.p8とrsa_key.pubの2つのファイルが作られます。
.pubが公開鍵で、.p8が非公開鍵です。
Snowflakeでユーザーに公開鍵を割り当てる
ワークシートを立ち上げてから以下のコマンドを実行します。jsmithはあなたのユーザーIDを入れてください。RSA_PUBLIC_KEYの中身はrsa_key.pubの中身を使います。
-----BEGIN PUBLIC KEY-----
ここが公開鍵
-----END PUBLIC KEY-----
ALTER USER jsmith SET RSA_PUBLIC_KEY='公開鍵の中身をいれる';
これでエラーがでなければOK
Data Cloudの設定をする
まずはSales Cloudの設定を開く
設定>Data Cloud>定義の中にSnowflakeの文字が現れるはずです
それを開いてみてください。そこから設定を進めていきます。新規作成していきましょう
新規作成してこのように情報を登録していきます
接続名とAPI参照名は任意です
アカウントURLはこちらから取得
ユーザー名は先程キーを割り当てたユーザーです
ALTER USER jsmithのjsmithのところですね
非公開鍵にはrsa_key.p8の中身を入れてください
-----BEGIN PRIVATE KEY-----
ここ
-----END PRIVATE KEY-----
これで接続設定完了です。
Data Cloudのストリーム画面を開いてみましょう
来ましたSnowflake!
開いてみます
よし!アクセスできたぞ!
ということで、ひとまず接続が完了しました報告となります。今後どんどん活用していくぞ
関連記事
Discussion