Professional Data Engineer試験対策マニュアル。出題傾向・勉強方法

記事タイトルとURLをコピーする

G-gen の杉村です。Google Cloud (旧称 GCP) 認定資格である Professional Data Engineer 試験 は、 Google Cloud でのデータエンジニアリングに関する難関資格です。 本投稿では試験の合格に役立つ情報を記載します。

試験の 利用規約 において、試験の内容を公開することは禁じられています。
本投稿では試験問題そのものを書くこと等はせず、主にサービスカットで 合格するためには何を知っているべきか を中心に記載します。

"何を知っているべきか" が分かっていれば Google Cloud サービスの公式ドキュメント等を中心とした学習の方向性が決まりますし、何より 実務にも応用可能 だと思います。

なお、このブログ投稿に記載されていることで試験範囲を全てカバーできているわけでは無い点、ご了承ください。
公式で発表されている 試験ガイド模擬試験 などもぜひ駆使して、学習を進めてください。

Professional Data Engineer

はじめに

本投稿の想定読者

本投稿は以下のような方向けです。

  • Professional Data Engineer 試験を受けるために勉強をしており出題傾向を知りたい
  • Google Cloud サービスやデータエンジニアリングの基本的な知識は把握済みだ
  • 近日中に試験を受けようと思っているので、最後の勉強をしている

また前提知識として Google Cloud の基礎知識を押さえるため、 Associate Cloud Engineer 試験 相当の知見は持っておいたほうが良いと言えます。
以下のブログ投稿も参考にしてください。

blog.g-gen.co.jp

Professional Data Engineer 試験の難易度

当試験の難易度としては、比較的高いと言えます。
"応用情報技術者試験" 程度の基本的な IT の知識があり、かつ Google Cloud をある程度業務で使用した経験があるのがベースです。
これに加えて、データモデリングや ETL/ELT 、分散アーキテクチャのデータ処理基盤や RDBMS 、 NoSQL データベースなどのデータ関連技術要素に関する基礎知識は必要です。

これらの基礎知識のうえに、 Google Cloud のデータベースやデータ処理に関するサービスや、サービスの組み合わせなどについて、書籍や公式ドキュメントで理解しておくことが必要です。
特に BigQuery や Dataflow といった Google の "推し" サービスに関する知識は必須です。

また普段から Google Cloud の公式ブログやドキュメントのベストプラクティスに目を通し、 Google の考えるクラウドらしいクラウドの使い方が何か、という一種の哲学を頭にインプットしておくことが重要です。 これに加えて、当記事で追加の学習をすれば、合格は難しくないと言えます。

推奨の勉強法

  1. Associate Cloud Engineer を先に取得する
  2. 書籍や各社のブログ等で Google Cloud のデータ関係サービスの概要を理解する。特に以下のサービスに着目する
    • BigQuery / BigTable / Dataprep / Data Fusion / Dataflow / Pub/Sub / Cloud Composer / Dataproc / AutoML * / BigQuery ML
  3. 試験ガイド を読み出題範囲を理解する
  4. 当記事を読み、出題傾向を理解する
  5. 把握した試験範囲・出題傾向をもとに勉強する
  6. 模擬試験 を受け、足りない知識を認識して、ギャップを埋める勉強をする

出題傾向

当記事ではこれ以降、どのような試験問題が出るか、出題傾向を解説していきます。 わからない言葉や知らない用語があれば、公式ドキュメントなどを辿り、十分知識をつけてください。 そのように勉強すれば、試験に合格できるのに加え、実践的な知識となるでしょう。

組織 / IAM

IAM の 継承 の概念や、リソースとの紐づけ、またリソース階層 (組織/フォルダ/プロジェクト/各リソース...) などはしっかり押さえておきましょう。
以下のブログ記事をぜひ参考にしてください。

blog.g-gen.co.jp

また IAM と BigQuery の組み合わせの応用として 承認されたビュー 機能の活用も問われます。
この機能については、ドキュメントを読んでしっかり理解しておきましょう。

オペレーションスイート

Cloud Monitoring の基本機能のほか、カスタム指標のとり方についてもしっかり理解しておきましょう。

blog.g-gen.co.jp

Google の指標のリファレンス ページで Compute Engine や Pub/Sub 、 Cloud Storage などデータエンジニアリングにおいて重要なサービス群のメトリクスは、簡単でいいので眺めておくと良いです。

もちろん全てを覚える必要はありませんが、「 Pub/Sub からデータを読み取って Cloud Storage にデータを書き込むパイプライン」があるとして、これを Cloud Monitoring で監視するときにどうするか、などのシチュエーションを想像してください。
Pub/Sub のメトリクスのうち subscription/num_undelivered_messages が上昇していると「処理の遅延等が起きている」とみなせるはずです。

データパイプライン

Dataflow

当試験で BigQuery と並んで最重要サービスの一つが、 Apache Beam のマネージドサービスである Dataflow です。
リアルタイム処理とバッチ処理を両方扱うことができ、少なくとも一回 (at-least-once) が原則である Pub/Sub からのデータを受け取って、一回限り (exactly-once) の処理を実現します。
マネージドサービスであるため、自動的なスケールイン・スケールアウトなどを実現することで低い運用負荷が実現されます。

...この試験の世界では、上記のようなデータパイプラインの実現にあたって Dataflow はほぼ必須コンポーネントとして捉えてよいです。

そこを押さえた上で、 Apache Beam のプログラミング モデル の理解と適切な選択ができるようにします。

