Reviewed by Aditya Kumar · Last reviewed 2026-03-25
**Steps**: (1) Create Connected App in Salesforce (Client ID, Secret). (2) OAuth 2.0 or Username-Password flow. (3) Use spark-salesforce connector or REST client. (4) Load: `spark.read.format("com.springml.spark.salesforce").option("username", ...).option("password",...
Steps: (1) Create Connected App in Salesforce (Client ID, Secret). (2) OAuth 2.0 or Username-Password flow. (3) Use spark-salesforce connector or REST client. (4) Load: spark.read.format("com.springml.spark.salesforce").option("username", ...).option("password", ...).option("soql", "SELECT ...").load(). (5) Bulk API for large exports.
Why Care: Salesforce has rate limits (API calls, concurrent connections). Bulk API for >10K rows.
Scalability Trade-offs: Single-threaded API pull; Bulk API is async. Pagination for large result sets.
Cost Implications: API limits; batch during off-peak. Secret management (Vault); never hardcode.
Pro-Move: 'Bulk API + checkpoint for resume; we sync 50M rows nightly.' Red Flag: Sync without rate-limit handling—hitting 24-hour ban.
According to DataEngPrep.tech, this is one of the most frequently asked Spark/Big Data interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.