
An independent study guide for the Databricks Certified Data Engineer Professional exam · by Tony Rough
Know which Databricks feature fits the workload, why, and what breaks.
Due on Amazon in December 2026, in Kindle and paperback editions.
This independent study guide for the Databricks Certified Data Engineer Professional exam turns the exam outline of October 2026 into the decisions, code patterns and traps that production data engineering on Databricks depends on, written from Databricks' own documentation.
Each chapter can be read on its own, and together they cover all nine sections of the exam:
There are no exam questions in this book. It explains the knowledge the exam looks for, so you can reason through scenarios you have never seen and bring the same judgement to a real pipeline.
Written by Tony Rough, a cloud architect with over twenty years in IT infrastructure, who designs data platforms for the organisations he works with.
Part of the Ultra Transcenders series from Distilled Press. An independent publication, not affiliated with, sponsored by or endorsed by Databricks, Inc. Databricks, Delta Lake and Unity Catalog are trademarks of Databricks, Inc. or their respective owners.
Every skill area in Databricks's DBX-DEP outline (as of October 9, 2026), and the chapters that cover it.
| Skill area | Weight | Chapters |
|---|---|---|
| Section 1: Developing Code for Data Processing using Python and SQL | 23% | 1, 2, 3, 4, 5, 6, 10, 11 |
| Section 2: Data Ingestion & Acquisition | 12% | 6, 7, 8 |
| Section 3: Data Manipulation | 12% | 3, 5, 9 |
| Section 4: Monitoring and Alerting | 10% | 10, 12 |
| Section 5: Cost & Performance Optimization | 15% | 13, 14 |
| Section 6: Ensuring Data Security and Compliance | 8% | 15, 16 |
| Section 7: Data Governance | 5% | 15 |
| Section 8: Debugging and Deploying | 10% | 10, 11, 14 |
| Section 9: Data Modeling | 5% | 17 |
Plus an appendix glossary of 500+ terms, each linked to the Databricks documentation, with the same terms explained free online for print readers.
Short excerpts from the book, exactly as they appear in it, so you can see how it explains things.
The opening of chapter 1 · Chapter 1: Compute for data engineering
Every workload on Databricks runs on one of three families of compute: serverless compute for notebooks, jobs and pipelines, classic compute that runs in your own cloud account, or a SQL warehouse. The default answer is now serverless, so the useful skill is knowing the exact constraints that push a workload away from it, and the few settings that still matter once it is there. This chapter covers the choice by workload, serverless environments, performance mode, high-memory notebook tasks and the auto-optimisation setting that decides whether a failed task may run twice.
A comparison table · Chapter 1: Compute for data engineering · What serverless jobs compute gives up
Autoscaling and Photon are switched on automatically, and Databricks upgrades the runtime on its own. Cluster creation permission is not needed, so any workspace user can run a serverless job. These are the patterns that have to change.
| Classic pattern | On serverless | What to do instead |
|---|---|---|
RDD APIs, spark.sparkContext, sqlContext |
Not supported; only Spark Connect APIs | DataFrame APIs and spark directly |
| R, and Scala or R notebooks | Not supported | Classic compute |
| Init scripts | Not supported | Serverless environment |
| Compute-scoped libraries | Not supported | Environment dependencies |
| Maven coordinates | Not supported | JAR task for jobs; PyPI for notebooks |
| Compute policies, instance pools | Not supported | Serverless usage policies for tagging |
| Most Spark configurations | Job runs fail if an unsupported one is set | Remove them; serverless tunes most settings |
| DBFS paths and mounts | Access limited; mounts with instance profiles unsupported | Unity Catalog volumes and external locations |
| Hive metastore tables | Legacy pattern, not supported | Unity Catalog tables, or HMS Federation |
| VPC peering | Not supported | Private endpoints, or a firewall allowing serverless traffic |
| Docker containers | Not supported | Serverless environments for library needs |
| Spark UI, Spark logs, compute event logs | Not available | Query profile and client-side application logs |
A common trap · Chapter 1: Compute for data engineering · What serverless jobs compute gives up
Common trap: Serverless jobs inherit the notebook’s 2.5-hour timeout, so a runaway query will be stopped - the default applies only to notebooks. A serverless job has no query execution timeout until
spark.databricks.execution.timeoutis set.



Some sections of the book, free to read online:
Which compute fits each kind of workload, and the constraint that forces a move away from serverless.
How serverless, pipelines, classic jobs and bundles each get their Python libraries.
What a checkpoint holds and which query changes survive a restart.
How latency, cost and refresh decide between the two pipeline dataset types.
What each expectation action does to a bad record, and how quarantine is built.
When each table layout fits, and what existing tables need.
How grants flow down from catalogs and schemas, and where they stop.
The steps that really remove a person's data, and why they can't run back to back.
A free week-by-week plan through the book at a 4-week or 8-week pace, with the study notes and exam skill areas for each week.