Free DP-700 sample questions with answers

Updated October 9, 2026

Here are five free DP-700 sample questions with the answer and the reasoning behind it. Try each one before opening the answer. They are original scenario questions written against the official skills outline, not questions from the real exam.

Question 1. A workspace for development, one for test and one for production are connected through a deployment pipeline. Notebooks in each stage must use the lakehouse that belongs to that stage, not the development lakehouse. What should you configure?

  • A. Edit each notebook by hand after every deployment
  • B. Create a shortcut in every stage that points to the development lakehouse
  • C. A deployment rule for the notebook’s default lakehouse in the test and production stages
  • D. Make the test users Admin of the development workspace
Show answer

Answer: C

Deployment rules let you override item settings per stage, including the default lakehouse of a notebook, so promoted items point at the right data. Deploying again after editing the notebook by hand defeats the pipeline. A shortcut to the development lakehouse keeps all stages on development data. Giving test users Admin on development changes access, not which lakehouse a notebook uses.

Want more questions like this? Full DP-700 practice tests →

Question 2. A source table has a ModifiedDate column and receives about 50,000 new or changed rows per day out of 400 million. A nightly pipeline currently copies the whole table into a lakehouse. How should you redesign the load to cut runtime?

  • A. Store a watermark of the last loaded ModifiedDate and copy only rows newer than it
  • B. Raise the degree of copy parallelism on the existing full copy
  • C. Truncate the destination table and reload it in the morning
  • D. Change the destination from a lakehouse to a warehouse
Show answer

Answer: A

An incremental load with a watermark stores the highest ModifiedDate loaded so far, copies only rows above it and then updates the stored value. Increasing the copy parallelism still moves all 400 million rows. Truncating and reloading is the full load you are trying to avoid. Switching the destination to a warehouse changes the target, not how many rows are read.

Want more questions like this? Full DP-700 practice tests →

Question 3. Telemetry from 20,000 devices arrives continuously. Operators need sub-second time-series queries over the last few hours, with simple filtering and per-minute aggregation, and little code to maintain. Which approach fits best?

  • A. A Spark structured streaming job writing Delta tables with custom PySpark transformations
  • B. A pipeline scheduled nightly that copies the data to a warehouse
  • C. A Dataflow Gen2 refreshed every few minutes
  • D. An Eventstream into an Eventhouse queried with KQL
Show answer

Answer: D

Eventstream feeding an Eventhouse lets you query fresh data with KQL, which is built for time-series and log-style analysis with low latency. Spark structured streaming into Delta is better when you need complex PySpark logic or a lakehouse sink, and it costs more code and cluster time. A nightly pipeline gives hours of latency. Dataflows Gen2 are batch-oriented and not a streaming engine.

Want more questions like this? Full DP-700 practice tests →

Question 4. A lakehouse table receives thousands of small appends per day from a streaming job. Queries over it have become slow, and the table folder holds a very large number of tiny Parquet files. What should you run?

  • A. VACUUM with the default retention period
  • B. OPTIMIZE on the table
  • C. DROP TABLE and re-create it empty
  • D. Scale the capacity to a larger SKU
Show answer

Answer: B

The OPTIMIZE command compacts many small files into fewer larger ones, which is the standard fix for the small-file problem. VACUUM only deletes files no longer referenced by the table and older than the retention period, so it does not make reads faster by compaction. Dropping the table loses data. Increasing the capacity size adds compute without fixing the file layout.

Want more questions like this? Full DP-700 practice tests →

Question 5. A pipeline loads a lakehouse every hour. The data team must be told in Microsoft Teams whenever the Copy activity fails, with the error message included. What is the simplest design?

  • A. Add a Teams activity on the Copy activity’s On fail path and include the error message in it
  • B. Schedule a second pipeline every minute that scans for failed runs
  • C. Ask the team to check the Monitor hub each morning
  • D. Disable the Copy activity so that nothing can fail
Show answer

Answer: A

Connecting an activity to the Copy activity on its failure path, such as a Teams activity whose message uses the failed activity’s error output, runs only on failure and can include the message. A scheduled check every minute is slower and heavier. Reading the Monitor hub manually is not an alert. Disabling the Copy activity would stop the load rather than report on it.

Want more questions like this? Full DP-700 practice tests →

How did you do?

Questions 1 and 5 are the ones people get wrong without hands-on time: deployment rules and failure paths are small features that you only remember if you have clicked through them. Question 3 tests whether you can match a latency and skill requirement to a streaming engine, a choice the outline names directly. If it slowed you down, read Ingest and transform data explained.

Question 4 is worth a second look. The words OPTIMIZE and VACUUM are easy to swap, and the monitoring domain tests the difference. See Monitor and optimize explained.

What these questions have in common

None asks for a definition. Each describes a situation and several options that would all work somewhere, and one detail decides it: per-stage lakehouse, only changed rows, sub-second latency, tiny files, only on failure. Underline the constraint before reading the options.

For a longer check, take the 20-question practice test.