Salesforce Sync plugins can help users automatically sync their Salesforce objects to specified destinations with only a few clicks.
Use-case
A user would like to specify multiple objects from Salesforce, that need to be synced with corresponding objects in the destination (e.g. BigQuery tables, GCS buckets). So a user would specify a set of objects in the source, and would connect the appropriate destination (a BigQuery dataset, or a GCS bucket). The pipeline would sync data into the destination separately for all objects. The objects are not to be joined, but are to be synced separately into their corresponding destinations. In addition, a user should be able to specify whether to sync the object's data since the beginning of time, or since a given timestamp.
User Stories
As a data pipeline user, I would like to be able to create a pipeline to sync a single Salesforce object to a specified destination, so that I can use the Salesforce object for analytics in my downstream processes.
As a data pipeline user, I would like to be able to create a pipeline to sync multiple Salesforce objects to their corresponding destinations, so that I can use the Salesforce objects for analytics in my downstream processes.
Requirements
Support GCS and BigQuery as destinations
Select source object(s) and a destination. For each object, create a corresponding object in the destination, and push data to it.
Support full (get all data since the beginning of time) and incremental (get data since the specified timestamp) modes.
Automatically handle schema changes between source and destination. If a destination exists, but with a different schema from the source because the source's schema has been updated, the destination's schema should be updated.