nerdexam
Databricks

CERTIFIED-DATA-ENGINEER-PROFESSIONAL · Question #28

A junior data engineer seeks to leverage Delta Lake's Change Data Feed functionality to create a Type 1 table representing all of the values that have ever been valid for all rows in a bronze table…

The correct answer is B. Each time the job is executed, the entire available history of inserted or updated records will be. The code reads from the Change Data Feed without tracking which CDF versions have already been processed (no checkpoint or startingVersion tied to the last processed version). Each time the daily job runs, it reads the CDF from the beginning of the available history (e.g…

Ingesting and Transforming Data

Question

A junior data engineer seeks to leverage Delta Lake's Change Data Feed functionality to create a Type 1 table representing all of the values that have ever been valid for all rows in a bronze table created with the property delta.enableChangeDataFeed = true. They plan to execute the following code as a daily job:

Which statement describes the execution and results of running the above query multiple times?

Exhibit

CERTIFIED-DATA-ENGINEER-PROFESSIONAL question #28 exhibit

Options

  • AEach time the job is executed, newly updated records will be merged into the target table,
  • BEach time the job is executed, the entire available history of inserted or updated records will be
  • CEach time the job is executed, the target table will be overwritten using the entire history of
  • DEach time the job is executed, the differences between the original and current versions are
  • EEach time the job is executed, only those records that have been inserted or updated since the

How the community answered

(34 responses)
  • B
    94% (32)
  • C
    3% (1)
  • E
    3% (1)

Explanation

The code reads from the Change Data Feed without tracking which CDF versions have already been processed (no checkpoint or startingVersion tied to the last processed version). Each time the daily job runs, it reads the CDF from the beginning of the available history (e.g., starting at version 0 or the earliest available version) and merges all historical inserts and updates into the target. This means on every run, the full available history is re-read and re-merged-not just the incremental changes since the last run. A correct implementation would record the last processed CDF version and use it as startingVersion on subsequent runs.

Topics

#Delta Lake#Change Data Feed (CDF)#Data Versioning#Data Ingestion

Community Discussion

No community discussion yet for this question.

Full CERTIFIED-DATA-ENGINEER-PROFESSIONAL Practice