顧客関係管理(CRM)の世界では、Salesforceが業界をリードしています。1999年にMarc Benioff氏によって設立されたSalesforceは、世界で最も古いクラウドベースのソフトウェア企業の1つです。この20年間で15万人以上の顧客にサービスを提供するまでに成長したSalesforceは、現在世界ナンバーワンのCRMプラットフォームとして多くの人々に認識されています。
CRMにおいてSalesforceが果たす役割は大きく、企業にとってこのプラットフォームの仕組みを理解することは重要なことです。このプラットフォームの仕組みを真に理解するためには、Salesforceのデータベースに関する知識が必要です。このページでは、Salesforce の概要とそのデータベースの威力、そして Salesforce のデータベースが貴社にどのような利益をもたらすかをご紹介します。
ここでは、5つの重要なポイントを紹介します:
- データベースは構造化されたデータのための領域であり、テーブルを通じて整理、管理、操作することができる。
- データベースは、複数のユーザーのために大量のデータを保存することができ、利用可能なRAMよりも多くのデータをロードすることができます。
- SalesforceのデータベースはOracleを採用しており、自己安全性と自己修復機能を活用して最終製品を向上させている。
- Salesforce では、テーブルを "オブジェクト"、行を "レコード"、列を "フィールド" と呼んでいる。オブジェクトは、フィールドとレコードを使用して構造化することができ、オブジェクトのリレーションシップにより、オブジェクトを関連付けて情報を共有し、動的で有用な高度なデータの網を作成することができます。
- Salesforce には、ルックアップリレーションシップとマスター-ディテールリレーションシップという 2 つの主要なオブジェクトリレーションシップがあり、オブジェクト間の関連性のレベルに応じて使い分けることができます。リレーションシップには、自己リレーションシップ、外部参照リレーションシップ、間接参照リレーションシップ、多対多リレーションシップ、階層リレーションシップなどがあります。
本記事では、Salesforce プラットフォームの重要な構成要素である Salesforce データベースについて理解を深めていただくために、Salesforce データベースの概要をご紹介します。Salesforceの概要、データベースのパワー、そしてSalesforceデータベースの活用方法について、ぜひご覧ください。
データベースとは?
データベースとは、構造化されたデータのための領域です。そして、データベースは、データを整理し、管理し、最終的には操作できるようにしなければなりません。そのために、データベースではテーブルを活用します。Microsoft Excelのデータの整理方法と、データベースの整理方法は似ています。表があり、行があり、すべてが1つの表形式システムの中に入っていて、整理され、構造化されているのです。
しかし、Excelはデータベースではなく表計算ソフトです。データベースは、表によってデータを構造化し整理するのに役立つだけでなく、複数のユーザーが大量のデータを保存するために活用されます。そのため、1GBのExcelファイルを起動しようとすると、おそらくずっとコンピュータの前に座り続けることになります。データベースは、Excelのようなセルベースのストレージシステムを使用しないので、データの読み込みが速いのです。
そのため、データベースは下記3つであるべきです。
- テーブルを使った構造化、整理整頓
- RAMの空き容量以上のデータをロード可能
- 複数のユーザー/管理者をサポート可能
これだけです。しかし、すべてのデータベースが同じように作られているわけではありません。あるデータベースでは、フラットで、静的で、非常に基本的なタスクに超集中していますし、もう少し複雑なものもあります。
Salesforceデータベースとは?
SalesforceはOracleを利用してデータベースを構築しています。SalesforceとOracleは競合関係にあるため、不思議に思われるかもしれません。しかし、AppleとSamsungのように、両社は半共存的な関係にあるのです。Oracle CXはSalesforceの競合かもしれませんが、SalesforceはOracleのデータベースの特性の一部、つまり自己安全性と自己修復機能を利用して、最終製品を改善しているのです。SalesforceはPostgreSQLや他の言語も活用していますが、プラットフォームの大部分はOracle Databasesで稼働しています。
Salesforceのネイティブコネクタの詳細については、Salesforceとの統合ページをご覧ください。
Salesforce のデータベースを深く理解するためには、Oracle についてより詳しく知ることが必要かもしれません。以下に役立つリソースをご紹介します。
Salesforceのテーブルについて
Salesforceでは、テーブルを 「オブジェクト」、行を 「レコード」、列を 「フィールド」と呼んでいます。つまり、Salesforceにはフィールドを持つオブジェクトがあり、多くのレコードがあるのです。ここでは、この3つのコア機能を定義しておきましょう。
Salesforceにおけるオブジェクト
Salesforceには、主に3種類のオブジェクトがあります。
- 標準オブジェクト:Salesforce を最初に起動したときに、既に設定されているオブジェクトです。アカウントオブジェクト、リードオブジェクト、コンタクトオブジェクトなどがこれにあたります。
- カスタムオブジェクト:独自のニーズに基づいて作成されるオブジェクトです。例えば、イベント企画を行う場合は、イベントオブジェクトを作成します。
- 外部オブジェクト:Salesforce の外部にあるデータをマッピングするカスタムオブジェクトです。
これらのオブジェクトは、基本的にデータコンテナです。フィールドやレコードを使用して構造化することができます。Salesforceのカスタムオブジェクトは、Excelスプレッドシートよりも多くの機能を提供します。リレーショナルな機能だけでなく、Salesforceのカスタムオブジェクトはカスタムレイアウトを生成し、各カスタムオブジェクトにレポートや分析機能を迅速に設定することができます。
Salesforce のフィールド
フィールドとは、Salesforceにおける列のことです。Salesforceの標準オブジェクトには、あらかじめ標準フィールドが用意されています。また、カスタムオブジェクトには、3つの標準フィールドが自動的に付属しています。
以下の3つです。
- ID:各レコードの15文字の一意なデータ識別子が含まれます。IDフィールドは、Salesforceのキーフィールドです。ここのデータは各データセットに固有であり、Salesforceのリレーショナル構造(これについては後ほど説明します)の中核をなすものです。
- ネーム:これは単純にレコードの名前です。数字でも名前でもかまいません。
- システム:これらは読み取り専用で、通常、そのレコードが最後にタッチされた時刻がわかります。したがって、LastModifiedByIDのようなものになります。
これらのフィールドは、タイプに関係なく、すべてのSalesforceオブジェクトに存在します。
これらのフィールドの他に、カスタムフィールドがあります。各カスタムフィールドには、それに関連するデータ型があります。カスタムフィールドには、チェックボックス、数式、日付、その他さまざまなものが含まれます。こちらはその一覧です。
Salesforceのレコード
オブジェクトとそのフィールドを定義すると、そのオブジェクトにレコードを作成することができます。つまり、Leadsオブジェクトに新しいアカウントを追加したい場合、Salesforceで新しいレコードを作成し、定義済みのフィールドに入力すると、レコードが作成されます。
データベースの行のように、レコードは一意の識別子(別名:Identifier Field)にデータを割り当てます。例えば、営業がリードと判断したお客様がいるとします。Salesforceのリードオブジェクトの下に新しいレコードを作成することができます。このレコードには、営業担当者がレコードに入力するすべての情報を、その特定のアカウントに関連付ける一意のIDが付与されます。
関連記事:Salesforce to Salesforceを使用してデータ共有戦略を実現する方法
リレーショナル・データベースを理解する
従来のデータベースでは、情報はデータベース自体の文脈の中で単純に関連付けられる。つまり、行と列が関連しているのです。しかし、複数のテーブルが互いにデータを共有する必要がある場合はどうでしょうか。そのためには、リレーショナル・データベースが必要です。
従来のデータベースと同様に、リレーショナル・データベースにも行と列があります。しかし、各行にはその行を定義する一意の識別子(またはキー)があります。また、各テーブルにも一意キーがあります。つまり、その一意キーを使用し、他のテーブルにリンクすることができるのです。これにより、相互に関連するテーブルの巨大な網ができ、顧客データの追跡、測定、活用など、非常に複雑なことができるようになります。このような顧客データを正確に追跡し、処理するためには、高速で安全、かつ重要なデータポイントをシームレスに関連付けることができるほど複雑なデータベースが必要です。Salesforce のデータベースは、まさにそれを実現するものです。
Salesforceのリレーショナルな性質を理解する
一般的なデータベースでは、テーブルが同じ種類のデータを共有することができます。しかし、テーブル同士が会話し、互いのデータを利用する方法はありません。しかし、Salesforceのようなリレーショナルデータベースでは、そのようなことはありません。
オブジェクトリレーションにより、オブジェクトを関連付け、情報を共有し、最終的にはダイナミックで有益なデータをもつ高度なウェブサイトを作成することができます。例えば、Salesforceの標準オブジェクトであるアカウントオブジェクトとコンタクトオブジェクトがあるとします。この2つのオブジェクトが情報を共有しないということは、本当に意味があるのでしょうか?恐らく、それぞれのアカウントに複数の連絡先があることでしょう。
Salesforceでは、カスタムオブジェクトとオブジェクトリレーションを設定することができます。そして、標準オブジェクトはすでにリレーションを共有しています。そのため、Salesforceでは、アカウントタブの上部に連絡先が最初から表示されます。
関連資料: Salesforce Connect の概要
Salesforceにおける2種類の関係
- 参照関係:これは、オブジェクトの中から関連するオブジェクトを「探す」ことができるリレーションシップです。これは、Salesforce 内で最も基本的なリレーショナルリンクです。
- 主従関係:参照関係と同じですが、1つ大きな違いがあります。主従関係は、オブジェクト同士の厳しい関係を共有します。つまり、一方のオブジェクトがマスターオブジェクトで、もう一方がディテールオブジェクトです。マスターオブジェクトは、ディテールオブジェクトを制御します。例えば、マスターオブジェクトにアカウント、ディテールオブジェクトに連絡先があるとします。もし、アカウントを削除したら、連絡先もすべて削除されます。このように、オブジェクトの関係は非常に複雑で、入り組んだ網の目のようになることがあります。
関連記事:SalesforceからSalesforceへの活用法
通常、オブジェクトが常に関連している場合は、主従関係を使用します。そして、オブジェクトが時々関連している場合には、参照関係を使用します。
この2つの関係に該当するものは、他にもいくつかあります。これらは
- 自己関係
- 外部参照関係
- 間接参照関係
- 多対多関係
- 階層関係
Salesforceの関係タイプの詳細については、こちらをご覧ください。
Integrate.ioでできること
結論、Salesforceは技術分野においてリーダーのような存在です。データを最大限に活用したい企業にとって、Salesforceとの連携は欠かせません。Salesforce単体のみでも素晴らしいのですが、Integrate.ioのプラットフォームと組み合わせることで、より優れたものになります。Integrate.ioを使えば、Salesforceと他のほとんどのサーバやクラウドデータウェアハウスとの間で、使いやすく機能的なデータパイプラインを設定することができます。
Integrate.ioがSalesforceでの体験をより良いものにするために、どのように役立つのかお聞きになりませんか。14日間トライアル、またはデモをご希望の方はこちらまで。