Factors Driving Cloud Adoption - George...

83
Factors Driving Cloud Adoption 2 Patrick Chanezon Developer Relations Manager, Cloud & Apps [email protected] http://twitter.com/chanezon C4I AFCEA Symposium May 23 2010 Thursday, May 26, 2011

Transcript of Factors Driving Cloud Adoption - George...

Page 1: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Factors Driving Cloud Adoption

2

Patrick ChanezonDeveloper Relations Manager, Cloud & [email protected]://twitter.com/chanezon

C4I AFCEA SymposiumMay 23 2010

Thursday, May 26, 2011

Page 2: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

P@ in a slide

• Software Plumber, mix of Enterprise and Consumer

• 18 years writing software, backend guy with a taste for javascript

• 2 y Accenture (Notes guru), 3 y Netscape/AOL (Servers, Portals), 5 y Sun (ecommerce, blogs, Portals, feeds, open source)

• 6 years at Google, API guy (first hired, helped start the team)

• Adwords, Checkout, Social, HTML5, Cloud

Thursday, May 26, 2011

Page 3: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

P@ & Military Software

1993 - Software metrics Dod-Std-2167A

1994 - C3I

Thursday, May 26, 2011

Page 4: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Architecture Changes: 60’s Mainframe

Thursday, May 26, 2011

Page 5: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Architecture Changes: 80’s Client-Server

Thursday, May 26, 2011

Page 6: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Architecture Changes: 90’s Web

Thursday, May 26, 2011

Page 7: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Architecture Changes: 2010’s Cloud, HTML5, Mobile

Thursday, May 26, 2011

Page 8: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Hype warning: Cloudy, with a chance of real innovation

Source: Gartner (August 2009)

8

Thursday, May 26, 2011

Page 9: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Cloud started at Consumer websites solving their needs

• Google, Amazon, Yahoo, Facebook, Twitter

• Large Data Sets

• Storage Capacity growing faster than Moore’s Law

• Fast Networks

• Horizontal -> Vertical scalability

• Open Source Software

• Virtualization

• Cloud is a productization of these infrastructures

• Public Clouds Services: Google, Amazon

• Open Source Software: Hadoop, Eucalyptus, Cloud Foundry

Thursday, May 26, 2011

Page 10: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Cloud, according to my daughter

10

Thursday, May 26, 2011

Page 11: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

IaaS

PaaS

SaaS

Source: Gartner AADI Summit Dec 2009

Cloud Computing Categories

Thursday, May 26, 2011

Page 12: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

IaaS

PaaS

SaaS

Source: Gartner AADI Summit Dec 2009

Cloud Computing Categories

Thursday, May 26, 2011

Page 13: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

IaaS

PaaS

SaaS

Source: Gartner AADI Summit Dec 2009

Cloud Computing Categories

Thursday, May 26, 2011

Page 14: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

IaaS

PaaS

SaaS

Source: Gartner AADI Summit Dec 2009

Cloud Computing Categories

Thursday, May 26, 2011

Page 15: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Infrastructure culture

• Larry and Serguey’s 1998 paper ”The Anatomy of a Large-Scale Hypertextual Web Search Engine"

• http://infolab.stanford.edu/~backrub/google.html

• Other Google Research papers since then

• http://research.google.com/pubs/papers.html

• Build on the shoulders of giants

• Custom stack made of standards parts: machines, linux, servers

• Standard infrastructure: sharding, GFS, MapReduce, BigTable

• Google App Engine: easy cloud, for Googlers and others developers

• Standard languages: c/c++, java, python

• Horizontal scalability: parallel and asynchronous whenever possible

Thursday, May 26, 2011

Page 16: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 13

Programming the Cloud – The Google Way

•Fault tolerant distributed storage: Google File System

•Distributed shared memory: Bigtable

•New programming abstractions: MapReduce

•Domain Specific Languages: Sawzall

Google.stanford.edu (Circa 1997) Current Rack Design

Thursday, May 26, 2011

Page 17: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 14

Fault Tolerant Distributed Disk Storage: GFS

• Data replicated 3 times. Upon failure, software re-replicates.

• Master: Manages file metadata. Chunk size 64 MB.

• Optimized for high-bandwidth sequential read / writes

• Clusters > 5 PB of disk

Chunkserver 1 Chunkserver NChunkserver 2

Client

Client

GFS Master

C0 C1

C2C5

C0

C2

C5C1

