SfSkills Domains Docs GitHub

Home / integration / salesforce-data-pipeline-etl

salesforce-data-pipeline-etl

Export large Salesforce datasets to a lakehouse via Bulk API 2.0, CDC streams, or Salesforce Data Pipelines. NOT for ad-hoc exports — use data/etl-vs-api-data-patterns.

Open the skill folder on GitHub


Salesforce Data Pipeline / ETL

Production Salesforce → lake pipelines combine a one-time Bulk API 2.0 snapshot with an ongoing CDC or Platform Event stream. Naive incremental loads on LastModifiedDate lose updates during the query window; CDC guarantees ordered delta capture.

Adoption Signals

Analytics workloads that need <1h freshness on Salesforce data in a warehouse.

  1. Initial snapshot: Bulk API 2.0 query job per object; store in staging.
  2. Subscribe to CDC for each object via Pub/Sub API (or Change Data Capture Stream).
  3. Apply deltas onto snapshot using event ChangeEventHeader.commitTimestamp + changeType (CREATE/UPDATE/DELETE/GAP_FILL).
  4. Handle GAP_FILL events with a re-query of affected Ids (CDC may gap on heavy load).
  5. Monitor replay lag; auto-refresh from Bulk snapshot if lag > threshold.

Key Considerations

Worked Examples (see references/examples.md)

Common Gotchas (see references/gotchas.md)

Top LLM Anti-Patterns (full list in references/llm-anti-patterns.md)

Official Sources Used

Package files