Skip to the page
Tecyfy

Databricks Spark Developer Associate exam: what to study

The Databricks Certified Associate Developer for Apache Spark exam is 45 questions on reading and writing PySpark. The pairs of methods it expects you to tell apart, the 20% most people skip, and how to practise for free.

Tecyfy · Published · 6 min read

Woodcut of two old keys that look alike but have differently cut teeth, lying on a wooden table beside a brass padlock

To pass the Databricks Certified Associate Developer for Apache Spark exam, you need to read a few lines of PySpark and know what they do without running them. Half the 45 questions sit in 2 sections: the DataFrame API (30%) and Spark SQL (20%). The rest test how Spark runs that code, plus 3 small sections that people tend to skip.

The guide was updated on 8 October 2026. The exam runs 90 minutes, with up to 10 unscored questions on top of the 45, and costs USD 200. You can take it online or at a test centre, in English. The guide asks for DataFrame work in Python and names no Spark version, so study from the current Apache Spark documentation. Databricks does not publish the pass mark.

One oddity: the published PDF still carries its authors' drafting notes in square brackets, such as "[Author: list current, non-deprecated training only by name...]". They are notes to the people who wrote it, not things you need to know.

What "reading code" looks like

Most questions show a short block and ask what it returns, what it costs, or which line is wrong. Take this one:

orders = spark.read.table("sales.orders")
big = orders.filter("amount > 100").select("id", "amount")
big.cache()
print(big.count())
big.write.mode("overwrite").saveAsTable("sales.big_orders")

Filter, select and cache do no work. Spark only builds a plan until an action asks for a result, and here that is count(), which runs a job and fills the cache. The write is the second action and reads from the cache. If you can say that without thinking, you have objective 1.6 (actions, transformations and lazy evaluation). Along the way you will also have touched caching (1.3) and save modes (2.2). The how Spark runs a job lessons go through jobs, stages and tasks with the Spark UI.

The pairs to tell apart

A lot of wrong answers look right because they use the twin of the correct method. These are the pairs worth drilling:

PairThe difference
union / unionByNameunion matches columns by position; unionByName matches them by name and, with allowMissingColumns=True, fills gaps with null. Neither removes duplicates.
repartition / coalescerepartition shuffles into hash partitions; coalesce to fewer partitions merges them without a shuffle.
cache() / persist()cache() is persist() at the default level, MEMORY_AND_DISK_DESER for a DataFrame. persist() takes any storage level.
Temp view / global temp viewA temp view lives in one session. A global one is shared by every session until the application ends, and you query it as global_temp.name.
Broadcast variable / accumulatorA broadcast variable sends read-only data to every executor. An accumulator collects counts back, and only updates made inside actions are guaranteed to be counted once.
Client / cluster deploy modeIn client mode the driver runs where you submitted from; in cluster mode it runs inside the cluster.
dropDuplicates on a stream, with / without a watermarkWithout a watermark, Spark keeps every record it has seen as state, forever. With one, it can drop old state.
errorifexists / overwrite / append / ignoreThe default save mode fails if the table exists; the other 3 replace, add to, or silently skip.

Join questions add one more: a broadcast join copies the small side to every executor and skips the shuffle. Adaptive Query Execution, on by default since Spark 3.2, can switch a sort-merge join to a broadcast join at runtime when one side turns out to be small (4.2). See the joins guide for when each wins.

The 20% people skip

Structured Streaming (10%), Spark Connect (5%) and the pandas API on Spark (5%) add up to 9 questions. That is too many to give away, and each needs only a few ideas.

  • Streaming. Know the micro-batch model, the 3 output modes (append, update, complete), which sinks allow which mode, and deduplication with and without a watermark. The event time and exactly-once lessons cover the core.
  • Spark Connect. The client sends unresolved plans to the server over gRPC. Because the client is not in the driver's process, there is no SparkContext and no RDD API. That one fact explains most of its limits.
  • Pandas API on Spark. Know why a Pandas UDF beats a plain Python UDF (Arrow moves the data and pandas works on it in vectorized form), and why toPandas() on a big DataFrame runs the driver out of memory.

How to practise

Databricks Free Edition is enough for most of this, and the guide points to it for hands-on work. Keep the PySpark cheat sheet open while you write. For jobs and stages, a local PySpark install shows the Spark UI at port 4040, where you can see where each job shuffled. The troubleshooting section (10%) asks you to read driver and executor logs for out-of-memory errors and idle clusters, which only sticks once you have caused a few yourself.

When you can predict the output of code blocks like the one above, try the free Spark Developer practice questions. If you are deciding between this exam and the Data Engineer track, read which Databricks certification to take first.

Questions

How do I prepare for the Databricks Spark Developer Associate exam?
Write PySpark every day until you can predict what a few lines of DataFrame code return without running them. The DataFrame API is 30% of the exam and Spark SQL another 20%. Learn the pairs of methods that look alike but behave differently, such as union and unionByName or repartition and coalesce, and do not skip streaming, Spark Connect and the pandas API, which are 20% together.
How many questions are on the Spark Developer Associate exam?
45 scored multiple-choice questions in 90 minutes, plus up to 10 unscored ones, so up to 55 in all. The fee is USD 200 plus taxes.
Is the Spark Developer Associate exam in Python or Scala?
The guide of 8 October 2026 asks you to do basic DataFrame tasks in Python. Study PySpark.
Which Spark version does the exam use?
The guide does not name one. Study from the current Apache Spark documentation; Spark Connect and the pandas API on Spark are both in the outline, so a Spark 3.4 or later mental model is the safe floor.
What is the passing score for the Spark Developer Associate exam?
Databricks does not publish it. Its certification FAQ says passing scores are set through statistical analysis and change as exams get new questions.
Can I practise for free?
Yes. Databricks Free Edition runs PySpark, and the exam guide points to it for hands-on practice. A local PySpark install adds the Spark UI, at port 4040 by default, where you can see jobs, stages and shuffles.