Skip to main content

データストレージオプションの比較

単元 2: データストレージオプションの比較

学習の目的

この単元を完了すると、次のことができるようになります。

  • Salesforce のデータストレージソリューションについて説明する。
  • データ戦略をビジネスニーズに合致させる。

概要

データの格納方法はたくさんありますが、まずどれだけのデータがあり、どのように使用する必要があるのかを考えます。この単元では、データがどこに存在するのか、どのくらい保有しているのか、どの程度増加しているのかの点から各オプションについて説明します。Salesforce のファーストパーティデータセンターでは、標準オブジェクト、カスタムオブジェクト、Big Object のテクノロジーを利用できます。データは、Salesforce Connect、外部オブジェクト、Heroku Connect を使用して Salesforce データセンター外に存在しています。この違いを詳しく見ていきましょう。

標準オブジェクトとカスタムオブジェクト

企業が Salesforce を従来の CRM ツールとして使用しているか、PaaS (サービスとしてのプラットフォーム) として使用しているかに関係なく、データはオブジェクトに格納されます。標準オブジェクトは Salesforce に付属し、その代表的なレコードカテゴリはキャンペーン、リード、取引先、取引先責任者、商談、ケースです。また、事業や業種に固有のデータを格納するためにカスタムオブジェクトを作成することもできます。 

次に該当する場合は、標準オブジェクトやカスタムオブジェクトを使用します。

  1. フロー、入力規則、Apex トリガーなどのツールを使用して、ビジネスロジックを自動化する必要がある。*
  2. 1 つのオブジェクトに保存するレコードが 2,000 万件以下である。実際の件数は使用事例によって異なる可能性があります。**
  3. 最新データにリアルタイムでアクセスする必要がある。

* 標準オブジェクトとカスタムオブジェクトは、複数のレコード間のトランザクションをサポートしています。

** 大量のデータに標準またはカスタムオブジェクトを使用する場合は、大量データ (LDV) に関するホワイトペーパーや Trailhead モジュールに記載されている Salesforce のベストプラクティスに従ってください。

Salesforce Connect

このツールは、外部データを Salesforce 組織に接続する場合に使用します。(共有ルールなど、一定の機能は Salesforce Connect で使用できません)。 

Salesforce Connect の場合、システムで OData 2.0 または OData 4.0 アダプターを使用していれば、外部オブジェクトを (コードではなく) クリック操作で作成できます。コードを記述するのであれば、Apex Connector Framework も使用できます。Salesforce Connect を使用すると、Salesforce UI を介して他の場所に存在するデータの検索、表示、変更が可能になります。

次に該当する場合は、Salesforce Connect を使用します。

  1. Salesforce 組織に大量のデータをコピーしたくない。
  2. 一度に少量のデータにアクセスする。
  3. 最新データをリアルタイムで取得する。

Heroku Connect

Heroku Connect は、Salesforce と、管理 SQL DaaS (サービスとしてのデータベース) である Heroku Postgres データベースを結び付けます。Heroku Connect がない場合は、データが Heroku プラットフォーム上に構築されたカスタム UI に表示されます。 

矢印がまず Salesforce から中間コンポーネントへ、次に Heroku へ向かい、取引先責任者が挿入されたらまた Salesforce に戻ることを示す図

データを Salesforce と Heroku Postgres データベースの両方に保持する場合は、データ複製戦略を使用します。Heroku Connect を使用したデータ複製は、Salesforce から Heroku Postgres への一方向にすることも、双方向にすることもできます。Heroku Postgres から Salesforce へのデータ複製は、ごくわずかな遅延で実行されるよう設定できますが、リアルタイムではありません。

データを Salesforce に保存する必要がないのであれば、Salesforce Connect の外部オブジェクトを使用して、Heroku Postgres データベースから Salesforce にデータを中継できます。前述のとおり、Salesforce の一定の機能は Salesforce Connect で使用できません。