C3C5…

http://research.google.com/archive/gfs-sosp2003.pdf

Thursday, May 26, 2011

Page 18: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 15

Distributed Shared Memory: Bigtable

• Sparse, distributed, persistent, multidimensional, sorted

• Not a relational database (RDBMS): no schema, no joins, no foreign key constraints, no multi-row transactions

• Each row can have any number of columns, similar to a dictionary data structure for each row.

• Basic data types: string, counter, byte array

• Accessed by row key, column name, timestamp

• Data split into tablets for replication

• Largest cells are > 700TB

http://research.google.com/archive/bigtable-osdi06.pdf

Thursday, May 26, 2011

Page 19: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Datastore layers

16

Complex queries

Entity Group Transactions

Queries on properties

Key range scan

Get and set by key

Datastore! ! ! ! !

Megastore! ! ! !

Bigtable! !

Thursday, May 26, 2011

Page 20: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Megastore API

• “Give me all rows where the column ‘name’ equals ‘ikai’”

• “Transactionally write an update to this group of entities”

• “Do a cross datacenter write of this data such that reads will be strongly consistent” (High Replication Datastore)

• Megastore paper: http://www.cidrdb.org/cidr2011/Papers/CIDR11_Paper32.pdf

17

Thursday, May 26, 2011

Page 21: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 18

Programming Abstraction: MapReduce

• Represent problems as Map and Reduce step (inspired by functional programming)

• Distribute data among many machines, execute same computation at each machine on its dataset

• Infrastructure manages parallel execution

• Open source implementation: Hadoop

map(in_key, data) ! list(key, value)

reduce(key, list(values)) ! list(out_data)

http://research.google.com/archive/mapreduce.html

Map Task 1

Map Task 2

Map Task 3

Sort & Group

Sort & Group

ReduceTask 1

ReduceTask 2

I n p u t

key

D a t a

Thursday, May 26, 2011

Page 22: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 19

Language for Parallel Log Processing: Sawzall

• Commutative and associative operations allow parallel execution and aggregation

• Language avoids specifying order by replacing loops with quantifiers (constraints)

count: table sum of int;total: table sum of float;

x: float = input;

emit count <- 1;emit total <- x;

http://labs.google.com/papers/sawzall.html

function(word: string): bool { when(i: some int; word[i] != word[$-1-i]) return false; return true;};

Thursday, May 26, 2011

Page 23: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 20

Internet as a Platform: The Challenges

•Loosely coupled

•Extensible

•Standards-based

•Fault tolerant

•Unlimited computing power

•Ubiquitous

Architect’s Dream

Thursday, May 26, 2011

Page 24: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 20

Internet as a Platform: The Challenges

•Loosely coupled

•Extensible

•Standards-based

•Fault tolerant

•Unlimited computing power

•Ubiquitous

•NO Call Stack

•NO Transactions

•NO Promises

•NO Certainty

•NO Ordering

Constraints

Architect’s Dream Developer’s Nightmare

Thursday, May 26, 2011

Page 25: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 26: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 27: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 28: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 29: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 30: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

• Associative

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 31: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

• Associative

• Commutative

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 32: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

• Associative

• Commutative

• Idempotent

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 33: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

• Associative

• Commutative

• Idempotent

• Distributed

ACID (before) ACID (today)

Thursday, May 26, 2011

Page 34: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 21

New Game Rules

• Atomic

• Consistent

• Isolated

• Durable

• Associative

• Commutative

• Idempotent

• Distributed

ACID (before) ACID (today)

PredictiveAccurate

FlexibleRedundant

Thursday, May 26, 2011

Page 35: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Thursday, May 26, 2011

Page 36: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Thursday, May 26, 2011

Page 37: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Thursday, May 26, 2011

Page 38: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Refund money

Thursday, May 26, 2011

Page 39: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Refund money

Discard beverage

Thursday, May 26, 2011

Page 40: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Refund money

Discard beverage

Retry

Thursday, May 26, 2011

Page 41: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Refund money

Discard beverage

Retry

Compensation

Thursday, May 26, 2011

Page 42: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

© 2008 Google, Inc. All rights reserved, 22

Starbucks Does not Use 2-Phase Commit Either

•Start making coffee before customer pays

•Reduces latency

•What happens if…

Customer cannot pay

Customer rejects drink

Coffee maker breaks

Remake drink

Refund money

Discard beverageWrite-off

Retry

