Salesforce データをアーカイブして統合する
学習の目的
この単元を完了すると、次のことができるようになります。
- 組織の統合をサポートする際にどのツールが役立つか認識する。
- アーカイブ戦略が必要な状況を特定する。
データを保持してアーカイブし、アクセスする
Sales Cloud、Service Cloud、Marketing Cloud Engagement のいずれを使用している場合でも、接続アプリケーションを構築している場合でも、常に大量のデータが生成され、組織に取り込まれているものと思われます。このため、いくつかの課題が生じます。データは財宝であり、その価値を考えれば削除するなどもっての外です。次のような状況に遭遇したことがある場合には、アーカイブ戦略を実装するメリットがあるものと思われます。
- 組織のデータ量により、パフォーマンスの低下、レポートの遅延、レコードのロックが生じている。
- データ保持ポリシーを満たしていない。
- 世界的な成長に伴うレポートや新機能のリリースに対する需要に対応していない。
- 積極的に使用されていないレコードが保存されたままになっているため、データストレージの問題が生じている。
Salesforce プラットフォームのデータの管理には数通りの方法があります。データをアーカイブする優れた方法は、Heroku Connect を使用することです。では、独自のソリューションアーキテクチャ内でデータをアーカイブすべき段階になったとき、Heroku Connect をどのように使用するかを理解するために、具体的な使用事例を見てみましょう。
使用事例: データを保持、追跡、管理する
大手の小売企業であるお客様は、古いデータをアーカイブして組織の領域を解放したいと考えていますが、このデータを最大 7 年間保持し、必要に応じてアーカイブ解除できるようにすることも求めています。ビジネス上のこうした課題に対処するために、Get Cloudy Consulting の Robert Bullard は Heroku Connect、Postgres、Salesforce Connect の使用を推奨します。
このアーキテクチャには、すべて Heroku 内で処理される 3 つの部分があります。1 つ目は Web サービスです。Web サービスは、Salesforce がレコードのアーカイブやアーカイブ解除をコールするエンドポイントを構成します。また、Heroku Connect テーブルで実行可能な操作を公開します。このデータがキューに追加されるため、非同期のプロセスになります。
2 つ目のコンポーネントは Postgres データベースです。バックグラウンドで実行されているワーカーが、アーカイブテーブルとライブの Heroku Connect テーブル間のレコードのすべての管理を処理する一連のストアドプロシージャーをコールします。
3 つ目のコンポーネントは、Heroku のアドオンである Heroku Connect によって管理されます。このコンポーネントは、外部オブジェクトと同期エンジンの 2 つで構成されます。この外部オブジェクトはアーカイブテーブルにデータを公開するためのもので、Salesforce Connect が OData エンドポイント経由でそのデータにアクセスでき、取得したデータを元の Salesforce に外部オブジェクトとして公開します。もう 1 つは Heroku Connect 同期エンジンで、Postgres 内のライブの Heroku Connect テーブルと Salesforce 組織間の双方向同期を実行します。
ソリューションの利点
Robert はこの実装により、お客様の Salesforce 組織のパフォーマンスが大幅に向上することを期待しています。また、データを手動でアーカイブする必要がなくなるほか、お客様が Heroku Connect のポイント & クリックインテグレーションを使用してすぐさま変更を実行できます。
もしかしたら、複数の外部データソース間でデータを共有することが、このお客様の次の取り組みになるかもしれません。
複数の Salesforce 組織を統合する
ユーザーの大半は複数の組織を使用しています。組織間のデータの共有を試みたことがある場合、マージしようとして何らかの問題が発生したことがあるかもしれません。こうした問題を軽減する 1 つの方法は、Salesforce Connect とハブアンドスポークモデルを使用することです。このモデルでは、すべてのデータがハブ組織からすべてのスポーク (セカンダリ組織) に分散します。
他方、Heroku Connect は複数の組織データを 1 つの Postgres データベースに同期させる場合に役立ちます。データが Postgres に格納されたら、集約されたデータセットを統合組織にプッシュすることができます。
使用事例: サイロ化された部門の組織データを統合する
大手の小売チェーンは、所有する 2 つの営業組織と 1 つのサービス組織の顧客データを一元化する方法を求めて Cloudy Consulting に相談にきました。また、事業部門 (LOB) ごとに個別のカスタマーエクスペリエンスを創出したいと考えています。Robert はこのお客様のニーズを検証したうえで、Heroku Connect、Salesforce Connect、アドオンの Heroku Postgres を使用することにしました。
このアーキテクチャには、2 つの営業組織と 1 つのサービス組織の計 3 つの組織があります。Robert が Heroku Connect を選択した理由は、お客様がデータを柔軟に一元化でき、また独自のカスタムアプリケーションを作成できるためです。あらゆる処理も、外部コードを記述する必要がある場合も、直接 Heroku で実行できます。最後に、Salesforce Connect は OData API を使用して、Heroku のすべての CRM データをメイン組織に取り込みます。
補足事項
Salesforce Connect は、ソースが 1 つのインテグレーションから最大 100 のデータテーブルを取得できます。たとえば、お客様が各種のオブジェクトに複数のデータソースを使用していることがあります。
設定できる最大接続数に制限はありませんが、統合するソースごとに Salesforce Connect ライセンスが必要です。ソースシステムが複数あり、コストの増大が懸念される場合は、Salesforce Connect を使用して Heroku 経由でリソースを活用することをお勧めします。Heroku Connect はエンドポイントとして機能しながら、他の複数のシステムとやり取りします。Salesforce Connect は Heroku を参照し、必要な情報を取り込みます。実装時に必要な作業が多くなりますが、長期的には拡張性が高まり、プラットフォームごとに異なる接続を作成する必要がなくなります。