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