Using Salesforce (Incremental Load) as a source
This section describes how to set up and use the Salesforce source endpoint in a replication task. The Salesforce (Incremental Load) source endpoint is similar to the Salesforce (Streaming CDC) source endpoint, although there are significant differences in their implementation.
The differences are as follows:
-
Full Load: Salesforce (Streaming CDC) uses Bulk API v1 for Full Load while Salesforce (Incremental Load) uses Bulk API v2. The differences between the two are summed up in the following article: https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/bulk_common_diff_two_versions.htm
-
CDC: Salesforce (Streaming CDC) uses the Salesforce Streaming API which is subject to several limitations, although it does provide better performance. Salesforce (Incremental Load), however, is based on change polling which, although slower than Salesforce (Streaming CDC), has the advantage of supporting almost all tables.
Basically, if you need to capture changes from tables that are not supported with Salesforce (Streaming CDC) and/or if you need the functionality provided with Bulk API v2, then choose Salesforce (Incremental Load). Otherwise, choose Salesforce (Streaming CDC) for its better performance during change capture.