Compensation

Thursday, May 26, 2011

Page 43: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Commoditization of distributed computing concepts & tools

• Languages: Erlang concepts -> Go, Scala

• NoSQL Zoo: BigTable, HBase, MongoDB, Reddis, Cassandra

• Map/Reduce: Apache Hadoop

• Paxos, Eventual Consistency, CAP Theorem

• REST, statelessness, idempotency

Thursday, May 26, 2011

Page 44: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Economic Drivers

• Proportion of electricity in cost of computing

• Product -> Service

• Economies of Scale

• Moore’s Law

• Pay as you go utility model

Thursday, May 26, 2011

Page 45: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Cultural Drivers

• Expectations of corporate IT customers have changed

• Consumerization of IT

• Consumer apps more and more like fashion

• Technology achieves ubiquity by disappearing

Thursday, May 26, 2011

Page 46: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Thursday, May 26, 2011

Page 47: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Access from Anywhere

Thursday, May 26, 2011

Page 48: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Thursday, May 26, 2011

Page 49: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Scales Up, Scales Down, with Demand

Thursday, May 26, 2011

Page 50: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Thursday, May 26, 2011

Page 51: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Innovation Not Administration

Thursday, May 26, 2011

Page 52: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Cultural Drivers: Agility

• Waterfall -> Agile methodologies

• Cloud enables an Agile culture, driver for innovation

http://www.yourdomain.com/

1

Thursday, May 26, 2011

Page 53: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Fail often, fail quickly, and learn

Thursday, May 26, 2011

Page 54: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Fail often, fail quickly, and learn

• Risk taking/Experimentation is encouraged

• http://blog.red-bean.com/sussman/?p=96

• “Do not be afraid of day-to-day failures — learn from them. (As they say at Google, “don’t run from failure — fail often, fail quickly, and learn.”) Cherish your history, both the successes and mistakes. All of these behaviors are the way to get better at programming. If you don’t follow them, you’re cheating your own personal development.”

• Ben Collins-Sussman (Subversion, code.google.com)

Thursday, May 26, 2011

Page 55: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Agile Development Processes

Thursday, May 26, 2011

Page 56: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Agile Development Processes

• Influences from XP, Agile, Scrum

• Code reviews

• Test Driven Development: Testing on the Toilets program and blog

• Many internal development tools: Mondrian recently open sourced

• Changed the meaning of beta

• Teams co-located: 3-15 people, 4/cubicle, all close to each other

• International offices: manage whole projects, avoid coordination costs

Thursday, May 26, 2011

Page 57: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Open Source Culture

Thursday, May 26, 2011

Page 58: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Open Source Culture

• Open Source Program Office

• Summer of Code

• Open sourcing parts of Google code

• http://code.google.com/

• Making the web better: GWT, Gears, OpenSocial, Android

Thursday, May 26, 2011

Page 59: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

API Culture

Thursday, May 26, 2011

Page 60: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

API Culture

• Bill Joy: "Innovation happens elsewhere"

• From 3 to 62 APIs in 3 years

• Maps on websites

• Friend Connect: all sites can become social

• http://code.google.com/ for the list

• Build an ecosystem around the APIs (my job)

• User's choice: get their data out

Thursday, May 26, 2011

Page 61: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Data Liberation Front http://www.dataliberation.org/

Users should be able to control the data they store in any of Google's products. Our team's goal is to make it easier to move data in and out.

Thursday, May 26, 2011

Page 62: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Google Cloud Products

Thursday, May 26, 2011

Page 63: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

Google Storage Prediction API

BigQuery

1. Google Apps2. Third party Apps:

Google Apps Marketplace3. ________

Google App Engine

IaaS

PaaS

SaaS

Google's Cloud Offerings

Thursday, May 26, 2011

Page 64: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Developer DayGoogle 2010

Google Storage Prediction API

BigQuery

Your Apps

1. Google Apps2. Third party Apps:

Google Apps Marketplace3. ________

Google App Engine

IaaS

PaaS

SaaS

Google's Cloud Offerings

Thursday, May 26, 2011

Page 65: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

How Google Apps Adds Value

41

Productivity and InnovationRealtime collaboration, constant updates, new features

Reduced IT ComplexityLeast complex, least expensive to license and manage

Platform IndependenceWork anywhere from any computer or mobile device

Thursday, May 26, 2011

Page 66: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

How Google Apps Adds Value

42

