先了解这张认证
Databricks Certified Associate Developer for Apache Spark 是 Databricks 官方针对"能用 PySpark DataFrame API 写数据处理代码"的开发者发的认证。跟同家的 Data Engineer Associate(DEA)定位不一样:DEA 考的是"在 Databricks 平台上做数据工程"(Delta Lake、Unity Catalog、Workflows 这些平台特性),而 Spark Developer 这张证考的是纯 Apache Spark DataFrame API — 你就算用 AWS EMR、阿里云 EMR、GCP Dataproc、自建 K8s 上跑 Spark,知识也完全适用。
考试基本参数:$200 USD、60 题(单选 + 多选)、120 分钟、通过分 70%、在线 Kryterion Webassessor 监考、证书有效期 2 年、可选 Python(PySpark)或 Scala 版本,99% 的考生选 PySpark。2024 年底 Databricks 把考纲从 Spark 3.0 升级到 Spark 3.5,加入了 Spark Connect 和 Structured Streaming 的 availableNow trigger,旧版备考材料要小心。
考纲 5 大领域权重(Spark 3.5 版本):
- Apache Spark Architecture Concepts:约 17%(Driver / Executor / Cluster Manager、Lazy Evaluation、Transformations vs Actions、Shuffle、Spark Connect)
- Apache Spark DataFrame API Applications:约 30%(select、filter、join、groupBy、agg、withColumn、读写各种 Data Source)
- Apache Spark SQL Functions:约 12%(built-in functions、Window functions、UDF 使用场景)
- Troubleshooting and Tuning:约 17%(partitioning、caching、broadcast join、AQE、shuffle 调优)
- Structured Streaming:约 17%(基本概念、trigger、watermark、output mode)
- 其他(Testing / Debugging):约 7%
市场定位:Apache Spark 至今仍是离线大数据处理的事实标准 — 2025 年 Stack Overflow Developer Survey 里 Spark 在 "Tools used" 的数据工程栏目排名第 3(仅次于 dbt 和 Airflow)。这张证含金量不如 AWS / Azure 云厂商证书那么"路人皆知",但在 Databricks、Shell、HSBC、Block、Rivian、Comcast 这类重度 Spark shop 面试时会被明确加分。比起 DEA,这张更适合已经有 Spark 基础、想证明自己"API 熟练度"的开发者,学习曲线相对平缓。
考试档案
- 考试代码
- Databricks Spark
- 发证机构
- 其他
- 题型
- single-choice / multiple-choice
- 考试语言
- English
- 证书有效期
- 3 年
你会学到的技能
学完能做什么
- Pass the Databricks Spark certification exam with confidence
- Master key concepts across all exam domains
- Identify and strengthen weak areas before the exam
适合这样的你
- Python/PySpark developers working with Apache Spark DataFrames
- Data engineers building Spark-based data processing pipelines
- Big data developers seeking Spark API proficiency certification
- Analytics professionals using Spark SQL for data analysis
开始前需要什么
- 6+ months of hands-on experience with Apache Spark
- Proficiency in Python programming and PySpark basics
- Understanding of Spark architecture (Driver, Executor, Cluster Manager)
- Familiarity with DataFrame API and Spark SQL fundamentals
一步一步,准备好考试
4 个章节 · 学习路径
安排你的备考
- 课程学习时长
- 29h
- 有相关实操经验
- 3-5 周
- 从基础开始
- 8-12 周
- 建议日投入
- 1.5-2h
备考支持
- 382 practice questions with detailed explanations
- Mock exams simulating real test conditions
- AI-powered tutoring for personalized study
- Progress tracking and weak area identification
1. 第一阶段:搭环境 + 过一遍 DataFrame API(第 1 周)
注册 Databricks Community Edition(免费、单节点 15GB 内存的 Cluster、足够跑所有练习)。用官方示例数据集(/databricks-datasets/ 目录里的 airlines、diamonds、nyctaxi)跑通 5 个基础 Notebook:(1)读 CSV/Parquet/JSON 成 DataFrame;(2)select / filter / withColumn 基本变换;(3)groupBy + agg 多字段聚合;(4)两种 join 写法(DataFrame API 和 Spark SQL);(5)写 DataFrame 回 Parquet 和 Delta。不要看视频,直接敲代码 — 很多 API 的参数顺序和返回类型只有自己踩过才记得住。
2. 第二阶段:深入 Spark 架构 + SQL Functions(第 2-3 周)
读《Learning Spark, 2nd Edition》(O'Reilly, Jules Damji 等著) 的第 1-6 章 — 这本书作者是 Databricks 员工,内容跟考试高度对齐,免费版 PDF 在 Databricks 官网能下载。重点搞懂:Lazy Evaluation 为什么让 filter pushdown 变可能、Transformation 分 Narrow 和 Wide 的区别(map/filter 是 narrow,groupBy/join 是 wide)、Action 触发 Job 的机制、Shuffle 的代价和如何用 broadcast join 避免。Spark SQL Functions 部分必须会:col、lit、when/otherwise、coalesce、expr、greatest/least、日期函数(date_add、date_trunc、to_timestamp)、字符串函数(split、regexp_replace、concat_ws)。Window Functions 是考点重灾区:row_number、rank、dense_rank、lag、lead、sum() over (partition by ... order by ...),还要会用 Window.rowsBetween 和 Window.rangeBetween 定义滑动窗口。
3. 第三阶段:性能调优 + Structured Streaming(第 4 周)
性能调优是区分及格和高分的关键:理解 AQE(Adaptive Query Execution,Spark 3.0+ 默认开启)、coalescePartitions、skewJoin 的工作原理;会用 .explain() 和 .explain(mode="formatted") 看物理执行计划;记住 spark.sql.shuffle.partitions 默认 200、生产经常调到 400-2000;broadcast join 的 broadcast() hint 和 spark.sql.autoBroadcastJoinThreshold 默认 10MB;cache() 和 persist(StorageLevel.MEMORY_AND_DISK) 的区别。Structured Streaming 只考基础:understand trigger 的 4 种模式(default 处理所有可用数据、processingTime="10 seconds"、once=True、availableNow=True — 这个是 Spark 3.3+ 加的,替代了 once)、output mode 三种(append / update / complete)、watermark 对 stateful 聚合的影响。
4. 第四阶段:刷题 + 全真模考(第 5-6 周)
Databricks 官网免费提供 1 套 60 题的 Practice Exam(跟真题同源),必刷两遍。JR Academy 148+ 题库按"架构 / DataFrame API / SQL Functions / 调优 / Streaming" 5 大模块刷,每个错题都去官方 PySpark 文档(spark.apache.org/docs/latest/api/python/)查 API 细节。严格按考试环境做 3 次全真模考:关手机、计时 120 分钟、60 题一口气做完、做完再对答案。目标:连续 2 次 ≥ 80% 再约正式考试。考前一天测试 Webassessor 考试系统、摄像头、有线网络。
这张认证的职业价值
这张证的真实含金量在哪里
跟 AWS SAA 或 Azure AZ-104 那种"地毯式"被招聘 JD 要求的证书不一样,Spark Developer Associate 不会出现在通用 JD 的 "Required Certifications" 列表里。它真正的价值是两个场景:
- 简历筛选关:当 JD 写 "Strong PySpark / Spark DataFrame API experience" 时,有这张证能让 HR 在第一轮筛选里直接把你放进"技术过关"档,避免被非技术招聘流程刷掉。尤其是跨境求职(中国工程师投澳洲/新加坡岗位)时,这张证比 LinkedIn 上自称"熟悉 Spark"更有说服力。
- 内部晋升 / 团队建设:Databricks 重度客户公司(Shell、HSBC、Block、NAB、Westpac、Coles)内部经常把这张证列为 Data Engineer L2 → L3 晋升的"隐性加分项",因为 manager 要证明团队的"平台成熟度",认证人数是一个硬指标。
各市场真实行情(2026 数据)
- 澳洲:PySpark / Spark Developer AUD 125-160k(3-5 年经验),Senior 165-200k。主要雇主:Commonwealth Bank、NAB、Westpac、Coles、Woolworths、Telstra、QBE Insurance。澳洲市场特点是 Spark + Azure Databricks 组合占主导(银行业尤其明显),所以 DEA + Spark Dev 双证组合在澳洲比单独 Spark Dev 更值钱。
- 美国:USD 135-200k,湾区和纽约溢价 25-40%。FAANG 级别公司(Netflix、Apple、Uber、LinkedIn)有大量 Spark 岗位,但他们更看重 GitHub 项目和面试表现,证书本身的权重不高。中型公司(Block、Rivian、Condé Nast、Plaid)比较认 Databricks 系认证。
- 中国一线:北上深 PySpark / 大数据开发 RMB 30-60 万。主要在字节、阿里、腾讯的离线数据平台团队(虽然国内大厂更多自研 Flink / 内部 Spark fork,但 Spark DataFrame API 知识完全通用)、跨境电商(Shein、TikTok)、新能源车企(小鹏、理想)。Databricks 在国内市场份额极小,主要是外资金融(高盛、汇丰中国、摩根)和跨境业务团队使用。
- 新加坡:SGD 100-160k,主力雇主是 DBS、OCBC、UOB、Shopee、Lazada、Grab。新加坡 Databricks 用户比澳洲还密集一些。
适合考的人
- 已经在写 PySpark 的数据工程师:你每天都在用 DataFrame API,但很多 API 的细节(比如 groupBy 后 agg 的多种写法、Window 函数的 rangeBetween vs rowsBetween、broadcast hint 的强制使用)都是"用的时候查一下"的状态。备考能把这些散乱的知识点系统串起来,实际工作效率会提升一截。
- 想进 Databricks / Spark shop 的候选人:转行或跨国求职时,简历上写一张 Databricks 官方发的证比写"熟悉 Spark"更能过初筛。
- 刚入门大数据想找第一份工作的学生:相比 AWS Big Data Specialty(已停考)或 CCA175(也停考了),这是目前市面上还在发的少数"Spark 专门证书"之一,能作为校招简历的技术亮点。
不建议考的人
- 纯 SQL 数据分析师 / BI 开发者:你用的是 Snowflake / BigQuery / Redshift,不写 PySpark,考这个用不上。
- 非数据岗位:前端、后端、运维、产品 — 这证书对你的岗位零加分。
- 只用 SparkSQL 不写 DataFrame API 的人:考试 30% 分数在 DataFrame API 细节上,纯 SQL 选手会很吃亏。建议先补 PySpark。
- 已经考过 DEA 或 DEP 的人:内容高度重叠,再考一次 ROI 不高,除非你要凑"双证"作为简历亮点。
- 澳洲
- AUD 120,000 – 175,000
- 美国
- USD 130,000 – 205,000
- 中国
- CNY 300,000 – 600,000
- 新加坡
- SGD 95,000 – 160,000
备考时,做好这些事
- **Python 版优先选择**:考试有 Python 和 Scala 两个版本,99% 的考生选 Python,JR 题库和官方 Practice Exam 也默认 Python。除非你本职就是 Scala 开发者,否则别挑战 Scala 版。
- **官方 Practice Exam 必刷**:Databricks 官网免费提供 1 套 60 题的 Practice Exam,题目质量和真题几乎一致,必须刷两遍。第一遍裸考看差距,第二遍每道题回去查官方文档搞懂"为什么这个选项对"。
- **《Learning Spark, 2nd Edition》前 6 章精读**:这本书作者 Jules Damji 是 Databricks 员工,内容跟考纲对齐度最高。Databricks 官网可以免费下载 PDF,比买任何第三方教材都靠谱。第 8 章(Structured Streaming)简读即可 — 考试只考基础概念。
- **PySpark 官方 API 文档加书签**:spark.apache.org/docs/latest/api/python/ 是备考期间最频繁访问的页面。很多细节(比如 `dropDuplicates` 的 `subset` 参数接 list of column names、`withColumnRenamed` 只能一次改一列)文档里写得最清楚。
- **Databricks Community Edition 动手跑**:所有考点都要在 Notebook 里至少敲一遍 — 特别是 Window Functions、groupBy + agg 的多种写法、broadcast join 的执行计划。光看题不敲代码考试时会很虚。
- **在线监考准备**:考试通过 Kryterion Webassessor 在线监考,要求:桌面完全清空(只能有电脑、不能有手机/纸/笔/耳机/水杯)、房间 360° 录像检查、全程脸不能离开摄像头、不能读题出声、必须用有线网络(WiFi 掉线风险大)。提前 30 分钟 check-in,考试系统要提前一天下载测试。
- **证书有效期 2 年,可免费续期**:到期前登录 Databricks Credentials 门户做免费的 Recertification Exam(不用再交 $200)— 这点比 AWS Associate 证书(续期要重考 + 交 $150)性价比好。但 Databricks 的 recert 题目也会更新到最新 Spark 版本,不能裸考。
这些误区要避开
- **混淆 `select` 和 `withColumn` 的使用场景** — `withColumn("new_col", expr)` 只加一列或替换同名列,每次 withColumn 都会触发一次 projection plan 重建;生产代码里连续 10 个 withColumn 会让 Catalyst 优化变慢。正确做法是多列变换用 `df.select("*", expr1.alias("a"), expr2.alias("b"))` 或 `df.select([col(c) for c in df.columns] + [new_col_expr])`。考题会给一段循环 withColumn 的代码问性能问题在哪。
- **Window Functions 的 `rangeBetween` vs `rowsBetween` 搞错** — `rowsBetween(-6, 0)` 是往前 6 **行**(不管值是什么),`rangeBetween(-6, 0)` 是往前 6 **个单位的值**(通常要先把 orderBy 的列转成数字或秒数)。如果你写 `Window.orderBy("date").rangeBetween(-7, 0)` 直接用 date 列,Spark 3.5 要求你先把 date 转成 unix timestamp 才能用 range — 很多人不知道这个。
- **以为 `cache()` 会立刻执行** — `cache()` 是 Transformation,惰性求值。只有在下一个 Action(比如 `count()`、`show()`、`write()`)时才会真的把数据缓存到内存。考题会问"执行完 `df.cache()` 后内存里有数据吗"(没有,要等到 Action 触发)。另外 `cache()` 等价于 `persist(StorageLevel.MEMORY_AND_DISK)`,不是 MEMORY_ONLY — 这是 Spark 2.0+ 改的默认值。
- **broadcast join 的阈值和强制使用** — `spark.sql.autoBroadcastJoinThreshold` 默认 10MB(不是 100MB 也不是 1GB),超过这个阈值 Spark 不会自动 broadcast。要强制 broadcast 大表(一般不建议,除非你知道自己在干嘛)要用 `df1.join(broadcast(df2), ...)` — 注意 `broadcast()` 是从 `pyspark.sql.functions` 导入的 hint 函数,不是 DataFrame 方法。考题常给你一个 10GB 的 fact 表 join 一个 8MB 的 dim 表问是否会触发 broadcast(会,因为 dim 表 < 10MB)。
- **Transformation vs Action 记反** — 常见陷阱:`count()` 是 Action、`countDistinct()` 是 Transformation(返回一个 Column 对象要包在 `agg()` 里用)、`show()` 是 Action、`explain()` 是 Action(会触发 physical plan 生成)、`collect()` 是 Action 且会把所有数据拉到 Driver(生产环境慎用)、`take(n)` 是 Action 但只拉 n 行、`cache()` 和 `persist()` 都是 Transformation。考题会给一个 10 个方法调用的链问"触发了几次 Job"。
- **Structured Streaming 的 trigger 和 output mode 配错** — `complete` output mode 只能和带 aggregation 的 query 搭配(没聚合就没法 complete,会直接报错);`update` mode 只会输出本次 batch 改变的行;`append` mode 不支持没有 watermark 的聚合(因为 Spark 不知道什么时候可以"最终输出")。Spark 3.3+ 加的 `availableNow=True` trigger 替代了 `once=True`,区别是 availableNow 会把未处理的所有数据分批处理、once 只处理一次。考题会问"用 complete mode 处理一个没有 groupBy 的流"会怎么样(报错 AnalysisException)。
- **UDF 性能陷阱** — Python UDF 会触发 Python <-> JVM 的序列化,性能比内置函数慢 2-10 倍。Spark 2.3+ 引入 Pandas UDF(`@pandas_udf`)用 Arrow 批量传输,性能接近原生。考题会给一段用 Python UDF 写的简单字符串拼接代码让你优化 — 正确答案永远是"用内置的 `concat` 或 `concat_ws` 函数替代 UDF"。面试官常问这个。
- **`partitionBy` 和 `repartition` 记混** — `df.write.partitionBy("date")` 是**写文件时**按 date 分文件夹(Hive 风格 partitioning);`df.repartition(100, "date")` 是**运行时**把 DataFrame 重新 hash 分到 100 个 partition(影响下游 shuffle)。考题会同时给两个方法问"哪个影响磁盘布局"(partitionBy)和"哪个影响 shuffle 并行度"(repartition)。还要注意 `repartition(n)` 会触发 shuffle,`coalesce(n)` 只在 n 小于当前 partition 数时有效且不触发 shuffle。
报名之前,你可能想问
这个 Databricks Spark 题库和另一个 Databricks Apache Spark Developer 题库有什么区别?
两个题库都针对 Databricks Certified Associate Developer for Apache Spark 认证,但题目来源和组织方式不同。本题库包含 148+ 道题目,按 Databricks(142 题)和 Apache Spark(6 题)两个分类组织。另一个题库包含 176+ 道题目。建议两个题库都练习以获得最全面的备考覆盖。
Databricks Spark 认证考试的形式是怎样的?
考试包含 60 道选择题,时长 120 分钟,70% 正确率通过。考试费用 $200 USD。可选择 Python(PySpark)或 Scala 版本。考试在线进行,支持远程监考。认证有效期 2 年。考试重点测试 Spark DataFrame API 和 Spark SQL 的实际使用能力。
需要有 Databricks 平台经验才能考试吗?
考试主要测试 Apache Spark 的核心开发能力,不要求深入了解 Databricks 平台特有功能。但需要理解 Spark 的基本架构(Driver、Executor、Cluster Manager)和 DataFrame/Dataset API。有 Databricks 平台使用经验会有帮助,但使用其他 Spark 环境(如 EMR、HDInsight)的经验同样适用。
这个考试的难度如何?
属于 Associate 级别(中等难度)。题目主要考查 Spark API 使用能力,不会考很深的底层实现细节。难点在于:Spark SQL 窗口函数的复杂用法、DataFrame join 类型的选择和性能影响、Shuffle 机制和分区策略的优化、以及 Spark 惰性求值和 Action/Transformation 的区别。建议通过动手编码加深理解。
备考建议是什么?
建议 4-6 周备考:第 1-2 周学习 Spark 架构和 DataFrame API 基础;第 3-4 周深入 Spark SQL、join 优化和分区策略;第 5-6 周做练习题和模拟考试。推荐使用 Databricks Community Edition(免费)动手练习。382 道练习题配合 AI 辅导功能可精准定位薄弱环节。
听听学过的人怎么说
评价加载中…
我在一家外资银行写 PySpark 3 年了,工作基本能 cover 80% 考点。实际备考时发现自己最薄弱的是 Window Functions — 虽然工作里写过几次,但 rangeBetween 和 rowsBetween 的区别一直似懂非懂。考题里有 3-4 道题专门考这个,Window.orderBy("date").rangeBetween(-7, 0) 对应的是按日期值往前 7 天(不是 7 行),这个细节不深究的话很容易答错。另一个意外是 broadcast() hint 的题 — 考题会给你一段 join 代码让你判断优化方案,没背过 autoBroadcastJoinThreshold 默认 10MB 这个数字就会选错。最终 83% 通过。
L. Chen
PySpark 数据开发 3 年 · 83% · 4 周
我之前 4 年都在写 Scala Spark,核心概念完全熟,以为一周就能考下来 — 结果差点挂。PySpark 的 API 跟 Scala 不是 1:1 的:比如 Scala 里 df.select($"col"),PySpark 里是 df.select(col("col")) 或 df.select("col");Scala 里 case class 直接转 DataFrame,PySpark 里要写 StructType schema。考试 60 题里有至少 10 题是考"这段 PySpark 代码是否正确",转行者很容易栽。建议从 Scala 转 PySpark 的人至少花 2 周专门敲 PySpark 代码,不要以为"我会 Spark 就行"。
Y. Wu
Scala Spark 转 PySpark 的数据工程师 · 78% · 6 周
完全零经验,从 Databricks Community Edition 起步。前 4 周全在学基础概念 — 什么是 RDD、什么是 DataFrame、Transformation 和 Action 的区别、为什么要懒求值。中间 3 周重点刷 DataFrame API 和 SQL Functions,这部分题量最大也最实在。最后 3 周刷题和模考。考试当天最紧张的是 Structured Streaming 那部分 — 我完全没有真实项目经验,全靠死背 trigger 模式和 watermark 概念,最后那 10 题大概只答对 6 题。好在其他部分答得不错,72% 擦边过。给应届生的建议:Streaming 不要死记硬背,花 2 天在 Community Edition 跑一个 readStream → writeStream 的小 demo,会好很多。
J. Kumar
应届生 / 数据工程方向 · 72% · 10 周
从第一章,开始你的备考。
前 2 章免费试学 · 完整备考 $29 起