Databricks-Spark-Assoc Structured Streaming Practice Question
A developer wants to start a Structured Streaming query that reads from a Delta table and writes to another Delta table, and needs the query to process all existing data in the source table on its first run. Which option should be set on the read stream?
⚠ Common exam trap
The trap here is assuming an option like `includeExistingData` exists, when the Delta source already reads existing data by default on the first run.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
No option is needed; the Delta source reads the initial snapshot by default on the first run when no checkpoint exists.
The Delta Lake streaming source is designed to read the full table snapshot as the first micro-batch when a query starts without a checkpoint, and then to continue with subsequent changes. No option is required to include existing data; the behavior is the default. Options like `startingVersion` and `ignoreChanges` alter other aspects of the read, not the initial snapshot inclusion.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
`.option("ignoreChanges", "false")`
Why it's wrong here
`ignoreChanges` controls whether updates and deletes in the source Delta table are ignored during streaming. It does not affect whether the initial snapshot is read. In fact, the default behavior for a streaming read of a Delta table is to read the initial snapshot and then process new changes, so this option is not needed to achieve the desired behavior.
- ✓
No option is needed; the Delta source reads the initial snapshot by default on the first run when no checkpoint exists.
Why this is correct
When a Structured Streaming query reads from a Delta table and starts without a checkpoint, the Delta source processes the entire current snapshot of the table as the first micro-batch, then follows with new changes. This is the default behavior, so the developer does not need to set any special option to read existing data on the first run.
- ✗
`.option("includeExistingData", "true")`
Why it's wrong here
There is no `includeExistingData` option for the Delta streaming source. The Delta source automatically reads the full initial snapshot when a query starts without a checkpoint, then continues with new changes. Inventing an option that does not exist is a common distractor; the correct behavior is the default, so no option is required.
- ✗
`.option("startingVersion", "0")`
Why it's wrong here
`startingVersion` is a Delta-specific option that specifies the table version from which to start reading the change data feed or the table's history. Setting it to 0 starts from the earliest version, but it is not the option that controls whether the initial snapshot of the table is read. For a standard streaming read of a Delta table, the initial snapshot is always read by default.
About these practice questions
Courseiva writes every Databricks-Spark-Assoc question from scratch — 295 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Databricks exam blueprint
This Databricks-Spark-Assoc practice question is part of Courseiva's free Databricks certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the Databricks-Spark-Assoc exam.