Google Cloud for App Developers

Overview

This class will teach how to use Google Cloud platform to develop reliable, scalable applications.

What you will learn:

  • Understand Google Cloud’s features
  • Using Compute Engine
  • Using Google Cloud Storage

Audience:

Developers, Architects

Duration:

Three to four days, depending on coverage

Format:

  • Lectures and hands-on labs. (50%, 50%)

Prerequisites

  • Development background
  • Familiarity with Java and/or Python is highly recommended

Lab environment

Zero Install: There is no need to install any software on students’ machines!

Students will need the following

  • A Google Cloud account is required
  • A reasonably modern laptop
  • Unrestricted connection to the Internet. Laptops with overly restrictive VPNs or firewalls may not work properly

Detailed outline

Google Cloud Overview

  • Benefits of Cloud computing
  • Google Cloud ecosystem overview
  • Lab: Getting up and running in Google Cloud

Google Compute Engine

  • Compute Engine Intro
  • Understanding different types of computing resources
  • Using compute resources effectively
  • Customizing a cloud VM
  • Lab: Using Compute Engine

Cloud Storage

  • Bringing data into the cloud
  • Data storage options in Google cloud
  • Ingesting Data
  • Scheduling data ingestion
  • Lab: Ingesting Data into Google Cloud

Google Big Query

  • Introduction to Big Query
  • Running queries on Big Query
  • Labs

Python Development in Google Cloud

  • Introduction to Google Colab
  • Introduction to Datalab
  • Running Jupyter notebooks
  • Installing packages in Cloud Datalab
  • Labs

Google Cloud SQL

  • Introduction to Cloud SQL
  • Use cases and applications
  • Loading Data into Google Cloud SQL
  • Creating tables
  • Running queries
  • Lab

Google App Engine

  • Introduction to Google App Engine
  • Scaling up and out
  • Writing apps
  • Labs

Google Cloud Pub/Sub

  • About Pub/Sub
  • Pub/Sub concepts and architecture
  • Publishing an Event Stream to Cloud Pub/Sub
  • Consuming an Event Stream from Cloud Pub/Sub

Cloud Bigtable

  • Big Table Intro
  • Big Table architecture
  • Designing Tables
  • Designing the Row Key
  • Inserting data into Cloud Bigtable
  • Querying from Cloud Bigtable
  • Labs

Real-time data streaming

  • Streaming fundamentals
  • Apache Beam / Cloud Dataflow
  • Running the Pipeline in the Cloud
  • Real-Time Stream Processing
  • Streaming in Java Dataflow
  • Executing the Stream Processing
  • Real-Time Dashboard
  • Labs

Large Scale Data Processing with Apache Spark (4th day)

  • Spark Intro
  • Spark Shell
  • Loading and analyzing data in Spark
  • Spark Dataframes
  • Spark SQL
  • Labs

Google Dataproc (4th day)

  • Introduction to Google Dataproc
  • Running Hadoop, Spark clusters using DataProc
  • Labs

Final Workshop (Time Permitting)

  • Students will work in teams
  • We will do a real-world problem using Google Cloud
  • And present their work to the class