Databricks Data Engineer: platform and ingestion
Databricks Intelligence Platform (6%) and Data Ingestion and Loading (21%) are 27% of the Data Engineer Associate exam between them — around 12 of the 45 scored questions. The platform section is tiny; ingestion is one of the two largest on the exam.
The platform section (6%)
About three questions. Cover it in an evening:
- The lakehouse idea: one storage layer serving both analytics and data engineering, rather than a warehouse and a lake kept in sync.
- Delta Lake as the default table format — ACID transactions, schema enforcement, and time travel over files in cloud storage.
- Workspace organisation: notebooks, repos, clusters, catalogs.
- Compute basics: which compute type fits which workload, when it starts and stops, and why leaving it running costs money (details below).
That is genuinely enough for a 6% section. Do not spend a week here.
Compute types and access modes
The second platform objective asks you to know the compute services, their limits and cost models, and to pick one per workload. Current Databricks documentation and the workspace UI say compute where older material says clusters: the sidebar tab is Compute and the button is Create compute. The main options:
| Family | What it is | Typical fit |
|---|---|---|
| Serverless (notebooks, jobs, pipelines) | Managed by Databricks, provisioned on demand and scaled for you | Most new work where you do not need to tune instances |
| Classic all-purpose compute | Created and configured by you, deployed in your cloud account; used interactively | Exploring and developing in notebooks |
| Classic job compute | Classic compute that a Lakeflow Jobs run uses | Scheduled production tasks |
| SQL warehouses (serverless or classic) | Compute tuned for SQL, analytics and BI | Queries, dashboards and SQL tasks |
Instance pools keep pre-configured instances ready, which shortens start-up time for classic compute that is created often.
Access modes have new names. Classic all-purpose and job compute have an access mode that decides who can attach:
- Standard, formerly called shared: many users run code on the same compute, isolated from each other by Lakeguard. Databricks recommends it for most workloads.
- Dedicated, formerly called single user: assigned to one user or one group. The simple compute form picks Dedicated automatically for machine learning runtimes and for runtimes below 14.3.
- No isolation shared and credential passthrough are legacy modes that do not support Unity Catalog.
Expect a scenario that names a workload and asks for the compute. Interactive development by a team points to all-purpose compute in standard mode; a nightly production task points to job or serverless compute rather than an always-on all-purpose cluster; BI queries point to a SQL warehouse. Pitfall: an exam option or older study guide may still say “shared access mode” or “single user cluster”. Translate them to standard and dedicated before you answer; they are the same settings, not extra choices. The Microsoft Learn compute overview lists the current types.
Ingestion and loading (21%)
The real content. Getting data in, reliably and without waste.
Incremental over full reload
The most examined idea in the section. Reprocessing an entire source every run is the naive approach, and it is wrong for cost, runtime and correctness reasons. Incremental ingestion processes only what is new.
Any scenario describing rising cost or runtime as data accumulates is an incremental-loading question. The wrong answers will offer a bigger cluster.
Batch and streaming
- Scheduled batch loads for data arriving periodically.
- Streaming or continuous ingestion where records arrive constantly.
- The middle ground: frequent micro-batches, which most pipelines actually use.
Match the pattern to how data arrives and how fresh it must be, not to which sounds more sophisticated.
Schema handling
- Schema enforcement — Delta rejects writes that do not match, which is a feature rather than an obstacle.
- Schema evolution — allowing new columns to be added deliberately.
- What happens when a source changes shape unexpectedly, and why silently accepting it is dangerous.
Auto Loader and choosing an ingestion method
The ingestion section names Auto Loader in two objectives: use it with schema enforcement and evolution to land files in Unity Catalog tables, and choose between it, Lakeflow Connect standard and managed connectors, partner connectors and other methods. It is the Databricks answer to “new files keep arriving in cloud storage and each must be loaded once”.
Auto Loader is a Structured Streaming source called cloudFiles. It records which files it has already processed in the stream’s checkpoint, so a rerun or restart loads only new files. Run it with an availableNow trigger and it processes everything that has arrived, then stops; that is how it runs as a scheduled batch job without an always-on stream. It finds new files in one of two modes: directory listing, the default, which lists the input path, and file notification, which reads file events from a queue and is what Databricks recommends for most workloads.
Schema handling is where the questions sit:
- Setting
cloudFiles.schemaLocationturns on schema inference and evolution and stores the schema there. - In the default mode,
addNewColumns, a new column makes the stream fail once after it has been added to the schema; the restart picks it up. Run it as a job so the restart is automatic. rescuenever changes the schema and never fails; unexpected values go to the_rescued_datacolumn.failOnNewColumnsstops until you change the schema or remove the file. When you supply a schema yourself, the default isnone, which ignores new columns.
Choosing a method is about the source, not the volume alone:
| Source | Method |
|---|---|
| Files landing in cloud storage, growing and possibly changing shape | Auto Loader |
| Files loaded with a simple, retriable SQL statement | COPY INTO |
| A database or enterprise application such as SQL Server or Salesforce | Lakeflow Connect connector |
| A source covered by a partner tool the team already uses | Partner connector |
Pitfall: a stream that fails the first time a new column appears looks like a bug, and the wrong answers offer to switch off schema checks. It is the default addNewColumns behaviour; the fix is an automatic restart, or rescue if the stream must never stop. The full option list, code and file-detection detail are in the Auto Loader guide.
File formats and layout
- Columnar formats for analytical reads; row formats for record-at-a-time access.
- Compression and its trade-offs.
- The small file problem — many tiny files make reads slow because of per-file overhead. It starts at ingestion and it is worth preventing rather than fixing later.
Landing data properly
The bronze layer convention: land raw data with minimal transformation, so you can always reprocess from source. Transformation happens downstream.
Sample questions
Question 1. A source system delivers a few hundred new files daily into cloud storage. The current job reads the entire location each night and runtime has grown from minutes to hours. What is the correct fix?
- A. Switch to incremental ingestion processing only new files
- B. Provision a larger cluster for the nightly job
- C. Delete source files after each successful run
- D. Reduce the job frequency to weekly
Show answer
Answer: A
Processing only newly arrived files addresses the cause, which is repeatedly reading data that has already been ingested. A larger cluster makes wasteful work faster at higher cost, deleting source files loses the ability to reprocess, and reducing frequency increases latency without improving efficiency.
Want more questions like this? Full Data Engineer Associate practice tests →
Question 2. An upstream system adds a new column to its export without notice. The ingestion job fails. What does this indicate about the target table?
- A. The table is corrupted and must be rebuilt
- B. The cluster is too small to handle the extra column
- C. Schema enforcement rejected the write, which is the intended protection
- D. The job lacks permission to write to the table
Show answer
Answer: C
A write rejected because the incoming data does not match the table’s schema is schema enforcement working as designed, protecting the table from unexpected changes. It is not corruption, not a cluster sizing issue, and not a permissions problem.
Want more questions like this? Full Data Engineer Associate practice tests →
Question 3. Which describes the appropriate content of a bronze layer table?
- A. Aggregated metrics ready for business reporting
- B. Raw ingested data with minimal transformation, retained so downstream layers can be rebuilt
- C. Fully cleansed and conformed data ready for analysts
- D. Temporary scratch data deleted after each run
Show answer
Answer: B
The bronze layer holds raw ingested data with minimal transformation so it can always be reprocessed from source, with cleansing and modelling happening downstream. Aggregated business metrics belong in gold, fully cleansed conformed data in silver, and a bronze table is not a temporary scratch area.
Want more questions like this? Full Data Engineer Associate practice tests →
Question 4. An Auto Loader stream lands JSON files in a bronze table with the default schema evolution settings. A file arrives with a new field, and the stream stops with an error. The team wants new fields to appear as columns without anyone stepping in. What should they do?
- A. Switch the stream to the rescue schema evolution mode
- B. Run the stream as a Lakeflow Jobs task that retries on failure
- C. Remove the cloudFiles.schemaLocation option
- D. Replace Auto Loader with COPY INTO
Show answer
Answer: B
With the default addNewColumns mode, Auto Loader adds the new column to the schema and then fails the stream once; a restart continues with the new schema, so running the stream as a job with retries makes the change hands-off. The rescue mode never adds columns. Removing the schema location disables inference and evolution. COPY INTO does not solve the requirement better and is not the cause of the error.
Want more questions like this? Full Data Engineer Associate practice tests →
What to practise
Set up ingestion from a storage location into a bronze Delta table, then add a file with an extra column and watch schema enforcement reject it. Enable evolution and try again. Then generate a thousand tiny files and observe read performance.
Those three experiments cover most of what this section asks, and they take an hour.