building enterprise applications on google cloud platform cloud computing expo 2011
DESCRIPTION
This is a presentation given by Google Developer Advocate Chris Schalk at Cloud Expo in NYC on June 8th 2011 on building enterprise applications with Google's Cloud Platform.TRANSCRIPT
Building Enterprise Applications on Google's Cloud Platform Chris SchalkDeveloper Advocate @cschalk
Cloud Computing Expo June 8th, 2011
Agenda
● Navigating the various Cloud Technologies● A Brief History of App Engine● App Engine... A Closer Look● App Engine Leaving Preview● Key Partner Success● Google's new Cloud Technologies● Enterprise Cloud Development on Google● Q&A
Navigating the various Cloud Technologies
IaaS
PaaS
SaaS
Source: Gartner AADI Summit Dec 2009
Cloud landscape as Gartner Sees It
Why classifying a PaaS is not so easy
● SaaS, IaaS are easy to understand... But is PaaS?● What is a "Platform"?
○ Is it purely a development platform?○ Does it involve infrastructure? Should it?
Not all "Platforms" are alike
Why classifying a PaaS is not so easy
● What is the end goal of a PaaS?○ To make an admin's life easier?○ Or to make a developer's life easier?
● Easy to build● Easy to maintain● Easy to scale
App Engine's approach to PaaS
Focus on building your app, let us wear the pagers!
A Brief History of App Engine
A Brief History of App Engine
2008 - App Engine Launches● rapid development: python, dev_appserver● automatic scaling● 30s request deadline● APIs: memcache, datastore, urlfetch, mail● free quotas
2009 - Platform Expands● Billing Support● Java Runtime● Task Queue & Cron● XMPP API● Blobstore API● Datastore Replication
A Brief History of App Engine
2010 - Remove Limitations● Datastore Query● AppStats● Mapper API● 10 minute Tasks● Channel API● Always On
2011 - Enterprise● High-Replication Datastore● Prospective Search API● File API● ProtoRPC● ...!
A Brief History of App Engine
Today (1.5.0)● Backends● Pull Queues with REST API● High Replication Datastore as Default
Soon (h2 2011)● Leaving Preview!
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
100,000+ Active Developers per Month
By the Numbers
200,000+Active apps per week
By the Numbers
1.5B+Pageviews per day
By the Numbers
Some App Engine Partners
App Engine... A closer look
Google App Engine
Cloud Development in a Box
● Downloadable SDK● Application runtimes
○ Java, Python● Local development tools
○ Eclipse plugin, AppEngine Launcher
● Specialized application services
● Cloud based dashboard● Ready to scale ● Built in fault tolerance, load
balancing
Specialized Services
BlobstoreImages
Mail XMPP Task Queue
Memcache Datastore URL Fetch
User Service
Language Runtimes
Extended Language support through JVM
● Java● Scala● JRuby (Ruby)● Groovy● Quercus (PHP)● Rhino (JavaScript)● Jython (Python)
Development Tools for App Engine
App Engine Dashboard
Google App Engine Launcher
SDK Console
Google Plugin for Eclipse
Demo
Building and deploying apps with Google App Engine
App Engine Leaving Preview
Production App Engine Features
● Full Google Product - 3 year deprecation support● 99.95% SLA for all paid users● Operational and Developer Support available● New business-friendly Terms of Service
● Billing via invoice● Rounded out feature set including Frontend and Backend
capabilities
● New sustainable pricing model
New pricing model Overview
● Usage types:○ Free - similar to today○ Paid - $9/app/mo (+ usage) including SLA○ Premier - $500/account/mo (+ usage) including operational
support● No more CPU hours
○ Charging for size and number of running Frontends/Backends (incorporating CPU + memory)
○ APIs (including Datastore) charged based on operations● Add-ons
○ For example: SSL for custom domains will be available for monthly fee
New App Engine Pricing Model details (tentative)
Resource Unit Unit Cost Free per dayOn-Demand Instances Instance-hour $0.08 24
Reserved Instances Instance-hour $0.05 -Datastore Storage GB / mo $0.24 1GDatastore Operations Operation $0.01 / 10k 50k
Blobstore Storage GB / mo $0.17 5G
Outgoing Bandwidth GB $0.15 1G
Incoming Bandwidth GB $0.10 1G
Email API Recipients $0.03 / 100 100
XMPP API Stanza $0.01 / 1k 1k
Channel API Channel Opened $0.01 / 100 100
What is happening to App Engine for Business?
● Preview was announced at Google IO 2010○ 99.9% SLA○ Premium Developer Support○ Custom domain SSL○ Simplified Pricing model○ Company specific administration console
● Trusted Tester program started in Q3 2010○ Gave early access to hundreds of developers○ Held internal and external workshops and webinars to
gather feedback
What is happening to App Engine for Business?
● Overall feedback from Trusted Testers○ All customers were interested in GAE4B features: SLA,
Support, Hosted SQL, SSL for custom domains○ But..
■ Certain aspects of GAE4B were not fully realistic■ Not all companies were focused purely on
building internal apps■ Per user, per app pricing was not appropriate for
all companies
Key Partner Success
Key Enterprise Adoption
WebFilings’ collaborative, browser-based software dramatically improves the efficiency and effectiveness of financial reporting teams
WebFilings Overview
Launched product mid-March 2010● Hundreds of customers with
hundreds more signing-up every quarter
● Marquee customers from F100● Fastest growing company in our
market
Started building product in May 2008● GAE-based from day one● Greatly simplified development,
deployment, and maintenance● Cost-effective● Supports agile development
WebFilings Customers
http://www.webfilings.com/customers/valued_customers
Notable customers:● Procter & Gamble● Delta Airlines● Valero Energy● Sprint/Nextel● eBay ● United Airlines● Dish Network● ...
Recently signed:● One of the world's largest
banks● The world's largest retailer● One of the largest US
auto manufacturers
Massive Scalability Success
Official Royal Wedding on App Engine
On Wedding day, served: ● Up to 32k requests per second● 37.7 million pageviews ● 13.7 million visitors
http://goo.gl/F1SGc
Google's new Cloud Technologies
New Google Cloud Technologies
● Google Storage○ Store your data in Google's cloud
● Prediction API○ Google's machine learning tech in an API
● BigQuery○ Hi-speed data analysis on massive scale
● SQL Service○ Relational Database in the cloud
What Is Google Storage?
● Store your data in Google's cloud○ any format, any amount, any time
● You control access to your data○ private, shared, or public
● Access via Google APIs or 3rd party tools/libraries
Google Storage Benefits
High Availability, Performance, Scalability Backed by Google infrastructure
Strong Security and Privacy Control access to your data
Easy to UseGet started fast with Google & 3rd party tools
Google Storage powers Google Services
● Content hosting - images, data, etc.
● Sharing
● Data Import
● Computation
Haiti Relief Imagery USPTO data
Partner Reporting
Google BigQuery
Google Prediction API
Partner Reporting
Prediction API
● Google's sophisticated machine learning algorithms● Available as an on-demand RESTful HTTP web service
Three Steps to a Smart App:
1. Upload
2. Train
Upload your training data toGoogle Storage
Build a model from your data
Make new predictions
3. Predict
"Auto-classification and sentiment analysis of magazine articles and blog
posts" "Predict profitability (+, or -) of insurance accounts compared to historical outcomes."
"Supply chain product predictions based on historical point of sale and invoice data broken down by distributor, product and store #."
"predict retail product recommendations based on our online purchase/browse behavior"
Actual customer use cases
CustomerSentiment
TransactionRisk
Supply Chain
Recommend Products
BigQuery - Interactive Analysis of Big Data
● Scalable: Billions of rows● Fast: Response in seconds● Simple: Queries in SQL and offered as a web service
1. Upload
2. Import
Upload to Google Storage
Import data into BigQuery Table
Execute queries via APIs
3. Query
Three Steps to a Smart App:● Access via RESTful API, Web UI, BigQuery
Shell, and Spreadsheet
● Example: Query Wikimedia revision history (200M rows, 20G of data.) in < 10s
Google SQL Service
● A fully managed hosted SQL solution
● Millions of turn-key small, mid-size SQL Databases● Fully hosted, native MySQL● Multi-homed● Engine agnostic - MySQL...
Demo
Working with Google Storage, Prediction API...
Enterprise Cloud Development on Google
The Google Enterprise Development Platform
Google Apps Centralized Admin
Enterprise Firewall
Enterprise Data Authentication Enterprise Services User Management
App Engine / CloudGoogle Apps for Business
Google Apps Marketplace
Buy from others Buy from Google Build your own
Google Storage Prediction, BigQuery
and more!
Apps You Build1. Google Apps2. Third party Apps:
Google Apps Marketplace3. ________
Google App Engine
IaaS
PaaS
SaaS
Build your own Apps with App Engine
App Engine/Cloud Resources
Google App Engine ● http://code.google.com/appengine
Google Storage● http://code.google.com/apis/storage
Google Prediction● http://code.google.com/apis/predict
Google BigQuery● http://code.google.com/apis/bigquery
Q&A
Chris SchalkDeveloper Advocate @cschalk
Cloud Computing Expo June 8th, 2011