Datastream は、Salesforce インスタンス(Salesforce 組織または Salesforce 組織とも呼ばれます)からの変更イベントの複製をサポートしています。Salesforce はクラウドベースの CRM プラットフォームです。Datastream がサポートする他のソースと同様に、Salesforce からデータを複製できます。
このページには、次に関する情報が記載されています。
- Salesforce から複製する際に理解しておく必要がある主要な用語。
- Datastream が移行元 Salesforce 組織から pull されているデータを処理する方法の動作。
- Datastream がサポートする Salesforce のバージョンとエディション。
- Salesforce を移行元として使用する場合の既知の制限事項。
主な用語
Salesforce は、オブジェクト、レコード、フィールドを使用して動作します。
- オブジェクトはクラス エンティティであり、リレーショナル データベースのテーブルに似ています。オブジェクトは標準またはカスタムにできます。標準オブジェクトはデフォルトで Salesforce に含まれていますが、カスタム オブジェクトはユーザーがユースケースに固有のデータを保存するために作成します。
- レコードは、リレーショナル データベースの行と同様に、オブジェクトの特定のインスタンスです。
- フィールドは、リレーショナル データベースの列と同様に、オブジェクトの特定の属性です。
動作
Datastream での Salesforce ソースのサポートは、REST API と Bulk 2.0 API に依存しています。Salesforce は、設定した間隔に基づいてソースの変更をポーリングし、API 使用量を制御できるようにします。
Salesforce ソースからデータを複製すると、次の動作が確認されます。
SystemModstampフィールドまたはLastModifiedDateのいずれかを持つ複製可能でクエリ可能な標準オブジェクトは複製できます。オブジェクトを複製可能にするには、getUpdated()API 呼び出しとgetDeleted()API 呼び出しをサポートする必要があります。詳細については、Salesforce ドキュメントの データ複製用の API 呼び出しをご覧ください。- カスタム オブジェクトを複製できます。
- 構成されている場合、含まれるオブジェクトの履歴データはすべて複製されます。
- 指定したオブジェクトからの挿入、更新、削除など、すべての変更が複製されます。
- Datastream は、構成されたポーリング間隔に従って変更をポーリングします。これは、ストリームのデータ更新頻度指標に反映されます。指標は、構成されたポーリング間隔の値まで増加し、最新のポーリングからの経過時間を反映します。
バージョン
Datastream は、次の Salesforce エディションをサポートしています。
- Pro Suite
- デベロッパー
- プロフェッショナル
- Enterprise
- 無制限
Datastream は Salesforce API バージョン 61.0 を使用します。
利用可能な Salesforce エディションの詳細については、Salesforce のドキュメントをご覧ください。
ベスト プラクティス
このセクションでは、Datastream で使用する Salesforce ソースを構成する際の推奨されるベスト プラクティスについて説明します。
API 割り当ての使用状況を管理する
Salesforce では、24 時間のローリング ウィンドウで実行できる API リクエストの数に上限が設定されています。この割り当てを使い果たすことは、Salesforce からデータを複製する際の一般的な課題です。
Datastream でポーリング間隔を構成して、Salesforce に対して行われる API リクエストの数を減らすことができます。ポーリング間隔を短くすると、データの更新頻度は高まりますが、API 割り当ての使用量も増えます。持続可能なデータ レプリケーションを確保するため、選択したデータの鮮度と API 割り当ての制約のバランスが取れるポーリング間隔を設定することをおすすめします。必要に応じて、Salesforce でグローバル API リクエストの割り当てを増やすことができます。
既知の制限事項
Salesforce を移行元として使用する場合の既知の制限事項は次のとおりです。
- クエリ可能で複製可能なオブジェクトのみがサポートされます。
- 複合フィールドは、フラット化されたフィールドとして複製されます。
- 1 分あたり最大 600,000 件の削除がサポートされています(Salesforce の制限)。
- ストリームは 3,000 個のオブジェクトに制限されています。
計算フィールド(数式とも呼ばれます)は部分的にのみサポートされています。計算フィールドの複製には、次の制約があります。
- テーブル間の参照はサポートされていません。
- 非決定性関数(
NOW()やTODAY()など)はサポートされていません。Datastream は、これらのフィールドの値がいつ変更されるかを判断できないためです。 - サポートされているのは、特定の許可された関数のみです。計算フィールドがこのリスト以外の関数を使用している場合、そのフィールドは複製されません。
次のリストに、サポートされている関数を示します。
- 論理:
AND、OR、NOT、IF、CASE、ISNULL、ISBLANK、BLANKVALUE、ISPICKVAL - 数学:
ABS、CEILING、MCEILING、FLOOR、MFLOOR、ROUND、MOD、SQRT、EXP、LN、LOG、MAX、MIN - テキスト:
BEGINS、BR、CONTAINS、FIND、HYPERLINK、INCLUDES、LEFT、LEN、LOWER、LPAD、MID、RPAD、RIGHT、SUBSTITUTE、TEXT、TRIM、UPPER、VALUE - 日時:
DATE、DATEVALUE、DATETIMEVALUE、DAY、MONTH、YEAR、HOUR、MINUTE、SECOND、MILLISECOND、WEEKDAY、TIMEVALUE、ADDMONTHS - その他:
REGEX
ストリーム復元はサポートされていません。
次のステップ
- Datastream で使用する Salesforce ソースの構成方法を学習する。