はじめに
最近は GCP の利用例をよく聞くようになり、個人的にも採用する機会が増えました。
この記事では、GCP 関連のオススメ書籍 6 冊を以下の分類で紹介していきます。
- GCP の概要
- GCP におけるデータ分析
- その他 (コンテナ・Firestore)
GCP の概要
GCPの教科書
難易度: ★
2020 年 7 月現在、GCP の概要を掴むための最も初心者向けと思われる書籍が『GCPの教科書』です。
GCP の概要から入り、GCE や Cloud SQL といった基本サービスの使い方が画面キャプチャとともに丁寧に説明されています。
GKE などの高度なサービスについても多くが簡単に紹介されているので、GCP のサービスの概要を掴むのにちょうどいいです。
Google Cloud Platform エンタープライズ設計ガイド
難易度: ★★
こちらも GCP の概要を掴むのに適した書籍です。『GCPの教科書』とは異なり、各サービスの試し方というよりも、どのような設定が可能で、どのような設計パターンがあるのかがまとめられています。
AWS などのパブリッククラウドを全くさわったことがない方が 1 冊目として読むには難しいと思われます。
AWS や Azure を使った経験があるなど、クラウドインフラの知識を持っている人であれば、ある程度すらすら内容を理解することができそうです。
GCP におけるデータ分析
Google Cloud Platformではじめる機械学習と深層学習
難易度: ★
機械学習の概要や scikit-learn、Tensorflow、Keras のサンプルコードから入り、GCP における機械学習システムの構築方法について解説されています。
Dataflow、BigQuery、ML Engine などのサービスの概要から具体的な使い方まで書かれています。
前処理からフロー制御して学習済みモデルを保存するまでの流れでどのサービスを使うかなどもまとまっており、最近しばしば耳にする “MLOps” について学び始める最初の一歩として非常にオススメです。
GoogleCloudPlatform 実践 機械学習基礎開発MachineLearning/データ分析
難易度: ★★
こちらは 2020 年 2 月の書籍のため、GCP におけるデータ分析についてかなり新しい情報を得ることができます。
AutoML や BigQueryML といったサービスでどこまで簡単に機械学習ができるのか、非常にわかりやすく書かれています。
Preemptible VM の活用や Dataflow で使うことになる Apache Beam などの解説もあり、GCP やデータ分析について多少知識がある方がもう一歩掘り下げて学ぶのに適した本になっています。
また、最後には「プロダクションのための機械学習」という章があり、“MLOps” という単語が書かれている数少ない書籍になります。
その他 (コンテナ・Firestore)
GCPの教科書II 【コンテナ開発編】 KubernetesとGKE、Cloud Run、サービスメッシュを詳解
難易度: ★★
GCP におけるコンテナ関連サービスについてまとめた書籍で、GCR、Cloud Build、Kubernetes、GKE、Cloud Run、Istio について解説されています。
2020 年 7 月現在、Cloud Run や Istio について書かれている日本語の書籍は (Amazon で検索した限りでは) 他にありません。
Docker や Kubernetes の解説は専門の書籍と比べると簡易的なので、それらは別途勉強したうえで、GCP におけるコンテナ活用について学ぶ際に活用するとよさそうです。
実践Firestore
難易度: ★★
GCP というより Firebase のサービスとして認知されている場合が多いと思いますが、関連書籍として紹介させていただきます。
“実践” というだけあり、Firestore の基本概念にとどまらず、オフライン時の挙動、セキュリティルール、データモデリングなど、Firestore を実務で使ううえで必要になる知識が非常に幅広く書かれています。
セキュリティルールやデータモデリングについては、BaaS や NoSQL をあまり使ったことがない方には非常に勉強になる内容になっています。
また、Firestore が Backend for Frontend のような特性を持つことや、CQRS といった高度な設計例についても書かれており、今後 GCP や Firebase を使ったシステムを開発する際の根本的な設計方針を考えるうえでも非常に参考になる書籍でした。
Firestore を使うという方は是非一度読んでみることをオススメします。