🎓

Databricks Certified Machine Learning/Data Engineer Professional合格体験記

に公開

今月Databricks Certified Machine Learning/Data Engineer Professionalを二つ撮りました。

せっかくなので両方取った時の記録をまとめようと思います。

Databricks Certified Machine Learning Professional

https://www.databricks.com/learn/certification/machine-learning-professional
こちらの試験は比較的簡単でした。何が簡単かというと、意外と長文が少なく、知識さえ溜まっていればサクサクと解いていけるので時間があまり、細かい点もフォローしやすかったです。

必要な知識を何から得たか

必要な知識は何か

  • 機械学習に関する基礎的な知識、特にデータドリフトについては意外と出る
  • MLflowに関する知識、結構幅広く
  • Databricksにおけるモデルライフサイクル
  • FeatureStore
  • その他細かいクエリ最適化等、若干Data Engineering領域にも染み出した質問

逆に出なかった質問(2025/06時点)

  • Unity Catalogにおける新しいモデルライフサイクル管理: alias等(ここは個人的にちょっと残念ポイントです)

参考になるドキュメントや出題項目

記事自体はレガシーですがこちらのライフサイクル管理は必ず1題は出ると思います。
特にProduction, Staging, Archive, Noneのステージの概念や、以下のようなmlflowの持つ関数や挙動については問われます。

client = MlflowClient()
result = client.create_registered_model("<model-name>")

あとはData Driftについては4つくらいのDriftの概念、Label Drift, Feature Drift...みたいなのをそれぞれ押さえておく必要があります。ただ、機械学習に慣れている人であれば、大体言葉の意味から推論して回答できると思います。
Data Driftの検知についてはなぜか Jensen-Shannon (JS) distance over a Kolmogorov-Smirnov (KS) がでます。多分ですが、Databricks Academyの中にあるコースの中で紹介されているプラクティスがこれだったからだと推測しています。ここはAcademyの中みていないと気づけないかもしれないですね。

これ以外はあまり困ることが無かったので、公式のMachine Learning Professional Exam Guideを見たらいいと思います。

Databricks Certified Data Engineer Professional

https://www.databricks.com/learn/certification/data-engineer-professional
こちらの試験はMachine Learningに比べると難しかったです。
難しかった点は現実的なケース問題が出てくるため、長文かつ悩みの本質を捉えないと回答できない項目がありました。僕は1時間くらい時間を余らせたのですが、不器用な頃の自分だと時間ギリギリだったと思います。問題に齧り付いてはいけない形式の問題です。
(あと、日和って日本語で受けました。カッコよく英語で受かりたかったですが、多分2~5%くらい点数が良くでたかもしれないです。)

必要な知識を何から得たか

  • 普段の業務(80%)
  • Databricks AcademyのMachine Learning系の動画ほとんど(20%)
  • Udemyちょっと

必要な知識は何か(特に記憶にあるもの)

  • job/secret/table等あらゆるものに関する権限管理
  • SparkとDeltalakeを中心とした最適化
  • Streaming処理
  • その他公式doc通り

逆に出なかった質問(2025/06時点)

  • Unity Catalog系
  • bundle系
  • Liquid clustering (Z-Orderで問われます、MLの方も)

参考になるドキュメントや出題項目

これは範囲が広すぎるので、特定のドキュメントや記事をピックアップするのを難しいと感じています。
公式Documentはかなり幅広く読む必要があります。
あとは普段の業務にStreamingがなければその点は逆に強めに学習する必要があります。
静的なテーブルと動的(Streaiming)なテーブル同士のjoinの挙動、遅延されるデータの取り扱いを定義するwatermark等は1題は必ず出題されると思います。

まとめ

結構勉強になりましたが、個人的にはもう1、2年経ってから受けてもいいかなと思ったりもしています。
特に Unity Catalog後の世界はMLもData Engineeringも大きく変わりすぎていて、出題内容の10~30%くらいはもうレガシーの内容もありました。(とか言って1、2年後も同じことを言っている可能性はありますが)
しかし残りの70%以上は技術の根幹に関わるところです。特に機械学習に関する基礎知識であったり、Deltalakeの基礎であったり。この点は知識を総浚いできて改めて良かったと感じています。

いいねいただけると励みになります。お読みいただきありがとうございました。

Discussion