Security and Availability Same uptime and infrastructure used for Google products

Built-in Enterprise Security Features 2-Factor Authentication, Single Sign On, Reporting Tools

Thursday, May 26, 2011

Page 67: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

How Google Apps Adds Value

42

Security and Availability Same uptime and infrastructure used for Google products

Built-in Enterprise Security Features 2-Factor Authentication, Single Sign On, Reporting Tools

A Toolbox of Administrative APIsReporting, Compliance, Identity Management and more...

Thursday, May 26, 2011

Page 68: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

• Easy to build• Easy to maintain• Easy to scale

Why Google App Engine?

Thursday, May 26, 2011

Page 69: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Cloud Development in a Box

• Downloadable SDK• Application runtimes

o Java, Python• Local development tools

o Eclipse plugin, AppEngine Launcher

• Specialized application services

• Cloud based dashboard• Ready to scale • Built in fault tolerance, load

balancing

Thursday, May 26, 2011

Page 70: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Specialized Services

BlobstoreImages

Mail XMPP Task Queue

Memcache Datastore URL Fetch

User Service

Thursday, May 26, 2011

Page 71: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Language Runtimes

Thursday, May 26, 2011

Page 72: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

App Engine Growth

App Engine LaunchPython

DatastoreMemcachelogs export

2008 2009 2010

JavaDB Import

cron

Batch write/readHttps

Status-Dashboard

Task QueuesXMPP

incoming email

MultitenancyInstance Console

Always Onhi-perf imag

10 min tasks

BlobstoreAppstats

cursorsMapper

2011

Hi-ReplicationDatastore

Channel APIFiles API

Remote APIProsp Search

Thursday, May 26, 2011

Page 73: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

100,000 Active Developers per Month

By the Numbers

Thursday, May 26, 2011

Page 74: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

200,000 Active apps per week

By the Numbers

Thursday, May 26, 2011

Page 75: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

1.5BPageviews per day

By the Numbers

Thursday, May 26, 2011

Page 76: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Some App Engine Partners

Thursday, May 26, 2011

Page 77: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Google Cloud In the Government sector

Thursday, May 26, 2011

Page 78: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Google is Committed to Meeting the Add'l Challenges of Governments

Google Apps for Government• Government only cloud in dedicated CONUS

facilities• Government pricing (GSA Schedule 70)

ATO Issued by GSA• Certification & Accreditation based on Federal

Information Systems Management Act (FISMA) • FIPS 199 Moderate baseline

Leader in Public Sector Cloud Computing• General Services Administration, USAID, Dept of Energy,

Colorado, New Mexico, Orlando, Los Angeles, Treasury, Multonomah County, Smithsonian, Tennessee Valley Authority, ACUS, MACPAC, Wyoming

Thursday, May 26, 2011

Page 79: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Select DoD CustomersRequirements

• Provide common platform for non-classified collaborationThe Solution

• Implement Google Apps (eushare.org) to support unclassified communication and coordination across 51 countries throughout the Area of Responsibility

• Used during planning, execution, and after-action reporting of X24Europe, a recent global exercise

Requirements• Provide common platform to support HA/DR mission area

The Solution• Implement Google Apps (InRelief.org) to support cross-country, cross-

language collaboration; Includes consolidation of social networking signals

Requirements• Provide messaging platform for families to connect with deployed service

membersThe Solution

• Garrison Commander's toolkit for communicating to troops and their families.

Thursday, May 26, 2011

Page 80: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Factors to consider for picking a Cloud

• Price

• Type: Iaas, Paas, Saas

• Type of task: Apps, Big Data

• Public/Private/Hybrid

• Lock-In: Standards, Open Source

Thursday, May 26, 2011

Page 81: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Issues to solve

• Cloud Interop: lack of standard

• Replication of Data across multiple Clouds

• Data privacy/integrity

• encryption at rest

• data auditing

• Trust, Culture of agility

Thursday, May 26, 2011

Page 82: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

• Chrome, HTML5

• ChromeBook, Device as a service $28/user/month

• Android: phone and tablets

Google Cloud Clients

Thursday, May 26, 2011

Page 83: Factors Driving Cloud Adoption - George Mac4i.gmu.edu/eventsInfo/reviews/2011/slides/Chanezon-slides.pdf · 1993 - Software metrics Dod-Std-2167A 1994 - C3I Thursday, May 26, 2011.

Q&A

58

Thursday, May 26, 2011