44
1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations [email protected]

1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations [email protected]

Embed Size (px)

Citation preview

Page 1: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

1

Google App Engine

APIs :Overview

Feb – March, 2010

Patrick ChanezonDeveloper AdvocateGoogle Developer [email protected]

Page 2: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

2

Agenda

-App Engine introduction

-Why build it?

-App Engine tour

-What's different?

-Wrap up

-Questions

Page 3: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

3

Pla

cePosta

ge

Here

IaaSPaaS

SaaS

What is cloud computing?

Page 4: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

4

IaaS value proposition…

Page 5: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

5

Google App Engine

“We wear pagers so you don’t have to”

Page 6: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

7

Google App Engine

-Easy to build

-Easy to maintain

-Easy to scale

Page 7: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

8

By the numbers

- Built 100K apps

- Maintained by 250K developers

- Scaled to 250M pageviews daily

semi-transparent collage of apps

Page 8: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

9

gigya Socialize

Page 9: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

10

Gigya Socialize - traffic

Page 10: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

11

App Engine

Page 11: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

12

Why build it?

Page 12: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

13

It's just too difficult

Page 13: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

14

Hosting means hidden costs

• Idle capacity• Software patches & upgrades• License fees• Lots of maintenance• Traffic & utilization forecasting• Upgrades

14

Page 14: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

15

Cloud development in a box

• SDK & “The Cloud”• Hardware• Networking• Operating system• Application runtime

o Java, Python• Static file serving• Services• Fault tolerance• Load balancing

Page 15: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

16

Easy to deploy & scale

http://www.yourdomain.com/

1

2

Page 16: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

17

Google App Engine

Leveraging Google'splatform to better serveyour customers

Page 17: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

18

Distributed Meme: Divide & ConquerSpecialized services

BlobstoreImages

Mail XMPP Task Queue

Memcache Datastore URL Fetch

User Service

Page 18: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

19

Language runtimes

Duke, the Java mascotCopyright © Sun Microsystems Inc., all rights reserved.

Page 19: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

20

Ensuring portability

Page 20: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

21

Complete Java development stack

Page 21: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

22

Google Plugin for Eclipse

Page 22: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

23

Google's scalable serving architecture

Google Apps + your apps

Your custom applicationsOur Google Apps

Page 23: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

24

Google Apps integration

http://appid.appspot.com/

http://yourapp.yourdomain.com/

Page 24: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

25

Google Apps + App Engine

Page 25: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

26

Federate your on-premise data

Page 26: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

27

Secure Data Connector (SDC)

Page 27: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

28

Secure Data Connector

and 50+ more...

Page 28: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

29

Your application's health

Page 29: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

30

App Engine's health history

Page 30: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

31

Distributed datastore

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

Page 31: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

32

Shard 1

Shard 2      .      .

Shard n

Bigtable :A distributed, sharded, sorted array

 Row key    Row data

Page 32: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

33

Datastore design

-Distributed

-Bigtable + entity groups

-ACID transactions

-Optimistic concurrency

-Entities + indexes

-Protobuf encoded entities

Page 33: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

34

Datastore properties

-Core value types

-List properties

-Text & binary blobs

-Reference

Page 34: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

35

What's different?

Page 35: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

36

Datastore - what's new

-Distributed

-Scales to 'internet scale'

-No deadlocks

-Predictable query performance

Page 36: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

37

Datastore - what's different

-No inner/outer/natural joins

-Dense index scans

-Per entity metadata

-Soft schema

-No more DDL

Page 37: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

38

An evolving platform

Page 38: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

39

Apr 2008 Python launchMay 2008 Memcache, Images APIJul 2008 Logs exportAug 2008 Batch write/deleteOct 2008 HTTPS supportDec 2008 Status dashboard, quota detailsFeb 2009 Billing, larger filesApr 2009 Java launch, DB import, cron support, SDCMay 2009 Key-only queriesJun 2009 Task queuesAug 2009 Kindless queriesSep 2009 XMPPOct 2009 Incoming emailDec 2009 BlobstoreFeb 2010 Datastore cursors, Async Urlfetch

23 months in review

Page 39: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

40

- Support for mapping operations across datasetsAlerting system for exceptions in your applicationDatastore dump and restore facility

App Engine Roadmap

Page 40: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

41

Wrap up

Page 41: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

42

Always free to get started

~5M pageviews/month• 6.5 CPU hrs/day• 1 GB storage• 650K URL Fetch calls/day• 2,000 recipients emailed• 1 GB/day bandwidth• 100,000 tasks enqueued• 650K XMPP messages/day

Page 42: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

43

Purchase additional resources *

* free monthly quota of ~5 million page views still in full effect

Page 43: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

44

Thank you

Read morehttp://code.google.com/appengine/

Contact infoPatrick ChanezonDeveloper [email protected]://twitter.com/chanezon

Questions?

Page 44: 1 Google App Engine APIs :Overview Feb – March, 2010 Patrick Chanezon Developer Advocate Google Developer Relations chanezon@google.com

Thanks

To Alon Levi, Fred Sauer, Brett Slatkin and others for their slides