This document summarizes Patrick Chanezon's presentation on Google Cloud Services at Google Developer Day 2010. The presentation introduced several Google cloud platforms and APIs, including Google App Engine for building scalable web applications, Google Storage for storing data in the cloud, Google Prediction API for machine learning, Google BigQuery for interactive analysis of large datasets, Google Fusion Tables for managing tabular data, and Google Visualization API for data visualization. Real-world examples of how various Google cloud services can be combined to build cloud applications were provided.
1. Google Cloud Services
Patrick Chanezon, Developer Advocate, Cloud
@chanezon, chanezon@google.com
Google Developer Day 2010
Friday, April 8, 2011
2. Boule de Cristal
• 2009 Social
• 2010 HTML5
• 2011 Cloud
Google Developer Day 2010
Friday, April 8, 2011
3. Agenda
• Google App Engine
• Google Storage for Developers
• BigQuery
• Prediction API
• Google Fusion Tables
• Google Visualization API
• Google Refine
Google Developer Day 2010
Friday, April 8, 2011
5. What is
cloud
computing?
3
Friday, April 8, 2011
6. Cloud Computing Defined
SaaS
PaaS
IaaS
Source: Gartner AADI Summit Dec 2009
Google Developer Day 2010
Friday, April 8, 2011
7. Cloud Computing Defined
SaaS
PaaS
IaaS
Source: Gartner AADI Summit Dec 2009
Google Developer Day 2010
Friday, April 8, 2011
8. Cloud Computing Defined
SaaS
PaaS
IaaS
Source: Gartner AADI Summit Dec 2009
Google Developer Day 2010
Friday, April 8, 2011
9. Cloud Computing Defined
SaaS
PaaS
IaaS
Source: Gartner AADI Summit Dec 2009
Google Developer Day 2010
Friday, April 8, 2011
10. Google's Cloud Offerings
1. Google Apps
2. Third party Apps:
Google Apps Marketplace
SaaS 3. ________
Google App Engine
PaaS
Google Storage
IaaS Prediction API
BigQuery
Google Developer Day 2010
Friday, April 8, 2011
11. Google's Cloud Offerings
Your Apps
1. Google Apps
2. Third party Apps:
Google Apps Marketplace
SaaS 3. ________
Google App Engine
PaaS
Google Storage
IaaS Prediction API
BigQuery
Google Developer Day 2010
Friday, April 8, 2011
12. Build and Buy all your enterprise cloud apps...
Buy from Google
Google Apps
for Business
Enterprise Application Platform
Enterprise Firewall
Enterprise Data Authentication Enterprise Services User Management
Google Developer Day 2010
8
Friday, April 8, 2011
13. Build and Buy all your enterprise cloud apps...
Buy from others Buy from Google
Google Apps Google Apps
Marketplace for Business
Enterprise Application Platform
Enterprise Firewall
Enterprise Data Authentication Enterprise Services User Management
Google Developer Day 2010
8
Friday, April 8, 2011
14. Build and Buy all your enterprise cloud apps...
Buy from others Buy from Google Build your own
Google Apps Google Apps Google App Engine
Marketplace for Business for Business
Enterprise Application Platform
Enterprise Firewall
Enterprise Data Authentication Enterprise Services User Management
Google Developer Day 2010
8
Friday, April 8, 2011
15. Google App Engine
- Easy to build
- Easy to maintain
- Easy to scale
9
Friday, April 8, 2011
16. Cloud development in a box
• SDK & “The Cloud”
• Hardware
• Networking
• Operating system
• Application runtime
Java, Python
o
• Static file serving
• Services
• Fault tolerance
• Load balancing
10
Friday, April 8, 2011
17. App Engine Services
Memcache Datastore URL Fetch
Mail XMPP Task Queue
Images Blobstore User Service
11
Friday, April 8, 2011
18. 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
12
Friday, April 8, 2011
19. Purchase additional resources *
* free monthly quota of ~5 million page views still in full effect
13
Friday, April 8, 2011
20. Google App Engine for Business
Same scalable cloud hosting platform. Designed for the enterprise.
• Enterprise application management
– Centralized domain console
• Enterprise reliability and support
– 99.9% Service Level Agreement
– Premium Developer Support
• Hosted SQL
– Managed relational SQL database in the cloud
• SSL on your domain
– Including "naked" domain support
• Secure by default
– Integrated Single Sign On (SSO)
• Pricing that makes sense Google App Engine
for Business
– Pay only for what you use
* Hosted SQL and SSL on your domain available later this year
Google Developer Day 2010
Friday, April 8, 2011
21. Google Storage for Developers
Store your data in Google's cloud
Google Developer Day 2010
Friday, April 8, 2011
22. Google Storage Benefits
High Performance and Scalability
Backed by Google infrastructure
Strong Security and Privacy
Control access to your data
Easy to Use
Get started fast with Google & 3rd party tools
Google Developer Day 2010
Friday, April 8, 2011
23. Some Early Google Storage Adopters
Google Developer Day 2010
Friday, April 8, 2011
24. Google Storage usage within Google
Google Google
BigQuery Prediction API
Haiti Relief Imagery USPTO data
Partner Reporting Partner Reporting
Google Developer Day 2010
Friday, April 8, 2011
25. Google Storage - Availability
Limited preview in US* currently
• 100GB free storage and network per account
• Sign up for wait list at
• http://code.google.com/apis/storage/
* Non-US preview available on case-by-case basis
Google Developer Day 2010
Friday, April 8, 2011
26. Google BigQuery
Interactive analysis of large datasets in Google's cloud
Google Developer Day 2010
Friday, April 8, 2011
27. Introducing Google BigQuery
• Google's large data adhoc analysis technology
• Analyze massive amounts of data in seconds
• Simple SQL-like query language
• Flexible access
• REST APIs, JSON-RPC, Google Apps Script
21
Google Developer Day 2010
Friday, April 8, 2011
28. Why BigQuery?
Working with large data is a challenge
Google Developer Day 2010
Friday, April 8, 2011
29. Many Use Cases ...
Trends
Interactive Spam
Detection
Tools
Web Network
Dashboards Optimization
Google Developer Day 2010
Friday, April 8, 2011
30. Key Capabilities of BigQuery
• Scalable: Billions of rows
• Fast: Response in seconds
• Simple: Queries in SQL
• Web Service
o REST
o JSON-RPC
o Google App Scripts
Google Developer Day 2010
Friday, April 8, 2011
31. Writing Queries
Compact subset of SQL
o SELECT ... FROM ...
WHERE ...
GROUP BY ... ORDER BY ...
LIMIT ...;
Common functions
o Math, String, Time, ...
Additional statistical approximations
o TOP
o COUNT DISTINCT
Google Developer Day 2010
Friday, April 8, 2011
32. BigQuery via REST
GET /bigquery/v1/tables/{table name}
GET /bigquery/v1/query?q={query}
Sample JSON Reply:
{
"results": {
"fields": { [
{"id":"COUNT(*)","type":"uint64"}, ... ]
},
"rows": [
{"f":[{"v":"2949"}, ...]},
{"f":[{"v":"5387"}, ...]}, ... ]
}
}
Also supports JSON-RPC
Google Developer Day 2010
Friday, April 8, 2011
33. Large Data Analysis Example
Wikimedia Revision History
Wikimedia Revision history data from:
http://download.wikimedia.org/enwiki/latest/enwiki-latest-pages-meta-history.xml.7z
Google Developer Day 2010
Friday, April 8, 2011
34. Large Data Analysis Example
Wikimedia Revision History
Wikimedia Revision history data from:
http://download.wikimedia.org/enwiki/latest/enwiki-latest-pages-meta-history.xml.7z
Google Developer Day 2010
Friday, April 8, 2011
35. BigQuery from a Spreadsheet
Google Developer Day 2010
Friday, April 8, 2011
36. BigQuery from a Spreadsheet
Google Developer Day 2010
Friday, April 8, 2011
37. Google Prediction API
Google's prediction engine in the cloud
Google Developer Day 2010
Friday, April 8, 2011
38. Introducing the Google Prediction API
• Google's sophisticated machine learning technology
• Available as an on-demand RESTful HTTP web service
Google Developer Day 2010
Friday, April 8, 2011
39. A virtually endless number of applications...
Customer Transaction Species Message Diagnostics
Sentiment Risk Identification Routing
Churn Legal Docket Suspicious Work Roster Inappropriate
Prediction Classification Activity Assignment Content
Recommend Political Uplift Email Career
Products Bias Marketing Filtering Counseling
... and many more ...
Google Developer Day 2010
Friday, April 8, 2011
40. How does it work?
1. TRAIN The quick brown fox jumped over the
"english"
The Prediction API lazy dog.
finds relevant To err is human, but to really foul things
features in the "english"
up you need a computer.
sample data during
"spanish" No hay mal que por bien no venga.
training.
"spanish" La tercera es la vencida.
2. PREDICT To be or not to be, that is the
?
The Prediction API question.
later searches for ? La fe mueve montañas.
those features
during prediction.
Google Developer Day 2010
Friday, April 8, 2011
41. Using the Prediction API
A simple three step process...
Upload your training data to
1. Upload Google Storage
Build a model from your data
2. Train
3. Predict Make new predictions
Google Developer Day 2010
Friday, April 8, 2011
42. Prediction API Capabilities
Data
• Input Features: numeric or unstructured text
• Output: up to hundreds of discrete categories, or
continuous values
Training
• Many machine learning techniques
• Automatically selected
• Performed asynchronously
Access from many platforms:
• Web app from Google App Engine
• Apps Script (e.g. from Google Spreadsheet)
• Desktop app
Google Developer Day 2010
Friday, April 8, 2011
43. Prediction API - Pricing
Free Quota in trial/development
• 100 predictions/day, 5MB trained/day
• Available for 6 months
Paid Usage
• $10/month per project includes 10,000 predictions
• Additional predictions are $0.50 per 1,000
• Absolute limit of 60,000 predictions per day
• $0.002 per MB trained (max size per dataset is 100MB)
Google Developer Day 2010
Friday, April 8, 2011
44. Prediction API- Availability
Limited preview in US* currently
• Sign up for wait list at
• http://code.google.com/apis/predict/
* Non-US preview available on case-by-case basis
Google Developer Day 2010
Friday, April 8, 2011
46. Google Fusion Tables
• Manage large collections of tabular data in the cloud
• 100 Mb tables
• Filters, Aggregation, Merge
• ACL, Collaboration, Discuss Data
• Visualizations
• REST API
• Geo queries
• Maps Integration
• FusionTablesLayer
Google Developer Day 2010
Friday, April 8, 2011
49. Google Visualization API
• Collection of JavaScript Visualization components
• Some from Google (Chart Tools)
• Some from other developers
• Share the same wire protocol for Data Sources
Google Developer Day 2010
Friday, April 8, 2011
50. Example: Weather data
• US National Climatic Data Center
• weather data at stations around the globe since 1929
• Stored in Google Storage
• Created a Table for Bigquery
• Upload Weather Station coordinates in Fusion Tables
• App Engine App
• Maps API to display weather station Maps
• Bigquery to query average temperature in January
• A bit of Python to create a JSON Data Source
• Visualization API
• Just an example: rince, repeat, enhance!
Google Developer Day 2010
Friday, April 8, 2011
52. Google Refine
Google Developer Day 2010
Friday, April 8, 2011
53. Google Refine
• Power tool for working with messy data
• Cleanup
• Transform
• Augment
• (Link with FreeBase)
• Desktop software for now
• http://code.google.com/p/google-refine/
Google Developer Day 2010
Friday, April 8, 2011
54. Google Refine
Google Developer Day 2010
Friday, April 8, 2011
55. Recap
• Google App Engine
o Easy to build, deploy and manage web apps
• Google Storage
o High speed data storage on Google Cloud
• Prediction API
o Google's machine learning technology
• BigQuery
o Interactive analysis of very large data sets
• Google Fusion Tables
o Manage collections of tabular data in the cloud
• Google Refine
o Power tool for working with messy data
• Google Visualization
o Collection of JavaScript Visualization
Google Developer Day 2010
Friday, April 8, 2011
56. Goole IO Extended a Montreal
Google Developer Day 2010
Friday, April 8, 2011
57. More information
http://code.google.com/apis/
http://code.google.com/more/table/
Google Developer Day 2010
Friday, April 8, 2011