次に該当する場合は、Heroku Connect を使用します。

  1. Salesforce に格納されているデータを変更する可能性がある B2C アプリケーションを使用する。
  2. Salesforce と Heroku Postgres データベース間でデータを同期する必要がある。
  3. 1 つのオブジェクトに保存するレコードが 2,000 万件以下である。
  4. フロー、入力規則、Apex トリガーなどのツールを使用して、ビジネスロジックを自動化する必要がある。

Salesforce 外に格納されたデータの管理について説明しました。次は、膨大なデータの管理について説明します。

Big Object

Big Object はその名が示すとおり、Salesforce Platform に大量のデータを格納して管理します。データが 2,000 万行から数十億行に至る場合は Big Object を推奨します。Big Object は非リレーショナルデータベースを使用してデータを格納します。主キーアクセスを使用するリアルタイムの SOQL クエリがサポートされています。主キーアクセスはインデックスともいい、Big Object のカスタム項目で定義されます。ここで検討すべき重要な点は、どの項目にどのような方法で (昇順または降順)、どの順序でインデックスを付けるかです。インデックス付けによって、数十億行の全データに対してクエリが実行されます。

Tableau CRM との併用

Tableau CRM と Big Object のインテグレーションでは、Big Object からの 1 つのデータセットにつき約 7,000 万行に制限されます。集計関数を実行するコードを記述する代わりに、宣言型の Tableau CRM UI を活用します。Big Object はデータフローのソースオブジェクトにすることができます。行数が Tableau CRM の処理量を超えている場合は、Salesforce を完全に機能させるために、Apex の一括処理を使用してデータを小さなサブセットに絞り込み、2 つ目の Big Object かカスタムオブジェクトに保存します。 

次に該当する場合は、Big Object を使用します。

  1. 数百万行から数十億行のデータを処理する必要がある。
  2. フルデータセットのデータと集計の多数のセットをバッチ処理する必要がある。
  3. 業務レポートまたは Tableau CRM を使用してビッグデータを分析する必要がある。

ソリューションの比較

データストレージの各オプションを検証したところで、異なる角度から比較してみましょう。

簡単に設定できるか?

ポイント & クリック操作で設定できるか、コードを記述するかということです。各自のスキルセットに応じたソリューションを選びます。メンテナンスに必要なリソースも考慮します。以下は設定方法に応じた分類です。

ポイント & クリックツールで設定できるオプションと、プログラム型ソリューションが必要なオプション。

Salesforce UI に表示されるか?

標準オブジェクト、カスタムオブジェクト、Salesforce Connect に格納されているデータは、ページレイアウト、リストビュー、レポート、Visualforce ページ、Lightning コンポーネントなど、Salesforce UI のいずれの部分にも表示できます。Heroku Connect は、(データ複製かデータプロキシかに応じて) 標準オブジェクトとカスタムオブジェクトか、Salesforce Connect を使用します。いずれにしろ、データが UI に表示されます。

Big Object は UI に自動的に表示されません。ただし、いくつかのオプションがあります。Apex、SOQL、主キーを使用すれば Lightning コンポーネントまたは Visualforce ページに表示できます。通常は、非同期 SOQL を使用してデータや集計の小さなサブセットを照会し、カスタムオブジェクトに保存します。こうすればサブセットを UI の任意の場所に表示できます。もう 1 つのオプションは、データセット全体を、優れたレポート作成ツールを備えた Tableau CRM に接続することです。

セキュリティ要件を満たしているか?

最後に、データストレージソリューションを選択する前に、セキュリティ上の特定のニーズも考慮します。

標準オブジェクトとカスタムオブジェクトでは、オブジェクト権限、項目レベルセキュリティ、ロール階層、共有ルールなど、Salesforce のすべてのデータセキュリティ機能を利用できます。Salesforce Connect はオブジェクト権限と項目レベルセキュリティに対応しています。Big Object ではオブジェクト権限と項目レベルセキュリティを使用できます。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む