はじめに
- GCP Professional Data Engineerに合格することが出来たため、 記憶が新鮮なうちに自省を含めて、レポートを書きます。
- (モチベーションとしては、第一問目からいくつかの問題を見た後で「想定できていなかった問題が多く、やばい。」という心境だったので、この反省を受験する前の自分に伝えたい気持ちで書いています。)
- この記事で述べたいポイントは、**「試験ガイドに書かれている出題範囲はしっかり確認しよう。」と、「組織や状況を仮で想定して、自分が実際の現場に導入し運用する思考訓練しよう。」**になります。
受験前の自分の知識・経験
- GCP Professional Data Engineerを受けるに当たって、この試験に対する自分の強みと弱みは、以下の状態でした。
- 強み:
- 実際にデータエンジニアとして、GCP上でBigQuery/Dataprocを使って、DWH/DMを構築。パイプラインとしてはCloud Composerを利用。BIとしてはData Studioを利用。
- 過去にはデータアナリストとして、機械学習を学び、レコメンドロジックの作成とチューニングを実施。
- 弱み:
- 基幹システムやプロダクトのデータベースなどからバッチベースでのデータ取得は行うが、リアルタイムのパイプラインには詳しくない。
- したがって、Pub/Sub, Dataflow, BigTable, DataStoreは勉強が必要。
- 基幹システムやプロダクトのデータベースなどからバッチベースでのデータ取得は行うが、リアルタイムのパイプラインには詳しくない。
- 強み:
受験までに自分が勉強したこと
※ただし、自分の勉強では、本番で全50問中20問くらいしか自信をもって回答できませんでした。
- 準備:
- Googleで「Google Cloud Data Engineer」で検索すると、過去に合格された方々の有益な勉強方法の記事が出てきます。それを参考に、まずは問題を解き、理解の足りない分野の勉強を進めます。
- 試験対策の問題集:
- 理解のためにインプットした情報:
-
Data Engineering, Big Data and ML on Google Cloud 日本語版専門講座
- この教材では、バッチ系サービス(BigQuery/Dataproc)、ストリーミング系サービス(Pub/Sub,Dataflow/BigTable)、機械学習系サービス(ML API, BigQueryML, AutoML)など、多くの関連サービスを体系的に勉強でき、Qwiklabsを通して実際にハンズオンを行い、理解を深められます。
-
[Google 認定資格] GCP Professional Data Engineer の勉強方法と対策
- ”合格するための tips”、”確認テスト”のポイントを元に、公式ドキュメントを読みました。
-
GCP Professional Data Engineerに2週間で合格したので勉強方法を共有
- ”試験のテクニック的なものを紹介”が、Tipsとして参考になります。
-
Google Cloud™ の Professional Data Engineer に合格しました
- "模擬試験を受けてみて", "いよいよ本試験"の部分で、その他キャッチアップすべき領域が述べられているので、このポイントを元に、公式ドキュメントを読みました。
-
Data Engineering, Big Data and ML on Google Cloud 日本語版専門講座
本番試験を受けた後の反省
- 実際に1回目を受験する必要があると思います。というのも、自分の勉強した内容と実際の試験とのGAPがどの程度あるのか?は分からないと思います。1回目は、結果は問わない気持ちで受験した方が良いと思います。
- ただし、次回に活かすために、テスト中に自分が何を理解できていないのか?については、2時間ギリギリまで時間をかけて把握することが重要です。
- **※ただし、自分の勉強では、本番で全50問中20問くらいしか自信をもって回答できませんでした。と書いたように、自分の勉強方法だけだと不足していた内容がありました。それは、実践的な観点です。例えば、試験ガイド**でも、説明されています。一例を挙げると、以下のような項目になります。
- システムの可用性とフォールト トレランス
- ストレージの費用とパフォーマンス
- データ復旧の計画、実施、ストレステスト(フォールト トレランス、失敗したジョブの再実行、遡及的再分析の実行)
- この一例を具体的な文言に変換すると、以下のような観点を把握しておく必要があるということです。
- 各サービスで可用性を高めるにはどうするのか?(注:でもコストは最適化してください。)
- 各サービスでのバックアップはどうするのか?(注:でもコストは最適化してください。)
- 各サービスでのエラー処理をどうするのか?(例:データ欠損、未整備データの混入などのケースで。)
- そのため、上記の問題に答えるためには、実際の状況を想定しながら、各サービスの公式ドキュメントを読んで答えを考える。という思考訓練が必要になるはずです。自分は、今回の受験時に、この部分をまともに取り組めていなかった。という反省です。
- 今思えば、模擬試験や想定問題で問われていたのは、各サービスとその適切な"ユースケース”の正しい組み合わせが多くだと思います。そのため、現場では当たり前に出てくる問題を、疎かにしていたのだと思いました。
おわりに
- この試験を受けてみて得た気づきや反省をもとに、さらに勉強を続けていく。というのがこの試験の意義である。と思いました。