Pub/Sub

多くの問題文、または選択肢で Dataflow とセットで Pub/Sub が現れます。
Apache Kafka を Pub/Sub で置き換える、という定番パターンが多く出題されます。

Cloud Composer

Google Cloud のサービスを活用してジョブオーケストレーションを行う場合は、 Cloud Composer が選択肢です。
ジョブ実行ツールとしては他に Cloud Scheduler がありますが、 Cloud Composer は DAG (有向非巡回グラフ) によるジョブの前後関係の管理やモニタリングの面で強みがあります。
データパイプラインでは Cloud Composer に強みがあると言えるでしょう。

Dataproc

Hadoop/Spark のマネージドサービスである Dataproc も頻出です。
ドキュメント でクラスタ構成や管理運用方法について押さえておきましょう。

Dataprep / Data Fusion

Dataprep / Data Fusion は類似したサービスです。
いずれも GUI でデータ収集・変換のパイプラインを構築できるマネージドサービスです。
ノーコーディングでデータパイプラインを構築できるのが魅力です。

何ができるサービスなのかを把握しておきます。

データベース

BigQuery

なんといっても Google Cloud の誇るフルマネージドなデータウェアハウスである BigQuery は、当然ながら当試験で最も出題される分野の一つです。
以下をしっかり押さえておきましょう。

  • BigQuery の特質 (列志向, 分散アーキテクチャ, スロット...)
  • パーティショニング・クラスタリング
  • 権限管理 (IAM, 承認されたビュー...)
  • バックアップの実現方法
  • タイムトラベル機能
  • ロケーション選択にてマルチリージョンを選択する意味
  • 特殊な使い方
    • ストリーミングインサート (メリット/デメリット)
    • コスト管理 (スキャン量, Reservation...)

以下のブログ記事も参考にしてください。

blog.g-gen.co.jp

blog.g-gen.co.jp

blog.g-gen.co.jp

BigTable

BigTable のユースケースを押さえておきます。
スキーマ設計 についてはドキュメントをよく読み込んでおき、特に大事な行キーの設計はよく理解しておきます。

モニタリング、本番用ワークロードと分析用ワークロードの分離、クラスタ拡張、 Key Visualizer...など管理運用面も把握しておきましょう。

その他のデータベース・移行

Cloud SQL, Datastore, Spanner, BigTable, BigQuery... それぞれのユースケース、できること、できないことを把握しておきましょう。
どういったユースケースでどの DB を選ぶのか、問われたら答えられるようにしておきます。
以下に、役に立つであろう表を掲載します。

名称 Cloud SQL Datastore (Firestore) Cloud Spanner Cloud BigTable BigQuery
概要 マネージドRDB。MySQL/PostgreSQL/SQL Serverが利用可能 NoSQL。現在ではFirebaseサービス群に統合 無制限のスケーリング、グローバル利用が可能なリレーショナルデータベース NoSQL。高スループット・高スケーラビリティ データウェアハウス。分析目的のカラムナDB
ユースケース 一般的なアプリ。RDB Web, モバイル,ゲーム等でKVSがマッチする場合 金融, ヘルスケア, ゲーム等でグローバルなトランザクション 時系列データ, 購入履歴, IoT等、高スループット・高スケーラビリティ SQLでの分析やELT
種類 RDB NoSQL (ドキュメントDB) RDB かつ分散アーキ NoSQL (ワイドカラム) データウェアハウス (表形式・列志向)
クエリ方法 SQL API もしくはSQLライク言語 SQL API SQL
トランザクション △ (※) ✕ (1行のみ可)

(※) Firestore と Datastore で仕様が違い、制限もいくつかある

その他に、各データベースでバックアップやデータのエクスポート、 DR の実現方法などの運用管理手法を押さえておきます。

データ移行というテーマも扱われます。
オンプレミスから Google Cloud への大規模なデータ移行には Transfer Appliance という選択肢もあり、どのようなシチュエーションやどのくらいの規模のデータにこのサービスが適しているのかは頭の片隅に入れておきます。

機械学習 (AI/ML)

Cloud Data Engineer 試験には機械学習系のサービスが頻出です。
試験ガイド に出てくるサービスは一通り、概要を理解する必要があります。

また Google Cloud 特有の知識というよりも、機械学習の一般的な用語や基礎知識については理解している必要があります。
ラベリング、トレーニング、モデル、推論、回帰、分類 (Classification) 、クラスタリング、リコメンデーション、教師あり学習、教師なし学習、混同行列、過学習とのその対策、など基礎的な用語を押さえます。

これらの用語の意味がわからない場合は、検索すれば情報がたくさん出てくるので、一通り理解して自分の言葉で説明できるくらいにはなっておきましょう。

Dialogflow, Vision API や Speech API といった Google が提供する API 系機械学習サービスと Auto ML 、AI Platform などの違いを理解しましょう。

また BigQuery ML も出題範囲です。
使い方やある程度の仕組みは理解している必要があります。

その他

受験環境

当社メンバーの受験環境に関する実体験が以下の記事で紹介されています。
ぜひご参照ください。

blog.g-gen.co.jp

blog.g-gen.co.jp

杉村 勇馬 (記事一覧) (Facebook)

クラウドソリューション部 部長

元・警察官という経歴を持つ現・エンジニア。クラウド管理運用やネットワークに知見。AWS 12冠、Google Cloud認定資格11冠。

2022年6月現在、ハマっているものはピーナッツくんの新しいアルバム Walk Through the Stars 。