Google Cloud forData CrunchersPatrick Chanezon, Developer Advocate, Cloud@chanezon, chanezon@google.comRyan Boyd, Develope...
Agenda•   Google App Engine•   Google Storage for Developers•   Prediction API•   BigQuery•   Google Fusion Tables•   Goog...
Google App Engine                    Google Developer Day 2010
What is  cloudcomputing?   3
Cloud Computing Defined         SaaS         PaaS          IaaS                          Source: Gartner AADI Summit Dec 2...
Googles Cloud Offerings Your Apps                    1. Google Apps                    2. Third party Apps:               ...
Google App Engine - Easy to build - Easy to maintain - Easy to scale                      7
Cloud development in a box• SDK & “The Cloud”• Hardware• Networking• Operating system• Application runtime    o Java, Pyth...
App Engine Services   Memcache   Datastore   URL Fetch     Mail       XMPP      Task Queue    Images    Blobstore   User S...
Always free to get started  ~5M pageviews/month   • 6.5 CPU hrs/day   • 1 GB storage   • 650K URL Fetch calls/day   • 2,00...
Purchase additional resources * * free monthly quota of ~5 million page views still in full effect                        ...
Google App Engine for Business   Same scalable cloud hosting platform. Designed for the enterprise.    • Enterprise applic...
App Engine for Data Crunchers• High Performance Image Serving• OpenId/Oauth integration• Increased quotas    • > 1k entiti...
Mapper API • First component of App Engine’s MapReduce toolkit • Large scale data manipulation • Examples include:    • Re...
Channel API• Allows for Server Push (Comet) to browser • Blog post announcement:     • http://googleappengine.blogspot.com...
Matcher API• Allows an app to register a set of queries to match against astream of documents • Trustes Testers, Python on...
Google Storage for DevelopersStore your data in Googles cloud                                    Google Developer Day 2010
What Is Google Storage?• Store your data in Googles cloud  o any format, any amount, any time• You control access to your ...
Google Storage Technical DetailsRESTful API • Verbs: GET, PUT, POST, HEAD, DELETE • Resources: identified by URI, like:   h...
Performance and ScalabilityObject types and size• Objects of any type and 100GB+ / Object• Unlimited numbers of objects, 1...
Security and Privacy FeaturesAuthenticated downloads from a web browser• Sharing with individuals• Group sharing via Googl...
Tools         Google Storage Managergsutil                                  Google Developer Day 2010
Google Storage Benefits        High Performance and Scalability        Backed by Google infrastructure           Strong Se...
Some Early Google Storage Adopters                          Google Developer Day 2010
Google Storage usage within Google         Google                           Google        BigQuery                       P...
Google Storage - AvailabilityLimited preview in US* currently• 100GB free storage and network per account• Sign up for wai...
Google Prediction APIGoogles prediction engine in the cloud                                          Google Developer Day ...
Introducing the Google Prediction API• Googles sophisticated machine learning technology• Available as an on-demand RESTfu...
A virtually endless number of applications... Customer    Transaction        Species             Message         Diagnosti...
How does it work?1. TRAIN                         The quick brown fox jumped over the                     "english"The Pre...
Introducing the Google Prediction API                            Google Developer Day 2010
A Prediction API ExampleAutomatically determine application recommendations• Goal: Increase relevancy on the Apps Marketpl...
Using the Prediction APIA simple three step process...                                 Upload your training data to       ...
Step 1: Upload Upload your training data to Google Storage• Training data: outputs and input features• Data format: comma ...
Step 2: TrainCreate a new model by training on dataTo train a model:POST prediction/v1.1/training?data=appdata%2FinstallsT...
Step 3: Predict Apply the trained model to make predictions on new dataPOST prediction/v1.1/query/appdata%2Finstalls/predi...
Demo!    Google Developer Day 2010
Demo ScreenshotsPredicting apps for a 501-1,000 seat educational institution                                              ...
Demo ScreenshotsPredicting apps for a 501-1,000 seat educational institution                                              ...
Demo Screenshots    Predicting apps for a small business                                           Google Developer Day 2010
Demo Screenshots    Predicting apps for a small business                                           Google Developer Day 2010
Prediction API CapabilitiesData• Input Features: numeric or unstructured text• Output: up to hundreds of discrete categori...
Prediction API - PricingFree Quota in trial/development• 100 predictions/day, 5MB trained/day• Available for 6 monthsPaid ...
Google Storage - AvailabilityLimited preview in US* currently• Sign up for wait list at      • http://code.google.com/apis...
Google BigQueryInteractive analysis of large datasets in Googles cloud                                              Google...
Introducing Google BigQuery – Googles large data adhoc analysis technology   • Analyze massive amounts of data in seconds ...
Why BigQuery?Working with large data is a challenge                                         Google Developer Day 2010
Many Use Cases ...                                       Trends  Interactive          Spam                                ...
Key Capabilities of BigQuery• Scalable: Billions of rows• Fast: Response in seconds• Simple: Queries in SQL• Web Service  ...
Using BigQueryAnother simple three step process...                              Upload your raw data to              1. Up...
Writing QueriesCompact subset of SQL  o SELECT ... FROM ...    WHERE ...    GROUP BY ... ORDER BY ...    LIMIT ...;Common ...
BigQuery via RESTGET /bigquery/v1/tables/{table name}GET /bigquery/v1/query?q={query}Sample JSON Reply:{    "results": {  ...
Security and PrivacyStandard Google Authentication• Client Login• OAuth• AuthSubHTTPS support• protects your credentials• ...
Large Data Analysis ExampleWikimedia Revision HistoryWikimedia Revision history data from:http://download.wikimedia.org/en...
Using BigQuery ShellPython DB API 2.0 + B. Clappers sqlcmdhttp://www.clapper.org/software/python/sqlcmd/                  ...
BigQuery from a Spreadsheet                     Google Developer Day 2010
Google Fusion Tables                       Google Developer Day 2010
Google Fusion Tables• Manage large collections of tabular data in the cloud    • 100 Mb tables    • Filters, Aggregation, ...
Google Fusion Tables                       Google Developer Day 2010
Google Visualization API                           Google Developer Day 2010
Google Visualization API• Collection of JavaScript Visualization components    • Some from Google (Chart Tools)    • Some ...
Example: Weather data• US National Climatic Data Center    • weather data at stations around the globe since 1929    • Sto...
Example: Weather data                        Google Developer Day 2010
Google Refine                Google Developer Day 2010
Google Refine• Power tool for working with messy data     • Cleanup     • Transform     • Augment     • (Link with FreeBas...
Google Refine                Google Developer Day 2010
Recap• Google App Engine  o Easy to build, deploy and manage web apps• Google Storage  o High speed data storage on Google...
More informationhttp://code.google.com/apis/http://code.google.com/more/table/                               Google Develo...
Upcoming SlideShare
Loading in...5
×

Google Cloud for Data Crunchers - Strata Conf 2011

1,943

Published on

http://strataconf.com/strata2011/public/schedule/detail/16242
Talk at Strata 2011 with Ryan Boyd and Kirrily Roberts
Google is a Data business: over the past few years, many of the tools Google created to store, query, analyze, visualize its data, have been exposed to developers as services.

This talk will give you an overview of Google services for Data Crunchers:
Google Storage for developers
BigQuery, fast interactive queries on Terabytes of data
Machine Learning API: Machine Learning made easy
Google App Engine, exposing Data APIs is a very common use case for App Engine
Visualization API: many cool visualization components

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,943
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
39
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Google Cloud for Data Crunchers - Strata Conf 2011"

  1. 1. Google Cloud forData CrunchersPatrick Chanezon, Developer Advocate, Cloud@chanezon, chanezon@google.comRyan Boyd, Developer Advocate, Apps@ryguyrg, rboyd@google.comKirrily Robert, Data Engineer, Freebase.com@skud, skud@google.com
  2. 2. Agenda• Google App Engine• Google Storage for Developers• Prediction API• BigQuery• Google Fusion Tables• Google Refine Google Developer Day 2010
  3. 3. Google App Engine Google Developer Day 2010
  4. 4. What is cloudcomputing? 3
  5. 5. Cloud Computing Defined SaaS PaaS IaaS Source: Gartner AADI Summit Dec 2009 Google Developer Day 2010
  6. 6. Googles 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
  7. 7. Google App Engine - Easy to build - Easy to maintain - Easy to scale 7
  8. 8. 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 8
  9. 9. App Engine Services Memcache Datastore URL Fetch Mail XMPP Task Queue Images Blobstore User Service 9
  10. 10. 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 10
  11. 11. Purchase additional resources * * free monthly quota of ~5 million page views still in full effect 11
  12. 12. 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
  13. 13. App Engine for Data Crunchers• High Performance Image Serving• OpenId/Oauth integration• Increased quotas • > 1k entities per query • 10’’ task queues• Async UrlFetch• Mapper API (Reduce coming soon)• Channel API• Matcher API Google Developer Day 2010
  14. 14. Mapper API • First component of App Engine’s MapReduce toolkit • Large scale data manipulation • Examples include: • Report generation • Computing statistics and metrics … • Python Example: • http://blog.notdot.net/2010/05/Exploring-the-new-mapper-API • Java Example: • http://ikaisays.com/2010/07/09/using-the-java-mapper-framework-for-app- engine/ Google Developer Day 2010
  15. 15. Channel API• Allows for Server Push (Comet) to browser • Blog post announcement: • http://googleappengine.blogspot.com/2010/05/app-engine-at-google- io-2010.html • External coverage: • Sneak Peak from an early trusted tester • http://bitshaq.com/2010/09/01/sneak-peak-gae-channel-api/• Demo code for Dance Dance Robot available here: • http://code.google.com/p/dance-dance-robot/ • Also see: https://groups.google.com/group/google-appengine-java/ browse_thread/thread/6fa09953ffae2cd3/c1db7de5fdb82b65?pli=1# Google Developer Day 2010
  16. 16. Matcher API• Allows an app to register a set of queries to match against astream of documents • Trustes Testers, Python only • Group post announcement: • http://groups.google.com/group/google-appengine/msg/40021537e2e58962 • Docs: • http://code.google.com/p/google-app-engine-samples/wiki/ AppEngineMatcherService• Demo code: • http://code.google.com/p/google-app-engine-samples/source/browse/#svn/trunk/ matcher-sample Google Developer Day 2010
  17. 17. Google Storage for DevelopersStore your data in Googles cloud Google Developer Day 2010
  18. 18. What Is Google Storage?• Store your data in Googles cloud o any format, any amount, any time• You control access to your data o private, shared, or public• Access via Google APIs or 3rd party tools/libraries Google Developer Day 2010
  19. 19. Google Storage Technical DetailsRESTful API • Verbs: GET, PUT, POST, HEAD, DELETE • Resources: identified by URI, like: http://commondatastorage.googleapis.com/bucket/object• Compatible with S3 Buckets• Flat containers (no bucket hierarchy) Google Developer Day 2010
  20. 20. Performance and ScalabilityObject types and size• Objects of any type and 100GB+ / Object• Unlimited numbers of objects, 1000s of buckets• Range-get support for data retrievalReplication• All data replicated to multiple US data centers• Leveraging Googles worldwide network for data deliveryConsistency• “Read-your-writes” data consistency Google Developer Day 2010
  21. 21. Security and Privacy FeaturesAuthenticated downloads from a web browser• Sharing with individuals• Group sharing via Google Groups• Sharing with Google Apps domainsPermissions set on Buckets or Objects• READ (an object, or list a bucket’s contents)• WRITE (applicable to buckets, allows upload/delete/etc)• FULL_CONTROL (read/write ACLs on objects or buckets) Google Developer Day 2010
  22. 22. Tools Google Storage Managergsutil Google Developer Day 2010
  23. 23. 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
  24. 24. Some Early Google Storage Adopters Google Developer Day 2010
  25. 25. Google Storage usage within Google Google Google BigQuery Prediction API Haiti Relief Imagery USPTO data Partner Reporting Partner Reporting Google Developer Day 2010
  26. 26. Google Storage - AvailabilityLimited 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
  27. 27. Google Prediction APIGoogles prediction engine in the cloud Google Developer Day 2010
  28. 28. Introducing the Google Prediction API• Googles sophisticated machine learning technology• Available as an on-demand RESTful HTTP web service Google Developer Day 2010
  29. 29. A virtually endless number of applications... Customer Transaction Species Message Diagnostics Sentiment Risk Identification Routing Churn Legal Docket Suspicious Work Roster InappropriatePrediction Classification Activity Assignment ContentRecommend Political Uplift Email Career Products Bias Marketing Filtering Counseling ... and many more ... Google Developer Day 2010
  30. 30. 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 thingsfeatures 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 featuresduring prediction. Google Developer Day 2010
  31. 31. Introducing the Google Prediction API Google Developer Day 2010
  32. 32. A Prediction API ExampleAutomatically determine application recommendations• Goal: Increase relevancy on the Apps Marketplace via recommendations• Customers: Businesses of various sizes and industries using Google Apps around the world• Data: Sampling of previous installs of applications• Outcome: Predict applications which would be appropriate for a new customer visiting the site Google Developer Day 2010
  33. 33. Using the Prediction APIA 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
  34. 34. Step 1: Upload Upload your training data to Google Storage• Training data: outputs and input features• Data format: comma separated value format (CSV), result in first column "SlideRocket","EDUCATION","us","en","10","5" "MailChimp","BUSINESS","us","en","7","0" "MailChimp","STANDARD","se","sv","1","0" "Smartsheet","BUSINESS","us","en","13","4" Upload to Google Storage gsutil cp installs gs://appdata/ Google Developer Day 2010
  35. 35. Step 2: TrainCreate a new model by training on dataTo train a model:POST prediction/v1.1/training?data=appdata%2FinstallsTraining runs asynchronously. To see if it has finished:GET prediction/v1.1/training/appdata%2Finstalls{"data":{ "data":"appdata/installs", "modelinfo":"estimated accuracy: 0.xx"}}} Google Developer Day 2010
  36. 36. Step 3: Predict Apply the trained model to make predictions on new dataPOST prediction/v1.1/query/appdata%2Finstalls/predict{ "data":{ "input": { "mixture" : [ "EDUCATION","us","en","10","0" ]}}}{ data : { "kind" : "prediction#output", "outputLabel":"Manymoon", "outputMulti" :[ {"label":"OffiSync", "score": x.xx} {"label":"Zoho CRM", "score": x.xx} {"label":"MailChimp", "score": x.xx}]}} Google Developer Day 2010
  37. 37. Demo! Google Developer Day 2010
  38. 38. Demo ScreenshotsPredicting apps for a 501-1,000 seat educational institution Google Developer Day 2010
  39. 39. Demo ScreenshotsPredicting apps for a 501-1,000 seat educational institution Google Developer Day 2010
  40. 40. Demo Screenshots Predicting apps for a small business Google Developer Day 2010
  41. 41. Demo Screenshots Predicting apps for a small business Google Developer Day 2010
  42. 42. Prediction API CapabilitiesData• Input Features: numeric or unstructured text• Output: up to hundreds of discrete categories, or continuous valuesTraining• Many machine learning techniques• Automatically selected• Performed asynchronouslyAccess from many platforms:• Web app from Google App Engine• Apps Script (e.g. from Google Spreadsheet)• Desktop app Google Developer Day 2010
  43. 43. Prediction API - PricingFree Quota in trial/development• 100 predictions/day, 5MB trained/day• Available for 6 monthsPaid 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
  44. 44. Google Storage - AvailabilityLimited 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
  45. 45. Google BigQueryInteractive analysis of large datasets in Googles cloud Google Developer Day 2010
  46. 46. Introducing Google BigQuery – Googles 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 Google Developer Day 2010
  47. 47. Why BigQuery?Working with large data is a challenge Google Developer Day 2010
  48. 48. Many Use Cases ... Trends Interactive Spam Detection Tools Web Network Dashboards Optimization Google Developer Day 2010
  49. 49. 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
  50. 50. Using BigQueryAnother simple three step process... Upload your raw data to 1. Upload Google Storage Import raw data into 2. Import BigQuery table 3. Query Perform SQL queries on table Google Developer Day 2010
  51. 51. Writing QueriesCompact 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
  52. 52. BigQuery via RESTGET /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
  53. 53. Security and PrivacyStandard Google Authentication• Client Login• OAuth• AuthSubHTTPS support• protects your credentials• protects your dataRelies on Google Storage to manage access Google Developer Day 2010
  54. 54. Large Data Analysis ExampleWikimedia Revision HistoryWikimedia Revision history data from:http://download.wikimedia.org/enwiki/latest/enwiki-latest-pages-meta-history.xml.7z Google Developer Day 2010
  55. 55. Using BigQuery ShellPython DB API 2.0 + B. Clappers sqlcmdhttp://www.clapper.org/software/python/sqlcmd/ Google Developer Day 2010
  56. 56. BigQuery from a Spreadsheet Google Developer Day 2010
  57. 57. Google Fusion Tables Google Developer Day 2010
  58. 58. 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
  59. 59. Google Fusion Tables Google Developer Day 2010
  60. 60. Google Visualization API Google Developer Day 2010
  61. 61. 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
  62. 62. 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
  63. 63. Example: Weather data Google Developer Day 2010
  64. 64. Google Refine Google Developer Day 2010
  65. 65. 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
  66. 66. Google Refine Google Developer Day 2010
  67. 67. 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 Googles 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
  68. 68. More informationhttp://code.google.com/apis/http://code.google.com/more/table/ Google Developer Day 2010
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×