GCP Professional Data Engineerに合格してきたので勉強方法等書く

先日こちらの記事でProfessional Cloud Architect取ってきたばかりですが、今度は「Google Cloud Certified - Professional Data Engineer 」も取ってきました。

yomon.hatenablog.com

こちらの記事も合格を目標としています。本当はしっかり地道に勉強した方が良いです。

基本情報

受験者(私)の情報

  • 1週間ほど前にGCP Professional Cloud Architect合格してきた
  • 勉強前の模試結果は5割(正解部分もわかってないとこあり)
  • 勉強期間1週間(※)
  • 勉強時間22時間

※たまたま、2ヶ月ほど前にこの本を読んでいました。これ読んでなかったら流石に1週間では範囲網羅できなかったです。

試験ページ

2時間 50問の試験です。ちょうど全部の問題を見直しできる程度の時間が余りました。 cloud.google.com

勉強方法

模擬試験(2時間)

Professional Cloud Architectの時と違い、Professional Data Engineerは全く情報無いので、模擬試験がとても重要です。解説や関連リンクもついてきます。完全に理解するまで何度もやって調べた方が良いです。

cloud.google.com

以下、模擬試験からサービスを抜き出しましたが、認定試験に関連するだろうサービスもこの辺りです。(これが全部では無いです)

最近のこういった試験の傾向なのかもしれませんが、大小のケーススタディの問題ばかりです。サービスの用途や特徴を知っているのが第一で、その上で場合によってはサービスの細かな仕様を考慮しつつ、課題に対する最適解を選択するような問題がほとんどな気がしました。

  • BigQuery
  • Cloud Storage
  • Transfer Appliance
  • Storage Transfer Service
  • Cloud Spanner
  • Cloud Bigtable
  • Cloud Dataprep
  • Cloud Pub/Sub
  • Cloud Dataproc
  • Cloud Dataflow
  • Cloud Machine Learning
  • Cloud Vision API
  • Data Studio
  • Security一般
  • IAM

Cloud Machine Learning(8時間)

ここは触ってみたレベルの経験すら無い分野だったので、用語から全くわからない。ということでこの本をやりました。

時間制限があったので、頭を抱えながら4章までやりましたが、それでもレビュー高評価の意味が良くわかる良書です。色々調べたり、デバックして動き確認したり一番時間かけました。

本の内容もそうですが、読み進める過程で調べた用語や理論が役に立ちました。

その上でこのチュートリアルを一通りやりました。もちろん全部完全にわかったなんて思っていないですが、ポイントはつかめたと思います。

花のデータセットを使用した画像の分類  |  Cloud Machine Learning Engine(Cloud ML Engine)  |  Google Cloud

GCPはドキュメントと合わせて実際に動かせるチュートリアルがあるのが助かります。それを動かすに十分な無料枠や初期クレジット、Cloud Shellでやれば自分の環境も汚れません。

Dataflow(2時間)

次に良くわかってなかったDataflow。Dataprocと何が違うの?というレベルでした。

これも情報が少ない。探し回ったあげく、中身であるApache Beamで調べた方がいいんじゃないかと思ったところ、やっといい資料に巡り会えました。

BigTable(4時間)

BigTableアーキテクチャなどが詳しく出ているのでよく読みます。自分はたまたまCassandra触る機会があったので少し理解が早かったかもです。

https://cloud.google.com/bigtable/docs/concepts?hl=ja

そしてチュートリアルはこちら。なんですが、このチュートリアルBigTableの操作とかほとんど無くてあまり試験とは関係ないのでスキップでもいいと思います。

OpenTSDB を使用した Cloud Platform 上での時系列データのモニタリング

私なんかは見てすぐ「面白そう!」とやりはじめてしまい、関係無いエラーにはまり無駄に2時間くらい使ってしまいました。本筋では無いですが、エラー対応も書いておきます。

BigTableチュートリアルエラー対応

heapsterからOpenTSDBへの書き込み処理でこんなエラーが出ます。

E0618 04:21:56.356844 1 reflector.go:190] k8s.io/heapster/metrics/util/util.go:51: Failed to list *v1.Node: nodes is forbidden: User "system:serviceaccount:default:heapster-opentsdb" cannot list nodes at the cluster scope: Unknown user "system:serviceaccount:default:heapster-opentsdb"

権限無いので、 deployments/heapster.yaml に以下を追加してやります。

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: heapster-opentsdb-view
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: heapster-opentsdb
    namespace: default

そしてCreate。

kubectl create -f deployments/heapster.yaml

これでチュートリアルは無事に終わると思います。

BigQuery(2時間)

BigQueryですが、2時間しかかけなかったですが、主力サービスであること考えれば、もっとここに時間かけるべきでした。

こういった時にSlideShare助かります。この3部作は目を通して損は無いかと思います。

Google Cloud ベストプラクティス:Google BigQuery 編 - 01 : BigQuery とは?

Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出

Google Cloud ベストプラクティス:Google BigQuery 編 - 03 : パフォーマンスとコストの最適化

あとは時間のある限り、これを読みながら動かします。

Concepts  |  BigQuery  |  Google Cloud

その他の勉強(4時間)

無駄に時間を使ってしまいました(特にBigTableチュートリアル)。他に何を勉強するかをざっと流して書きます。

サービス毎の「概念」を読む

GCPのドキュメントには、サービス毎に概念という項目があるので、それを熟読します。動かしたことないものは少しでも触って動かしてみます。

データエンジニアの試験では特に以下のカテゴリが該当しそうです。

  • ビッグデータ
  • Cloud AI
  • ストレージとデータベース
  • データ移行
  • Identity & Security

cloud.google.com

沢山あるストレージ関連の選択肢

このフローは理解しておくべきです。

cloud.google.com

学習済みAIのAPIを叩く

Vision API等の学習済みAPIには、実際にAPIを簡単に使ってみることができるものがあります。これは一回ずつでも使ってみておくべきだと思います。

こことか、  Cloud Natural Language  |  Google Cloud

こことか、 

Vision API - Image Content Analysis  |  Google Cloud

所感

傾向

模擬試験のような小さなケーススタディがほとんどです。正攻法で勉強した方が良いと思います。

セキュリティ重要

ビッグデータやAIみたいな目立つ部分に目がいきますが、セキュリティの考え方を問われる問題も多かったです。

GCP Professional Cloud Architectとの比較

難易度は同じくらいなのでは無いでしょうか。範囲が狭まる分、内容は深くなっています。

日本語

翻訳の精度が高いと思われ、日本語で迷うことはありませんでした。

予想得点

得点出ないのでわからないですが、7〜7.5割な気がします。わりとギリギリだったのではと自己分析です。最後のボタン押す時に少し緊張しました。

Google凄いなあ

昔にこの本を読んだ時には遠い未来の話な気がしましたが、いつの間にか現実になっていて凄いなあ。と思いました。

Googleを支える技術 ?巨大システムの内側の世界 (WEB+DB PRESSプラスシリーズ)

Googleを支える技術 ?巨大システムの内側の世界 (WEB+DB PRESSプラスシリーズ)

認定証

https://api.accredible.com/v1/frontend/credential_website_embed_image/certificate/11645432?key=bea6add42a04832fe020e6ce7984a6d068955e9bdd256bb8133e88be9a3a8a2b

プレゼント

またプレゼントもらえるみたいです。ロゴの文字が違うだけです。 f:id:yomon8:20180620113335p:plain