会社でBigueryの研修会があり、それをきっかけにGCPに興味を持ったので、目標としてGoogleの認定資格であるProfessional Data Engineer合格を掲げて勉強しました。
無事、合格できたのでその時の備忘録を共有したいと思います。
私のスペック
- 社会人6年目 今年で30歳
- GCPは完全に未経験(業務、趣味共に)
- 機械分析、データ分析は業務未経験(大学で少しRをやっていた程度)
- AWSは前職で使っていた
- AWSはDeveloper Associate, DevOps Professionalを所有(素人じゃないじゃん!とツッコミが来そうですが、GCPは初心者なので目をつむってください汗)
なぜ取得しようと思ったか
- 漫然と勉強するよりも、なにか目標があったほうが勉強しやすいから
- Google認定資格のProfessionalの中でも、対象となるサービスの範囲が狭くなる分、簡単そうだと感じたから
- 自チームでDWHやデータパイプラインの構築、他チームでデータ分析基盤を構築していたりするので、自分の業務に今後つながる可能性もありそうだったから
Professional Data Engineerという資格とは
公式のドキュメントでは以下のように書かれています。
Professional Data Engineer は、データを収集、変換、公開して、データに基づく意思決定ができるようにします。Data Engineer には、セキュリティとコンプライアンス、スケーラビリティと効率性、信頼性と忠実性、柔軟性とポータビリティに特に重点を置いて、データ処理システムの設計、構築、運用化、保護、モニタリングを行う能力が必要です。また、既存の機械学習モデルの活用、デプロイ、継続的なトレーニングもできなければなりません。
出題は以下の項目となっています。
- データ処理システムの設計
- データ処理システムの構築と運用化
- 機械学習モデルの運用化
- ソリューションの品質保証
私見ですが、以下の事柄の知識、理解をテストされていると思います。
特に、下記1~4が主要な範囲だと思っています。
- データ分析基盤におけるGCPサービスの違いを理解、その上でのサービス選択
- オンプレからGCPサービスへの移行方法
- データ分析基盤におけるGCPサービスを使用したベストアーキテクチャ
- データ分析基盤系GCPサービスの仕様、使い方
- 機械学習の基礎的知識
- セキュリティ
対象となる主なGCPサービスは以下のものがあります。
- DB/DWH系
- Cloud Bigtable
- Cloud Datastore
- BigQuery
- Cloud SQL
- Cloud Spanner
- データバイプライン構築
- Cloud Pub/Sub
- Cloud DataFlow
- ジョブの自動化
- Cloud Scheduler
- Google App Engineのcronサービス
- Cloud Composer
- ビッグデータ分析/処理
- Dataproc
- 機械学習系
- Vision API
- AutoML Vision
- Bigquery ML
- データ移行系
- Data Transfer Service
- Transfer Appliance
- その他
- Cloud Storage
- Google Compute Engine
- Cloud Dataprep
勉強期間と勉強時間
3週間(平日は1日30分~1時間、週末は1日3時間くらい)
合計 30時間程度
勉強方法
[Google 認定資格] GCP Professional Data Engineer の勉強方法と対策 の記事をを参考にしつつ、以下の順で勉強を進めました。
上記サイトは試験対策に役立つ情報が結構書いてあるので、読むことを強くおすすめします。
- 気になるQwiklabsを受けてみる
- GCPの入門書を読む
- Courseraの講座を受講
- Googleが用意している模擬試験を受ける
- Udemyで練習問題を解く
1. 気になるQwiklabsを受けてみる
会社のBigQueryの研修を受けたことで、一ヶ月無料で受けられる権利を得ていたので受けました。が、あまり意味なかったです。
後述するCouseraでも、Dataエンジニア関連のQwiklabsは受けることになるので、個人的にはCouseraを受ければ十分だと思っています。
2. GCPの入門書を読む
GCP未経験者だったのでGCPの教科書という本を読みました。AWSとの違いが書いてあり、AWS経験者としては良書でした。
3. Courseraの講座を受講
Googleが開講している講座を受講しました。https://www.coursera.org/professional-certificates/gcp-data-engineering の中の https://www.coursera.org/learn/gcp-big-data-ml-fundamentals です。
内容は非常に良かったのですが、私は2点ミスを犯しました。
ないとは思いますが、お気をつけください。
- 無料期間(1週間?)を過ぎてしまい、支払い(5,000円強)が発生した
勝手に1ヶ月くらいだと勘違いしていました。完全に無知でしたorz - 日本語の講座の存在に気づかなかった
私が受講した講座は英語字幕のものでした。
技術的内容も初見が多かったのでしんどかったです。
https://www.coursera.org/specializations/gcp-data-machine-learning-jp の中に
https://www.coursera.org/learn/gcp-big-data-ml-fundamentals-jp
という日本語字幕の講座があることに途中から気づき、こちらに乗り換えました。
日本語字幕により私比5倍くらい効率がUPしました。
4. Googleが用意している模擬試験を受ける
Professional Data Engineer模擬試験です。
わからないこと、気になることは答え合わせ時に調べました。
あまり良く覚えていませんが、正解は6割くらいだったと思います。
(実際の試験より易しめなので注意が必要)
Hadoop, Sparkに関する知識が欠如していることが判明したので、図書館で関連する本を借りて該当する章を読みました。
ビッグデータ解析の現在と未来: Hadoop,NoSQL,深層学習からオープンデータまでの本は端的だけど、技術的な記述がしっかりあって参考になりました。
Hadoop, Spark, Beam辺りはGCPのDataproc, DataFlow辺りと強く紐付いているので、大凡の理解をしておくことをおすすめします。
5. Udemyで練習問題を解く
https://www.udemy.com/share/103vOABEQcdF1QTXQ=/
の問題を購入し、解きました。基本的に英語なので、Google翻訳にお世話になりながら取り組みました。
テストは4回分あるのですが、全て解くことを強くおすすめします。
直接的に同じ問題は少なかった(1~2割くらい)ですが、考え方が同じ問題を含めると4~5割くらいはカバーされていたと思います。
私は4回中3回が6割台、1回だけ8割台でした。
解説が丁寧なので、点数よりも、答え合わせ時の確認が重要だと思います。
問題や解答で、気になるところ、不明点は公式のドキュメントや、ネット記事、実際の画面を確認することで実際の試験を解く上での知識はかなりカバーできてくると思います。(むしろそれをしないと合格点には届かないイメージです。)
感想
データ分析基盤系のGCPサービスの知識だけでなく、オープンソースや機械学習の基礎的知識もほんの少しではありますが、触れられたのは良かったです。
あくまで印象ですが、AWSと比べてフルマネージドだったり学習がしやすかったり(Couseraで講座の開講、BigQueryのパブリックデータセット)して使いやすそうだなーと思いました。
BigQuery中心に今後は業務で触れてみたいなーと思っています。
合格すると、(黒のパーカー or リュックサック) + ステッカーがもらえるようです。
私は黒のパーカーを選択しました。
幸いなことにも、事後報告にも関わらず快く会社からは受験費用が出るようです。値段も安くない($200)ので助かります。
次の目標はAWSかGCPのCloud Architect Professionalの資格にチャレンジしたいと思います。