Salesforce × Snowflake連携の需要が高まっている背景
Salesforceは世界で最も利用されているCRM/SFAであり、多くの企業が商談・リード・取引先などの営業データをSalesforce上で管理しています。
一方で、「Salesforceのデータだけでは見えない分析ニーズ」が年々増加しています。
- 商談データ × 会計データを掛け合わせたLTV分析
- リードデータ × 広告データによるROI測定
- 顧客行動データの長期トレンド分析(Salesforce上では保持期間に制限あり)
こうした分析を実現するために、Salesforceのデータをクラウドデータウェアハウス(DWH)に蓄積し、BIツールで可視化するアーキテクチャが主流になっています。
中でもSnowflakeは、スケーラビリティとコストパフォーマンスに優れたクラウドDWHとして急速にシェアを拡大しており、Salesforceデータの蓄積先として最も選ばれるプラットフォームの一つです。
従来の連携方法とその課題
SalesforceからSnowflakeへデータを連携する方法は、従来いくつか存在していました。しかし、いずれも導入・運用のハードルが高いという共通の課題を抱えています。
方法1: 自社開発(Pythonスクリプト等)
Salesforce APIとSnowflake APIを使ったスクリプトを開発する方法です。柔軟性は高いものの、開発工数・保守コスト・エラーハンドリングの複雑さが大きな負担になります。APIのレート制限対応やトークン管理も必要です。
方法2: 大規模ETLツール
Informatica、Talendなどのエンタープライズ向けETLツールを導入する方法です。機能は充実していますが、初期導入費用が数百万円〜、導入期間も数ヶ月かかることが一般的です。中堅企業にはオーバースペックなケースが多くあります。
方法3: CSV手作業
SalesforceからCSVをエクスポートし、Snowflakeにインポートする手作業です。最も手軽ですが、毎回の手間・人的ミス・リアルタイム性の欠如が課題です。日次・週次の定期連携には現実的ではありません。
Passworkなら3ステップで実現できる
Passworkを使えば、プログラミング不要・最短30分でSalesforceからSnowflakeへの自動データ蓄積パイプラインを構築できます。
- コネクタを設定する — SalesforceとSnowflakeの接続情報を登録
- フローを作成する — 入力(Salesforce)→ 出力(Snowflake)をドラッグ&ドロップで接続
- スケジュールを設定する — 毎日・毎時などの自動実行を設定
以下、各ステップを詳しく解説していきます。
Step1. コネクタを設定する
まずはSalesforceとSnowflakeのコネクタを作成します。
Salesforceコネクタの設定
PassworkのコネクタページでSalesforceを選択し、OAuth認証でログインするだけで設定完了です。APIキーの発行やConnected Appの設定は不要です(Passwork側であらかじめ設定済み)。
Snowflakeコネクタの設定
Snowflakeのアカウント識別子・ユーザー名・パスワード・ウェアハウス・データベース・スキーマを入力します。
Step2. フローを作成する
コネクタの設定が完了したら、フローを作成します。
5-1. フローエディタでノードを配置
フロー編集画面で、左のメニューから入力ノード(Salesforce)と出力ノード(Snowflake)をドラッグ&ドロップで配置し、線で接続します。
5-2. Salesforce入力ノードを設定
入力ノードをクリックすると、サイドバーが開きます。ここで以下を設定します:
- コネクタ:先ほど作成したSalesforceコネクタを選択
- オブジェクト:ドロップダウンから取得したいオブジェクト(例:商談)を選択
- 条件:必要に応じて「最終更新日が昨日以降」などの条件を追加
Passworkは接続したSalesforceからオブジェクトの一覧・項目の一覧を自動で取得するため、API参照名を覚える必要はありません。表示名で直感的に選べます。
5-3. Snowflake出力ノードを設定
出力ノードのサイドバーで、書き込み先のテーブルとオペレーション(Insert / Upsert等)を選択します。テーブルが存在しない場合は自動作成することも可能です。
5-4. 項目マッピング
Salesforceの項目とSnowflakeのカラムの対応付け(マッピング)を設定します。Passworkは入力元の項目一覧を自動で取得するため、ドロップダウンから選んでいくだけで設定が完了します。
Step3. スケジュールを設定して自動化する
フローが完成したら、スケジュールを設定して自動実行を有効にします。
Passworkでは以下の実行頻度に対応しています:
- 毎時:1時間ごとに最新データをSnowflakeに反映
- 毎日:毎日決まった時刻に差分データを蓄積(最も一般的)
- 毎週・毎月:週次・月次レポート用のデータ更新に
一度設定すれば、あとは完全自動です。手動でのCSVエクスポートやスクリプト実行は一切不要になります。実行結果は実行結果一覧画面でいつでも確認でき、エラー発生時にはログで原因を特定できます。
実践Tips:押さえておきたいポイント
Tip 1: 差分取得で効率的に蓄積する
毎回全件取得するのではなく、「最終更新日(LastModifiedDate)が前回実行日時以降」の条件を入れることで、差分のみを効率的に蓄積できます。Passworkのシステム変数 {{lastSucceededStartedAt()}} を使えば、前回実行日時を自動で取得できます。
Tip 2: 数式項目も忘れずに取得する
Salesforceの数式項目(Formula Field)で計算されたKPIや売上予測値も、通常の項目と同じように取得・蓄積できます。DWH側で再計算する必要はありません。
Tip 3: 表示名(ラベル)で出力する
Passworkは項目の表示名(ラベル)も取得できるため、Snowflakeのカラム名を「Account_Name」ではなく「取引先名」のように業務で理解しやすい名前にすることも可能です。BIツールでの分析がよりスムーズになります。
Tip 4: 複数オブジェクトを1つのフローで処理する
商談・取引先・取引先責任者など、複数のオブジェクトを1つのフロー内で同時に処理することも可能です。分岐ノードを使えば、1回のスケジュール実行で複数テーブルへのデータ蓄積を完了できます。
さらに広がる活用パターン
SalesforceからSnowflakeへの蓄積を起点にして、さらに多様なデータ活用が可能になります。
パターン1: Snowflake + Tableauで営業ダッシュボード
蓄積したデータをTableau Cloudに接続し、パイプライン分析・受注予測・活動量分析のダッシュボードを構築。Passwork × Tableau Action連携を組み合わせれば、ダッシュボードからの直接アクション実行も可能です。
パターン2: 他SaaSデータとの統合分析
Passworkの36種以上のコネクタを活用し、freeeの会計データ・HubSpotのマーケティングデータ・GA4のWeb行動データもSnowflakeに集約。Salesforceデータとの掛け合わせ分析で、これまで見えなかったインサイトを発見できます。
パターン3: Snowflakeからの逆方向連携
Snowflakeで加工・集計したデータを、Passworkを使ってSalesforceに書き戻すことも可能です。例えば、スコアリング結果をSalesforceのカスタム項目に自動反映し、営業担当者がSalesforce上で確認できるようにする運用が実現できます。
まとめ
SalesforceのデータをSnowflakeに自動蓄積する仕組みは、Passworkを使えばノーコード・最短30分で構築できます。
- Salesforceのオブジェクト・項目はドロップダウンで自動選択
- 数式項目のデータも抽出可能
- API参照名だけでなく表示名(ラベル)も取得できる
- 毎時・毎日・毎週・毎月のスケジュール自動実行に対応
- 36種以上のコネクタと組み合わせて、統合データ分析基盤を構築
従来、数百万円の初期費用と数ヶ月の導入期間が必要だったSalesforce → DWHのデータパイプラインが、Passworkなら月額数万円から、すぐに始められます。