Databricks Databricks Certified Data Engineer Professional Practice Exams
Last updated on Oct 22,2026- Exam Code: Databricks Certified Data Engineer Professional
- Exam Name: Databricks Certified Data Engineer Professional Exam
- Certification Provider: Databricks
- Latest update: Oct 22,2026
An upstream system is emitting change data capture (CDC) logs that are being written to a cloud object storage directory. Each record in the log indicates the change type (insert, update, or delete) and the values for each field after the change. The source table has a primary key identified by the field pk_id.
For auditing purposes, the data governance team wishes to maintain a full record of all values that have ever been valid in the source system. For analytical purposes, only the most recent value for each record needs to be recorded. The Databricks job to ingest these records occurs once per hour, but each individual record may have changed multiple times over the course of an hour.
Which solution meets these requirements?
- A . Create a separate history table for each pk_id resolve the current state of the table by running a union all filtering the history tables for the most recent state.
- B . Use merge into to insert, update, or delete the most recent entry for each pk_id into a bronze table, then propagate all changes throughout the system.
- C . Iterate through an ordered set of changes to the table, applying each in turn; rely on Delta Lake’s versioning ability to create an audit log.
- D . Use Delta Lake’s change data feed to automatically process CDC data from an external system, propagating all changes to all dependent tables in the Lakehouse.
- E . Ingest all log information into a bronze table; use merge into to insert, update, or delete the most recent entry for each pk_id into a silver table to recreate the current table state.
The data engineer team is configuring environment for development testing, and production before beginning migration on a new data pipeline. The team requires extensive testing on both the code and data resulting from code execution, and the team want to develop and test against similar production data as possible.
A junior data engineer suggests that production data can be mounted to the development testing environments, allowing pre production code to execute against production data. Because all users have Admin privileges in the development environment, the junior data engineer has offered to configure permissions and mount this data for the team.
Which statement captures best practices for this situation?
- A . Because access to production data will always be verified using passthrough credentials it is safe to mount data to any Databricks development environment.
- B . All developer, testing and production code and data should exist in a single unified workspace; creating separate environments for testing and development further reduces risks.
- C . In environments where interactive code will be executed, production data should only be accessible with read permissions; creating isolated databases for each environment further reduces risks.
- D . Because delta Lake versions all data and supports time travel, it is not possible for user error or malicious actors to permanently delete production data, as such it is generally safe to mount production data anywhere.
Which of the following technologies can be used to identify key areas of text when parsing Spark Driver log4j output?
- A . Regex
- B . Julia
- C . pyspsark.ml.feature
- D . Scala Datasets
- E . C++
A table is registered with the following code:
Both users and orders are Delta Lake tables.
Which statement describes the results of querying recent_orders?
- A . All logic will execute at query time and return the result of joining the valid versions of the source tables at the time the query finishes.
- B . All logic will execute when the table is defined and store the result of joining tables to the DBFS; this stored data will be returned when the table is queried.
- C . Results will be computed and cached when the table is defined; these cached results will incrementally update as new records are inserted into source tables.
- D . All logic will execute at query time and return the result of joining the valid versions of the source tables at the time the query began.
- E . The versions of each source table will be stored in the table transaction log; query results will be saved to DBFS with each query.
A new data engineer notices that a critical field was omitted from an application that writes its Kafka source to Delta Lake. This happened even though the critical field was in the Kafka source. That field was further missing from data written to dependent, long-term storage. The retention threshold on the Kafka service is seven days. The pipeline has been in production for three months.
Which describes how Delta Lake can help to avoid data loss of this nature in the future?
- A . The Delta log and Structured Streaming checkpoints record the full history of the Kafka producer.
- B . Delta Lake schema evolution can retroactively calculate the correct value for newly added fields, as long as the data was in the original source.
- C . Delta Lake automatically checks that all fields present in the source data are included in the ingestion layer.
- D . Data can never be permanently dropped or deleted from Delta Lake, so data loss is not possible under any circumstance.
- E . Ingestine all raw data and metadata from Kafka to a bronze Delta table creates a permanent, replayable history of the data state.
A junior developer complains that the code in their notebook isn’t producing the correct results in the development environment. A shared screenshot reveals that while they’re using a notebook versioned with Databricks Repos, they’re using a personal branch that contains old logic. The desired branch named dev-2.3.9 is not available from the branch selection dropdown.
Which approach will allow this developer to review the current logic for this notebook?
- A . Use Repos to make a pull request use the Databricks REST API to update the current branch to dev-2.3.9
- B . Use Repos to pull changes from the remote Git repository and select the dev-2.3.9 branch.
- C . Use Repos to checkout the dev-2.3.9 branch and auto-resolve conflicts with the current branch
- D . Merge all changes back to the main branch in the remote Git repository and clone the repo again
- E . Use Repos to merge the current branch and the dev-2.3.9 branch, then make a pull request to sync with the remote repository
The DevOps team has configured a production workload as a collection of notebooks scheduled to run daily using the Jobs Ul. A new data engineering hire is onboarding to the team and has requested access to one of these notebooks to review the production logic.
What are the maximum notebook permissions that can be granted to the user without allowing accidental changes to production code or data?
- A . Can manage
- B . Can edit
- C . Can run
- D . Can Read
A data engineer wants to reflector the following DLT code, which includes multiple definition with very similar code:

In an attempt to programmatically create these tables using a parameterized table definition, the data engineer writes the following code.

The pipeline runs an update with this refactored code, but generates a different DAG showing
incorrect configuration values for tables.
How can the data engineer fix this?
- A . Convert the list of configuration values to a dictionary of table settings, using table names as keys.
- B . Convert the list of configuration values to a dictionary of table settings, using different input the for loop.
- C . Load the configuration values for these tables from a separate file, located at a path provided by a pipeline parameter.
- D . Wrap the loop inside another table definition, using generalized names and properties to replace with those from the inner table
A junior data engineer has been asked to develop a streaming data pipeline with a grouped aggregation using DataFrame df. The pipeline needs to calculate the average humidity and average temperature for each non-overlapping five-minute interval. Incremental state information should be maintained for 10 minutes for late-arriving data.
Streaming DataFrame df has the following schema:
"device_id INT, event_time TIMESTAMP, temp FLOAT, humidity FLOAT"
Code block:
Choose the response that correctly fills in the blank within the code block to complete this task.
- A . withWatermark("event_time", "10 minutes")
- B . awaitArrival("event_time", "10 minutes")
- C . await("event_time + ‘10 minutes’")
- D . slidingWindow("event_time", "10 minutes")
- E . delayWrite("event_time", "10 minutes")
When scheduling Structured Streaming jobs for production, which configuration automatically recovers from query failures and keeps costs low?
- A . Cluster: New Job Cluster;
Retries: Unlimited;
Maximum Concurrent Runs: Unlimited - B . Cluster: New Job Cluster;
Retries: None;
Maximum Concurrent Runs: 1 - C . Cluster: Existing All-Purpose Cluster; Retries: Unlimited;
Maximum Concurrent Runs: 1 - D . Cluster: Existing All-Purpose Cluster; Retries: Unlimited;
Maximum Concurrent Runs: 1 - E . Cluster: Existing All-Purpose Cluster; Retries: None;
Maximum Concurrent Runs: 1