Cloud Spanner

Rohit Gupta, Solutions Engineer @rohitforcloud Today’s goals

Provide a brief history of Spanner at

Provide an explanation of Cloud Spanner

Do a demo! Built on the same infrastructure that powers Google

Always Fastest, most Robust, easy to Super-flexible Superior available reliable use Big Data compute economics storage network solutions

GCP Regions

Netherlands 3 Finland Belgium 2 London 3 Montreal 3 3 Frankfurt Oregon 2 Iowa 3 4 Tokyo California 3 3 3 3 N Virginia S Carolina Taiwan Mumbai 3 3

SJC (JP, HK, SG) 2013 2 Singapore

São Paulo 3 Sydney 3 Leased and owned fiber

Edge points of presence (>100)

# Future region and number of zones

# Current region and number of zones Background Why build Spanner? Technical infrastructure at Google It’s 2005... Google’s needs

Horizontally Scaling Database

ACID Transactions with global consistency

No downtime! Overview What is Cloud Spanner?

What is Cloud Spanner?

Google’s mission-critical scalable relational Database Service

Fully managed, database service with global scale

Traditional relational semantics: schemas, ACID transactions, SQL

Automatic, synchronous replication within and across regions for availability

Battle-tested within Google for 5+ yrs (AdWords, GooglePlay) How does it compare? Open standards

Standard SQL (ANSI 2011)

Encryption, Audit logging, Identity and Access Management

Client libraries in popular languages (Java, Python, Go, Node.js, etc.)

JDBC driver Types of workloads

Transactional Scale-out Global data plane Database consolidation

Companies that have Companies currently Companies and/or Companies that outgrown their sharding databases developers building store their business single-instance because they need applications that data in multiple RDBMS and have more read or write have global data database products already moved to throughput than can and need strong with variable NoSQL solution, but be placed on a single consistency maintenance need transactional node overheads and consistency, or they capabilities and need are looking to move consolidation of their to a scalable solution data Architecture overview

Cloud Spanner instance

Zone 1 Zone 2 Zone 3

DB 1 DB 1 DB 1

DB 2 DB 2 DB 2 Data replication

Update

Zone 1 Zone 2 Zone 3

Table 1 Table 1 Table 1

Table 2 Table 2 Table 2 Relational Data Layout

SingerId SingerName SingerId AlbumId AlbumName

1 Beatles 1 1 Help!

2 U2 1 2 Abbey Road

3 Pink Floyd 3 1 The Wall Interleave Data Layout

1 Beatles

1 1 Help!

1 2 Abbey Road

2 U2

3 Pink Floyd

3 1 The Wall Relational data model

CREATE TABLE Singers ( No Downtime SingerId INT64 NOT NULL, Schema Migrations

SingerName STRING(MAX),

) PRIMARY KEY(SingerId);

ALTER TABLE Singers CREATE TABLE Albums ( ADD COLUMN Age INT64; SingerId INT64 NOT NULL,

AlbumId INT64 NOT NULL, AlbumName STRING(MAX), ) PRIMARY KEY(SingerId, AlbumId) INTERLEAVE IN PARENT Singers; Getting started in Python Storage & Database Portfolio

In memory Relational Non-relational Object Warehouse

App Engine Cloud Cloud Cloud Cloud Cloud BigQuery Memcache SQL Spanner Datastore Storage

Good for: Good for: Good for: Good for: Good for: Good for: Good for: Web/mobile apps, Web RDBMS+scale, Hierarchical, Heavy read + Binary or object Enterprise data gaming frameworks HA, HTAP mobile, web write, events, data warehouse

Such as: Such as: Such as: Such as: Such as: Such as: Such as: Game state, user CMS, User metadata, User profiles, AdTech, Images, media Analytics, sessions eCommerce Ad/Fin/MarTech Game State financial, IoT serving, backups dashboards Is your data No structured?

Do you need Yes Mobile SDK’s?

Is your workload Yes No Yes analytics?

Cloud No Storage Storage

Is your data Yes relational?

No

Do you need Do you need Do you need updates horizontal scalability? Mobile SDK’s? or low-latency?

No Yes No Yes Yes No

Cloud Cloud Cloud Firebase Cloud BigQuery SQL Spanner Datastore Realtime DB Bigtable Partner integrations

Launch partners Committed partners Whats Next

Checkout Google Cloud Spanner at cloud.google.com/spanner

Cloud Spanner 201 - youtu.be/Tzhe7sUNDbg

Cloud Spanner Case Study - Quizlet Case Study Thank you