Architecting for the
Google Cloud Platform
Márton Kodok / @martonkodok
Google Developer Expert at REEA.net - Targu Mures
November 2018 - Bucharest, Romania
● Geek. Hiker. Do-er.
● Among the Top3 romanians on Stackoverflow 127k reputation
● Google Developer Expert on Cloud technologies
● Crafting Web/Mobile backends at REEA.net
● BigQuery/Redis and database engine expert
● Active in mentoring and IT community
Slideshare: martonkodok
Twitter: @martonkodok
StackOverflow: pentium10
GitHub: pentium10
Architecting for the Google Cloud Platform @martonkodok
About me
REEA.net uses GCP
Build on the same infrastructure
that powers Google
Google Cloud Platform (GCP)
Compute Big Data
BigQuery
Cloud
Dataflow
Cloud
Dataproc
Cloud
Datalab
Cloud
Pub/Sub
Genomics
Storage & Databases
Cloud
Storage
Cloud
Bigtable
Cloud
Datastore
Cloud SQL
Cloud
Spanner
Persistent
Disk
Machine Learning
Cloud Machine
Learning
Cloud
Vision API
Cloud
Speech API
Cloud Natural
Language API
Cloud
Translation
API
Cloud
Jobs API
Data
Studio
Cloud
Dataprep
Cloud Video
Intelligence
API
Advanced
Solutions Lab
Compute
Engine
App
Engine
Kubernetes
Engine
GPU
Cloud
Functions
Container-
Optimized OS
Identity & Security
Cloud IAM
Cloud Resource
Manager
Cloud Security
Scanner
Key
Management
Service
BeyondCorp
Data Loss
Prevention API
Identity-Aware
Proxy
Security Key
Enforcement
Internet of Things
Cloud IoT
Core
Transfer
Appliance
Google Cloud Platform (GCP)
Developer Tools
Cloud SDK
Cloud
Deployment
Manager
Cloud Source
Repositories
Cloud
Tools for
Android Studio
Cloud Tools
for IntelliJ
Cloud
Tools for
PowerShell
Cloud
Tools for
Visual Studio
Container
Registry
Google Plug-in
for Eclipse
Cloud Test
Lab
Networking
Virtual
Private Cloud
Cloud Load
Balancing
Cloud
CDN
Cloud
Interconnect
Cloud DNS
Cloud
Network
Cloud
External IP
Addresses
Cloud
Firewall Rules
Cloud
Routes
Cloud VPN
Management Tools
Stackdriver Monitoring Logging
Error
Reporting
Trace
Debugger
Cloud
Deployment
Manager
Cloud
Endpoints
Cloud
Console
Cloud
Shell
Cloud Mobile
App
Cloud
Billing API
Cloud
APIs
Cloud
Router
Dedicated
Interconnect
Container
Builder
1. Virtual Machines - Compute Engine
2. Autoscaling - Design for resiliency, scalability, and disaster recovery
3. Database layer - Identification of storage needs and mapping
4. Serverless - App Engine platform - Cloud Functions
5. Microservices architecture
6. Task Queues - Cloud Pub/Sub - DataFlow
7. Data warehouse in the Cloud
8. Practical use cases
9. Qwiklabs + Coursera
Agenda
Architecting for the Google Cloud Platform @martonkodok
Compute Engine - Virtual Machine in the Cloud
Compute Engine
VM
Cloud
Firewall Rules
Ephemeral IP
Labels/Tags: “http-server”
Allow port 80 for: “http-server”
VM details
Architecting for the Google Cloud Platform @martonkodok
Compute Engine - General Use
Architecting for the Google Cloud Platform @martonkodok
iOS
Android
Web
Mobile Services REST API
Compute Engine
Flexibility for Every Workload
● High-Performance, Scalable VMs
● Custom Machine Types
● Persistent Disks or SSD (local or
network based)
● Per-second billing
● Networking
● Firewall
● Load balancing
● Compliance & Security
Architecting for the Google Cloud Platform @martonkodok
Creating a VM instance steps
Creating a VM instance
Architecting for the Google Cloud Platform @martonkodok
Creating a VM instance - Choosing Region, Instance type
Architecting for the Google Cloud Platform @martonkodok
Creating a VM instance - OS, boot disk, Network
Architecting for the Google Cloud Platform @martonkodok
VM instances
Architecting for the Google Cloud Platform @martonkodok
Virtual Private Network - Firewall rules
Architecting for the Google Cloud Platform @martonkodok
Cost savings! “Preemptible” - spot instances
Architecting for the Google Cloud Platform @martonkodok
● Much lower price than normal instances
● For fault-tolerant applications
● Can withstand possible instance losses
● Runs for maximum 24 hours
● Might not be always available
● Instance templates
Good for: Nodes (eg: Elasticsearch)
Batch jobs
Worker async tasks
Pricing: ranges 3-4 times lower price
Architecting for the Google Cloud Platform @martonkodok
Autoscaling
with Instance Groups
Creating an Instance Group
Architecting for the Google Cloud Platform @martonkodok
Setting Autoscaling settings
Architecting for the Google Cloud Platform @martonkodok
Instance Group - Autoscaling - Health Check
@martonkodok
Template VM
Startup script
Instance tag
Instance Group
Region + Zone(s)
Autoscaling
Health check
Instance Group
Backend
Compute Engine
Multiple Instances
Region 2 - EU
eu-west 1-b
eu-west 1-a
Instance Group
Backend
Compute Engine
Multiple Instances
Region 1 - US
us-east 1-b
us-west 1-a
Instance Group
Backend
Compute Engine
Multiple Instances
Cloud Load
Balancing
Cloud
Firewall Rules
Health
Check
Allow port 80 for: “http-server”
Static IP Failover
Downscale on no load after 10 minute
@martonkodok
Architecting for the Google Cloud Platform @martonkodok
Example Architecture for Autoscaling
CMS with Autoscaling
@martonkodok
ZONE B
Content Server
Compute Engine
Autoscaling
ZONE A
Content Server
Compute Engine
Autoscaling
Static Content
Cloud Storage
Dynamic Content
Cloud SQL
Publisher
Cloud Load
Balancing
Cloud
DNS
Architecting for the Google Cloud Platform
DB multiple zones and Master/Slave topology
Architecting for the Google Cloud Platform @martonkodok
Zone 1
us-central 1-a
Instance Group
Compute Engine
Web Applications
Master
Cloud SQL
Zone 2
us-central 1-f
Instance Group
Compute Engine
Web Applications
Read Replica
Cloud SQL
ReplicationCloud Load
Balancing
Architecting for the Google Cloud Platform @martonkodok
Data layer design
Database Mapping
Architecting for the Google Cloud Platform @martonkodok
Architecting for the Google Cloud Platform @martonkodok
Serverless
Meet Serverless
Architecting for the Google Cloud Platform @martonkodok
Meet Serverless
serverless data center depicted
Architecting for the Google Cloud Platform @martonkodok
Serverless is about maximizing elasticity, cost
savings, and agility of cloud computing.
@martonkodok
Architecting for the Google Cloud Platform @martonkodok
Serverless types
Architecting for the Google Cloud Platform @martonkodok
Platforms Triggered Code
App Engine - application platform
Architecting for the Google Cloud Platform @martonkodok
API
Compute Engine
Virtual Machines
API
App Engine
Cloud Endpoints
API
Container Engine
Kubernetes Services
Multiple
Clients
API Requests
Cloud Load
Balancing
● Fully managed serverless application
platform
● Scale your applications seamlessly from
zero to planet scale
● Automatically scales depending on your
application traffic
● Traffic Splitting (app versions, A/B tests,
incremental rollouts)
● Standard vs Flexible environments
Python, Java, Node.js, Go, Ruby, PHP, .NET
App Engine
Architecting for the Google Cloud Platform @martonkodok
Instance startup time Minutes Seconds
Maximum request timeout 60 minutes 60 seconds
Background threads Yes Yes, with restrictions
SSH debugging Yes No
Writing to local disk Yes, ephemeral (disk initialized on VM
startup)
No
Modifying the runtime Yes (through Dockerfile) No
Supports installing third-party binaries Yes No
Pricing Based on usage of vCPU, memory, and
persistent disks
Based on instance hours
Flexible Standard
Architecting for the Google Cloud Platform @martonkodok
Message Queue systems: Task Queue
Cloud Pub/Sub
Task Queue - Message Queue systems
Architecting for the Google Cloud Platform @martonkodok
Static Content
Cloud Storage
Dynamic Content
Cloud SQL
Dynamic Content
Cloud Datastore
Front End App
App Engine
Autoscaling
Task
Queues
Memcache
Batch App
App Engine
Autoscaling
Cloud Load
Balancing
Cloud
DNS
Workers
Compute Engine
Autoscaling
Task Queues
Architecting for the Google Cloud Platform @martonkodok
Slides: https://www.slideshare.net/martonkodok
Title: Architectural Patterns - Message Queues
Push queues
● Put with delays
Pull queues
● Ability to “tag”
● Lease multiple eg: gameboard
updated, game id as tag.
Architecting for the Google Cloud Platform @martonkodok
Cloud Functions
Cloud Functions
On-Premises Servers
ApplicationEvent Sourcing
Frontend
Platform Services
Metrics / Logs/
Streaming
Event
Triggered
Cloud
Functions
Triggered Code
Architecting for the Google Cloud Platform @martonkodok
Result
Cloud Functions - Event-driven - FaaS
Architecting for the Google Cloud Platform @martonkodok
● Simplest way to run your code in the cloud - just deploy
● Automatically scales, highly available and fault tolerant
● No servers to provision, manage, patch or update
● Pay only while your code runs
● Connects and extends cloud services (In alpha: Go and Java)
● Node 8.11
● Support for async/await
● Python 3.7.1
● Flask microframework
Functions: your gateway to GCP Services
Architecting for the Google Cloud Platform @martonkodok
Access 20+ Google services from GCF
BigQuery
Cloud
Pub/Sub
Cloud
Storage
Cloud
Bigtable
Cloud
Datastore
Cloud
Spanner
Cloud Machine
Learning
Cloud Vision
API
Cloud Speech
API
Cloud Natural
Language API
Cloud
Translation API
Stackdriver
Services
Applications
Firebase
APIs
Assistant
Why is adopting serverless hard today?
Architecting for the Google Cloud Platform @martonkodok
Dependencies
Constrained runtimes,
frameworks and packages
Multi-Cloud
Unable to run your workloads
on-prem, in the cloud or on a
third party service provider
1 2
New Serverless containers on GCF (EAP)
Architecting for the Google Cloud Platform @martonkodok
Serverless containers
Fully managed
BYO workloads
Pay for use
Alpha invitations
coming later this year
Sign up:
g.co/serverlesscontainers
● No servers to provision or manage
● Scales with usage (ready every time for viral spikes or #BlackFriday)
● Availability and fault tolerance built in
● No orchestration in code
● Never pay for idle
● Decoupled: APIs as contracts (Abstract away the complexity)
● Monitored: Metrics and logging are a universal right
● Think concurrent, stateless, queue, stream based.
Serverlessmeans
Architecting for the Google Cloud Platform @martonkodok
Architecting for the Google Cloud Platform @martonkodok
Reporting & Analytics moved to the Cloud
Legacy Reporting System
App
Cloud Load
Balancing
NGINX
Compute Engine
10GB PD
2 1
Database Service (Master/Slave)
Compute Engine
10GB PD
4 1
Compute Engine
10GB PD
4 1
Compute Engine
10GB PD
4 1
Report & Share
Business Analysis
Scheduled
Tasks
Batch Processing
Compute Engine
Multiple Instances
Architecting for the Google Cloud Platform @martonkodok
Serverless Reporting System
App
Cloud Load
Balancing
NGINX
Compute Engine
10GB PD
2 1
Database Service (Master/Slave)
Compute Engine
10GB PD
4 1
Compute Engine
10GB PD
4 1
Compute Engine
10GB PD
4 1
Report & Share
Business Analysis
Scheduled
Tasks
Batch Processing
Compute Engine
Multiple Instances
BigQuery Data Studio
Report & Share
Business Analysis
Architecting for the Google Cloud Platform @martonkodok
Architecting for the Google Cloud Platform @martonkodok
Analytics-as-a-Service - Data Warehouse in the Cloud
Scales into Petabytes on Managed Google Infrastructure (US or EU zone)
SQL 2011 + Javascript UDF (User Defined Functions)
Familiar DB Structure (table, views, struct, nested, JSON)
Integrates with Google Sheets + Cloud Storage + Pub/Sub connectors
Decent pricing (queries $5/TB, storage: $20/TB cold: $10/TB) *June 2018
Open Interfaces (Web UI, BQ command line tool, REST, ODBC)
What is BigQuery?
Architecting for the Google Cloud Platform @martonkodok
Columnar storage (max 10 000 columns in table)
Large files for loading: 5TB (CSV or JSON)
UDF in Javascript or SQL
Append-only tables prefered (DML syntax available)
Day column partitioned tables (select * from t where day=’2018-01-01’)
Rich SQL 2011: JSON,IP,Math,RegExp,Geocode,Window functions
Modern data types: Record, Nested, Struct, Array
BigQuery: Convenience of SQL
Architecting for the Google Cloud Platform @martonkodok
“ Data needs to be processed in
multiple services.
How can we pipe to multiple places?
Architecting for the Google Cloud Platform @martonkodok
Architecting for The Cloud
On-Premises Servers
Event Sourcing
Frontend
Platform Services
Analyze
Metrics / Logs/
Streaming
Cloud Storage
Architecting for the Google Cloud Platform @martonkodok
Cloud
Dataflow
Process
BigQuery
Cloud SQL
Stream
Batch
Data
Studio
Third-Party
Tools
“ We have our app outside of GCP.
How can we use the benefits of BigQuery?
Architecting for the Google Cloud Platform @martonkodok
Data Pipeline Integration at REEA.net
Analytics Backend
BigQuery
On-Premises Servers
Pipelines
FluentD
Event Sourcing
Frontend
Platform Services
Metrics / Logs/
Streaming
Development
Team
Data Analysts
Report & Share
Business Analysis
Tools
Tableau
QlikView
Data Studio
Internal
Dashboard
Database
SQL
Application
ServersServers
Cloud Storage
archive
Load
Export
Replay
Standard
Devices
HTTPS
Architecting for the Google Cloud Platform @martonkodok
● SQL language to run BigData queries
● run raw ad-hoc queries (either by analysts/sales or Devs)
● no more throwing away-, expiring-, aggregating old data
● no provisioning/deploy
● no running out of resources
● no more focus on large scale execution plan
Our benefits using BigQuery
Architecting for the Google Cloud Platform @martonkodok
Summary: When to use what
Architecting for the Google Cloud Platform @martonkodok
App Engine
Unit of computing
is apps
HTTP
request/response
Large scalable
backends
Cloud Functions
Smallest unit of
computing
Event driven
architecture
Connect & extend
services
Serverless add-on
Run functions, apps
& containers on
GKE
Full portability of
your artifacts
Run on your own
cluster
Thank you.
Slides available on: slideshare.net/martonkodok
Reea.net - Integrated web solutions driven by creativity to deliver
projects.

More Related Content

PDF
GDG Heraklion - Architecting for the Google Cloud Platform
PDF
Google Cloud Technologies Overview
PDF
Google Cloud Connect Korea - Sep 2017
PPTX
MongoDB Days UK: Run MongoDB on Google Cloud Platform
PDF
Google Cloud: Data Analysis and Machine Learningn Technologies
PDF
Google Cloud Platform Update
PDF
Google Cloud Platform - Cloud-Native Roadshow Stuttgart
PDF
Introduction to Google's Cloud Technologies
GDG Heraklion - Architecting for the Google Cloud Platform
Google Cloud Technologies Overview
Google Cloud Connect Korea - Sep 2017
MongoDB Days UK: Run MongoDB on Google Cloud Platform
Google Cloud: Data Analysis and Machine Learningn Technologies
Google Cloud Platform Update
Google Cloud Platform - Cloud-Native Roadshow Stuttgart
Introduction to Google's Cloud Technologies

What's hot (20)

PDF
Getting started with Google Cloud Training Material - 2018
PPTX
Understanding cloud with Google Cloud Platform
PDF
How to Puppetize Google Cloud Platform - PuppetConf 2014
PDF
Google Cloud Platform Solutions for DevOps Engineers
PPTX
Introduction to Google Cloud Services / Platforms
PDF
Google Cloud - Scale With A Smile (Dec 2014)
PDF
A Tour of Google Cloud Platform
PDF
Cloud-Native Roadshow Google Cloud Platform - Los Angeles
PDF
Getting Started on Google Cloud Platform
PPTX
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
PPT
Google cloud platform
PDF
Google Cloud Platform - Service Glossary
PDF
Google cloud platform introduction
PDF
Google Cloud Platform as a Backend Solution for your Product
PPTX
Cloud computing by Google Cloud Platform - Presentation
PDF
Google I/O 2016 Recap - Google Cloud Platform News Update
PDF
Scale with a smile with Google Cloud Platform At DevConTLV (June 2014)
PDF
What is Google Cloud Platform - GDG DevFest 18 Depok
PDF
Google Cloud Platform
PPTX
Google cloud platform
Getting started with Google Cloud Training Material - 2018
Understanding cloud with Google Cloud Platform
How to Puppetize Google Cloud Platform - PuppetConf 2014
Google Cloud Platform Solutions for DevOps Engineers
Introduction to Google Cloud Services / Platforms
Google Cloud - Scale With A Smile (Dec 2014)
A Tour of Google Cloud Platform
Cloud-Native Roadshow Google Cloud Platform - Los Angeles
Getting Started on Google Cloud Platform
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google cloud platform
Google Cloud Platform - Service Glossary
Google cloud platform introduction
Google Cloud Platform as a Backend Solution for your Product
Cloud computing by Google Cloud Platform - Presentation
Google I/O 2016 Recap - Google Cloud Platform News Update
Scale with a smile with Google Cloud Platform At DevConTLV (June 2014)
What is Google Cloud Platform - GDG DevFest 18 Depok
Google Cloud Platform
Google cloud platform
Ad

Similar to GDG DevFest Romania - Architecting for the Google Cloud Platform (20)

PDF
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud Platformon
PDF
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
PDF
Deep dive into serverless on Google Cloud
PDF
Keepler | What's next on Google Cloud?
PDF
Solving enterprise challenges through scale out storage & big compute final
PDF
Where should I run my code? Serverless, Containers, Virtual Machines and more
PDF
Google Cloud Fundamentals
PPTX
Gdsc muk - innocent
PDF
A fresh look at Google’s Cloud by Mandy Waite
PDF
From localhost to the cloud: A Journey of Deployments
PDF
Serverless Computing with Python
PDF
Google Cloud Networking Deep Dive
PDF
Introduction to Google Cloud Platform
PDF
Exploring Google APIs with Python
PDF
Serverless computing with Google Cloud
PDF
Serverless orchestration and automation with Cloud Workflows
PDF
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
PDF
Building what's next with google cloud's powerful infrastructure
PPTX
Google Cloud Platform (GCP) At a Glance
PDF
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...
6. DISZ - Webalkalmazások skálázhatósága a Google Cloud Platformon
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
Deep dive into serverless on Google Cloud
Keepler | What's next on Google Cloud?
Solving enterprise challenges through scale out storage & big compute final
Where should I run my code? Serverless, Containers, Virtual Machines and more
Google Cloud Fundamentals
Gdsc muk - innocent
A fresh look at Google’s Cloud by Mandy Waite
From localhost to the cloud: A Journey of Deployments
Serverless Computing with Python
Google Cloud Networking Deep Dive
Introduction to Google Cloud Platform
Exploring Google APIs with Python
Serverless computing with Google Cloud
Serverless orchestration and automation with Cloud Workflows
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Building what's next with google cloud's powerful infrastructure
Google Cloud Platform (GCP) At a Glance
Bogdan botea, dmitry nefedkin no fiddle, efficient development on the googl...
Ad

More from Márton Kodok (20)

PDF
AI Agents with Gemini 2.0 - Beyond the Chatbot
PDF
Gemini 2.0 and Vertex AI for Innovation Workshop
PDF
Function Calling with the Vertex AI Gemini API
PDF
Vector search and multimodal embeddings in BigQuery
PDF
BigQuery Remote Functions for Dynamic Mapping of E-mobility Charging Networks
PDF
Build applications with generative AI on Google Cloud
PDF
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
PDF
DevBCN Vertex AI - Pipelines for your MLOps workflows
PDF
Discover BigQuery ML, build your own CREATE MODEL statement
PDF
Cloud Run - the rise of serverless and containerization
PDF
BigQuery best practices and recommendations to reduce costs with BI Engine, S...
PDF
Vertex AI - Unified ML Platform for the entire AI workflow on Google Cloud
PDF
Vertex AI: Pipelines for your MLOps workflows
PDF
Cloud Workflows What's new in serverless orchestration and automation
PDF
Serverless orchestration and automation with Cloud Workflows
PDF
Serverless orchestration and automation with Cloud Workflows
PDF
BigdataConference Europe - BigQuery ML
PDF
DevFest Romania 2020 Keynote: Bringing the Cloud to you.
PDF
BigQuery ML - Machine learning at scale using SQL
PDF
Applying BigQuery ML on e-commerce data analytics
AI Agents with Gemini 2.0 - Beyond the Chatbot
Gemini 2.0 and Vertex AI for Innovation Workshop
Function Calling with the Vertex AI Gemini API
Vector search and multimodal embeddings in BigQuery
BigQuery Remote Functions for Dynamic Mapping of E-mobility Charging Networks
Build applications with generative AI on Google Cloud
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
DevBCN Vertex AI - Pipelines for your MLOps workflows
Discover BigQuery ML, build your own CREATE MODEL statement
Cloud Run - the rise of serverless and containerization
BigQuery best practices and recommendations to reduce costs with BI Engine, S...
Vertex AI - Unified ML Platform for the entire AI workflow on Google Cloud
Vertex AI: Pipelines for your MLOps workflows
Cloud Workflows What's new in serverless orchestration and automation
Serverless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud Workflows
BigdataConference Europe - BigQuery ML
DevFest Romania 2020 Keynote: Bringing the Cloud to you.
BigQuery ML - Machine learning at scale using SQL
Applying BigQuery ML on e-commerce data analytics

Recently uploaded (20)

PDF
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
PPTX
Streamlining Project Management in the AV Industry with D-Tools for Zoho CRM ...
PDF
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
PDF
CapCut PRO for PC Crack New Download (Fully Activated 2025)
PPTX
Chapter_05_System Modeling for software engineering
PDF
Workplace Software and Skills - OpenStax
PDF
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
PPTX
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
PPTX
Lecture 5 Software Requirement Engineering
PPTX
Human-Computer Interaction for Lecture 2
PPTX
Chapter 1 - Transaction Processing and Mgt.pptx
PDF
Top 10 Project Management Software for Small Teams in 2025.pdf
PPTX
ROI Analysis for Newspaper Industry with Odoo ERP
PDF
IT Consulting Services to Secure Future Growth
PDF
Website Design & Development_ Professional Web Design Services.pdf
PDF
Cloud Native Aachen Meetup - Aug 21, 2025
PPTX
Human Computer Interaction lecture Chapter 2.pptx
PDF
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
PPTX
string python Python Strings: Literals, Slicing, Methods, Formatting, and Pra...
PDF
MiniTool Power Data Recovery 12.6 Crack + Portable (Latest Version 2025)
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
Streamlining Project Management in the AV Industry with D-Tools for Zoho CRM ...
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
CapCut PRO for PC Crack New Download (Fully Activated 2025)
Chapter_05_System Modeling for software engineering
Workplace Software and Skills - OpenStax
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
Lecture 5 Software Requirement Engineering
Human-Computer Interaction for Lecture 2
Chapter 1 - Transaction Processing and Mgt.pptx
Top 10 Project Management Software for Small Teams in 2025.pdf
ROI Analysis for Newspaper Industry with Odoo ERP
IT Consulting Services to Secure Future Growth
Website Design & Development_ Professional Web Design Services.pdf
Cloud Native Aachen Meetup - Aug 21, 2025
Human Computer Interaction lecture Chapter 2.pptx
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
string python Python Strings: Literals, Slicing, Methods, Formatting, and Pra...
MiniTool Power Data Recovery 12.6 Crack + Portable (Latest Version 2025)

GDG DevFest Romania - Architecting for the Google Cloud Platform

  • 1. Architecting for the Google Cloud Platform Márton Kodok / @martonkodok Google Developer Expert at REEA.net - Targu Mures November 2018 - Bucharest, Romania
  • 2. ● Geek. Hiker. Do-er. ● Among the Top3 romanians on Stackoverflow 127k reputation ● Google Developer Expert on Cloud technologies ● Crafting Web/Mobile backends at REEA.net ● BigQuery/Redis and database engine expert ● Active in mentoring and IT community Slideshare: martonkodok Twitter: @martonkodok StackOverflow: pentium10 GitHub: pentium10 Architecting for the Google Cloud Platform @martonkodok About me
  • 3. REEA.net uses GCP Build on the same infrastructure that powers Google
  • 4. Google Cloud Platform (GCP) Compute Big Data BigQuery Cloud Dataflow Cloud Dataproc Cloud Datalab Cloud Pub/Sub Genomics Storage & Databases Cloud Storage Cloud Bigtable Cloud Datastore Cloud SQL Cloud Spanner Persistent Disk Machine Learning Cloud Machine Learning Cloud Vision API Cloud Speech API Cloud Natural Language API Cloud Translation API Cloud Jobs API Data Studio Cloud Dataprep Cloud Video Intelligence API Advanced Solutions Lab Compute Engine App Engine Kubernetes Engine GPU Cloud Functions Container- Optimized OS Identity & Security Cloud IAM Cloud Resource Manager Cloud Security Scanner Key Management Service BeyondCorp Data Loss Prevention API Identity-Aware Proxy Security Key Enforcement Internet of Things Cloud IoT Core Transfer Appliance
  • 5. Google Cloud Platform (GCP) Developer Tools Cloud SDK Cloud Deployment Manager Cloud Source Repositories Cloud Tools for Android Studio Cloud Tools for IntelliJ Cloud Tools for PowerShell Cloud Tools for Visual Studio Container Registry Google Plug-in for Eclipse Cloud Test Lab Networking Virtual Private Cloud Cloud Load Balancing Cloud CDN Cloud Interconnect Cloud DNS Cloud Network Cloud External IP Addresses Cloud Firewall Rules Cloud Routes Cloud VPN Management Tools Stackdriver Monitoring Logging Error Reporting Trace Debugger Cloud Deployment Manager Cloud Endpoints Cloud Console Cloud Shell Cloud Mobile App Cloud Billing API Cloud APIs Cloud Router Dedicated Interconnect Container Builder
  • 6. 1. Virtual Machines - Compute Engine 2. Autoscaling - Design for resiliency, scalability, and disaster recovery 3. Database layer - Identification of storage needs and mapping 4. Serverless - App Engine platform - Cloud Functions 5. Microservices architecture 6. Task Queues - Cloud Pub/Sub - DataFlow 7. Data warehouse in the Cloud 8. Practical use cases 9. Qwiklabs + Coursera Agenda Architecting for the Google Cloud Platform @martonkodok
  • 7. Compute Engine - Virtual Machine in the Cloud Compute Engine VM Cloud Firewall Rules Ephemeral IP Labels/Tags: “http-server” Allow port 80 for: “http-server” VM details Architecting for the Google Cloud Platform @martonkodok
  • 8. Compute Engine - General Use Architecting for the Google Cloud Platform @martonkodok iOS Android Web Mobile Services REST API Compute Engine Flexibility for Every Workload ● High-Performance, Scalable VMs ● Custom Machine Types ● Persistent Disks or SSD (local or network based) ● Per-second billing ● Networking ● Firewall ● Load balancing ● Compliance & Security
  • 9. Architecting for the Google Cloud Platform @martonkodok Creating a VM instance steps
  • 10. Creating a VM instance Architecting for the Google Cloud Platform @martonkodok
  • 11. Creating a VM instance - Choosing Region, Instance type Architecting for the Google Cloud Platform @martonkodok
  • 12. Creating a VM instance - OS, boot disk, Network Architecting for the Google Cloud Platform @martonkodok
  • 13. VM instances Architecting for the Google Cloud Platform @martonkodok
  • 14. Virtual Private Network - Firewall rules Architecting for the Google Cloud Platform @martonkodok
  • 15. Cost savings! “Preemptible” - spot instances Architecting for the Google Cloud Platform @martonkodok ● Much lower price than normal instances ● For fault-tolerant applications ● Can withstand possible instance losses ● Runs for maximum 24 hours ● Might not be always available ● Instance templates Good for: Nodes (eg: Elasticsearch) Batch jobs Worker async tasks Pricing: ranges 3-4 times lower price
  • 16. Architecting for the Google Cloud Platform @martonkodok Autoscaling with Instance Groups
  • 17. Creating an Instance Group Architecting for the Google Cloud Platform @martonkodok
  • 18. Setting Autoscaling settings Architecting for the Google Cloud Platform @martonkodok
  • 19. Instance Group - Autoscaling - Health Check @martonkodok Template VM Startup script Instance tag Instance Group Region + Zone(s) Autoscaling Health check Instance Group Backend Compute Engine Multiple Instances Region 2 - EU eu-west 1-b eu-west 1-a Instance Group Backend Compute Engine Multiple Instances Region 1 - US us-east 1-b us-west 1-a Instance Group Backend Compute Engine Multiple Instances Cloud Load Balancing Cloud Firewall Rules Health Check Allow port 80 for: “http-server” Static IP Failover
  • 20. Downscale on no load after 10 minute @martonkodok
  • 21. Architecting for the Google Cloud Platform @martonkodok Example Architecture for Autoscaling
  • 22. CMS with Autoscaling @martonkodok ZONE B Content Server Compute Engine Autoscaling ZONE A Content Server Compute Engine Autoscaling Static Content Cloud Storage Dynamic Content Cloud SQL Publisher Cloud Load Balancing Cloud DNS Architecting for the Google Cloud Platform
  • 23. DB multiple zones and Master/Slave topology Architecting for the Google Cloud Platform @martonkodok Zone 1 us-central 1-a Instance Group Compute Engine Web Applications Master Cloud SQL Zone 2 us-central 1-f Instance Group Compute Engine Web Applications Read Replica Cloud SQL ReplicationCloud Load Balancing
  • 24. Architecting for the Google Cloud Platform @martonkodok Data layer design
  • 25. Database Mapping Architecting for the Google Cloud Platform @martonkodok
  • 26. Architecting for the Google Cloud Platform @martonkodok Serverless
  • 27. Meet Serverless Architecting for the Google Cloud Platform @martonkodok
  • 28. Meet Serverless serverless data center depicted Architecting for the Google Cloud Platform @martonkodok
  • 29. Serverless is about maximizing elasticity, cost savings, and agility of cloud computing. @martonkodok Architecting for the Google Cloud Platform @martonkodok
  • 30. Serverless types Architecting for the Google Cloud Platform @martonkodok Platforms Triggered Code
  • 31. App Engine - application platform Architecting for the Google Cloud Platform @martonkodok API Compute Engine Virtual Machines API App Engine Cloud Endpoints API Container Engine Kubernetes Services Multiple Clients API Requests Cloud Load Balancing ● Fully managed serverless application platform ● Scale your applications seamlessly from zero to planet scale ● Automatically scales depending on your application traffic ● Traffic Splitting (app versions, A/B tests, incremental rollouts) ● Standard vs Flexible environments Python, Java, Node.js, Go, Ruby, PHP, .NET
  • 32. App Engine Architecting for the Google Cloud Platform @martonkodok Instance startup time Minutes Seconds Maximum request timeout 60 minutes 60 seconds Background threads Yes Yes, with restrictions SSH debugging Yes No Writing to local disk Yes, ephemeral (disk initialized on VM startup) No Modifying the runtime Yes (through Dockerfile) No Supports installing third-party binaries Yes No Pricing Based on usage of vCPU, memory, and persistent disks Based on instance hours Flexible Standard
  • 33. Architecting for the Google Cloud Platform @martonkodok Message Queue systems: Task Queue Cloud Pub/Sub
  • 34. Task Queue - Message Queue systems Architecting for the Google Cloud Platform @martonkodok Static Content Cloud Storage Dynamic Content Cloud SQL Dynamic Content Cloud Datastore Front End App App Engine Autoscaling Task Queues Memcache Batch App App Engine Autoscaling Cloud Load Balancing Cloud DNS Workers Compute Engine Autoscaling
  • 35. Task Queues Architecting for the Google Cloud Platform @martonkodok Slides: https://www.slideshare.net/martonkodok Title: Architectural Patterns - Message Queues Push queues ● Put with delays Pull queues ● Ability to “tag” ● Lease multiple eg: gameboard updated, game id as tag.
  • 36. Architecting for the Google Cloud Platform @martonkodok Cloud Functions
  • 37. Cloud Functions On-Premises Servers ApplicationEvent Sourcing Frontend Platform Services Metrics / Logs/ Streaming Event Triggered Cloud Functions Triggered Code Architecting for the Google Cloud Platform @martonkodok Result
  • 38. Cloud Functions - Event-driven - FaaS Architecting for the Google Cloud Platform @martonkodok ● Simplest way to run your code in the cloud - just deploy ● Automatically scales, highly available and fault tolerant ● No servers to provision, manage, patch or update ● Pay only while your code runs ● Connects and extends cloud services (In alpha: Go and Java) ● Node 8.11 ● Support for async/await ● Python 3.7.1 ● Flask microframework
  • 39. Functions: your gateway to GCP Services Architecting for the Google Cloud Platform @martonkodok Access 20+ Google services from GCF BigQuery Cloud Pub/Sub Cloud Storage Cloud Bigtable Cloud Datastore Cloud Spanner Cloud Machine Learning Cloud Vision API Cloud Speech API Cloud Natural Language API Cloud Translation API Stackdriver Services Applications Firebase APIs Assistant
  • 40. Why is adopting serverless hard today? Architecting for the Google Cloud Platform @martonkodok Dependencies Constrained runtimes, frameworks and packages Multi-Cloud Unable to run your workloads on-prem, in the cloud or on a third party service provider 1 2
  • 41. New Serverless containers on GCF (EAP) Architecting for the Google Cloud Platform @martonkodok Serverless containers Fully managed BYO workloads Pay for use Alpha invitations coming later this year Sign up: g.co/serverlesscontainers
  • 42. ● No servers to provision or manage ● Scales with usage (ready every time for viral spikes or #BlackFriday) ● Availability and fault tolerance built in ● No orchestration in code ● Never pay for idle ● Decoupled: APIs as contracts (Abstract away the complexity) ● Monitored: Metrics and logging are a universal right ● Think concurrent, stateless, queue, stream based. Serverlessmeans Architecting for the Google Cloud Platform @martonkodok
  • 43. Architecting for the Google Cloud Platform @martonkodok Reporting & Analytics moved to the Cloud
  • 44. Legacy Reporting System App Cloud Load Balancing NGINX Compute Engine 10GB PD 2 1 Database Service (Master/Slave) Compute Engine 10GB PD 4 1 Compute Engine 10GB PD 4 1 Compute Engine 10GB PD 4 1 Report & Share Business Analysis Scheduled Tasks Batch Processing Compute Engine Multiple Instances Architecting for the Google Cloud Platform @martonkodok
  • 45. Serverless Reporting System App Cloud Load Balancing NGINX Compute Engine 10GB PD 2 1 Database Service (Master/Slave) Compute Engine 10GB PD 4 1 Compute Engine 10GB PD 4 1 Compute Engine 10GB PD 4 1 Report & Share Business Analysis Scheduled Tasks Batch Processing Compute Engine Multiple Instances BigQuery Data Studio Report & Share Business Analysis Architecting for the Google Cloud Platform @martonkodok
  • 46. Architecting for the Google Cloud Platform @martonkodok
  • 47. Analytics-as-a-Service - Data Warehouse in the Cloud Scales into Petabytes on Managed Google Infrastructure (US or EU zone) SQL 2011 + Javascript UDF (User Defined Functions) Familiar DB Structure (table, views, struct, nested, JSON) Integrates with Google Sheets + Cloud Storage + Pub/Sub connectors Decent pricing (queries $5/TB, storage: $20/TB cold: $10/TB) *June 2018 Open Interfaces (Web UI, BQ command line tool, REST, ODBC) What is BigQuery? Architecting for the Google Cloud Platform @martonkodok
  • 48. Columnar storage (max 10 000 columns in table) Large files for loading: 5TB (CSV or JSON) UDF in Javascript or SQL Append-only tables prefered (DML syntax available) Day column partitioned tables (select * from t where day=’2018-01-01’) Rich SQL 2011: JSON,IP,Math,RegExp,Geocode,Window functions Modern data types: Record, Nested, Struct, Array BigQuery: Convenience of SQL Architecting for the Google Cloud Platform @martonkodok
  • 49. “ Data needs to be processed in multiple services. How can we pipe to multiple places? Architecting for the Google Cloud Platform @martonkodok
  • 50. Architecting for The Cloud On-Premises Servers Event Sourcing Frontend Platform Services Analyze Metrics / Logs/ Streaming Cloud Storage Architecting for the Google Cloud Platform @martonkodok Cloud Dataflow Process BigQuery Cloud SQL Stream Batch Data Studio Third-Party Tools
  • 51. “ We have our app outside of GCP. How can we use the benefits of BigQuery? Architecting for the Google Cloud Platform @martonkodok
  • 52. Data Pipeline Integration at REEA.net Analytics Backend BigQuery On-Premises Servers Pipelines FluentD Event Sourcing Frontend Platform Services Metrics / Logs/ Streaming Development Team Data Analysts Report & Share Business Analysis Tools Tableau QlikView Data Studio Internal Dashboard Database SQL Application ServersServers Cloud Storage archive Load Export Replay Standard Devices HTTPS Architecting for the Google Cloud Platform @martonkodok
  • 53. ● SQL language to run BigData queries ● run raw ad-hoc queries (either by analysts/sales or Devs) ● no more throwing away-, expiring-, aggregating old data ● no provisioning/deploy ● no running out of resources ● no more focus on large scale execution plan Our benefits using BigQuery Architecting for the Google Cloud Platform @martonkodok
  • 54. Summary: When to use what Architecting for the Google Cloud Platform @martonkodok App Engine Unit of computing is apps HTTP request/response Large scalable backends Cloud Functions Smallest unit of computing Event driven architecture Connect & extend services Serverless add-on Run functions, apps & containers on GKE Full portability of your artifacts Run on your own cluster
  • 55. Thank you. Slides available on: slideshare.net/martonkodok Reea.net - Integrated web solutions driven by creativity to deliver projects.