SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
Introducción a las nuevas tecnologías
       de plataforma cloud de Google

  APIs de Almacenamiento, Predicción y BigQuery




Chris Schalk
Sept 23rd, 2010
Agenda


  Google Storage for Developers
  Prediction API & BigQuery
Google Storage for Developers
       Store your data in Google's 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
Sample Use Cases

 Static content hosting
 e.g. static html, images, music, video

 Backup and recovery
 e.g. personal data, business records

 Sharing
 e.g. share data with your customers

 Data storage for applications
 e.g. used as storage backend for Android, AppEngine, Cloud
 based apps

 Storage for Computation
 e.g. BigQuery, Prediction API
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 Storage Technical Details

  RESTful API
    Verbs: GET, PUT, POST, HEAD, DELETE
    Resources: identified by URI
    Compatible with S3

  Buckets
     Flat containers

  Objects
     Any type
     Size: 100 GB / object

  Access Control for Google Accounts
     For individuals and groups
  Two Ways to Authenticate Requests
     Sign request using access keys
     Web browser login
Performance and Scalability


   Objects of any type and 100 GB / Object
   Unlimited numbers of objects, 1000s of buckets

   All data replicated to multiple US data centers
   Leveraging Google's worldwide network for data delivery

   Only you can use bucket names with your domain names
   Read-your-writes data consistency
   Range Get
Security and Privacy Features


   Key-based authentication
   Authenticated downloads from a web browser

   Sharing with individuals
   Group sharing via Google Groups

   Access control for buckets and objects
   Set Read/Write/List permissions
Demo


 Tools:
    GS Manager
    GSUtil

 Upload / Download
Google Storage usage within Google



            Google                        Google
           BigQuery                    Prediction API




                                Haiti Relief Imagery      USPTO data




                Partner Reporting     Partner Reporting
Some Early Google Storage Adopters
Google Storage - Pricing


     Storage
         $0.17/GB/Month

     Network
        Upload - $0.10/GB
        Download
           $0.15/GB Americas / EMEA
           $0.30/GB APAC

     Requests
        PUT, POST, LIST - $0.01 / 1000 Requests
        GET, HEAD - $0.01 / 10000 Requests
Google Storage - Availability


   Limited preview in US currently
      100GB free storage and network from Google per account
      Sign up for waitlist at http://code.google.com/apis/storage/

   Note: Non US preview available on case-by-case basis
Google Storage Summary


   Store any kind of data using Google's cloud infrastructure
   Easy to Use APIs

   Many available tools and libraries
     gsutil, GS Manager
     3rd party:
         Boto, CloudBerry, CyberDuck, JetS3t, and more
Google Prediction API
Google's prediction engine in the cloud
Introducing the Google Prediction API


   Google's sophisticated machine learning technology
   Available as an on-demand RESTful HTTP web service
How does it work?

                     "english" The quick brown fox jumped over the
The Prediction API             lazy dog.
finds relevant
                     "english" To err is human, but to really foul things
features in the                up you need a computer.
sample data during   "spanish" No hay mal que por bien no venga.
training.
                     "spanish" La tercera es la vencida.


The Prediction API
later searches for   ?          To be or not to be, that is the
                                question.
those features
                     ?          La fe mueve montañas.
during prediction.
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   Counselling

                           ... and many more ...
A Prediction API Example
Automatically categorize and respond to emails by language


 Customer: ACME Corp, a multinational organization
 Goal: Respond to customer emails in their language
 Data: Many emails, tagged with their languages

 Outcome: Predict language and respond accordingly
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
Step 1: Upload
Upload your training data to Google Storage
Training data: outputs and input features
Data format: comma separated value format (CSV)

 "english","To err is human, but to really ..."
 "spanish","No hay mal que por bien no venga."
 ...
 Upload to Google Storage
 gsutil cp ${data} gs://yourbucket/${data}
Step 2: Train
Create a new model by training on data

To train a model:

POST prediction/v1.1/training?data=mybucket%2Fmydata

Training runs asynchronously. To see if it has finished:
GET prediction/v1.1/training/mybucket%2Fmydata

{"data":{
  "data":"mybucket/mydata",
  "modelinfo":"estimated accuracy: 0.xx"}}}
Step 3: Predict
   Apply the trained model to make predictions on new data
POST prediction/v1.1/query/mybucket%2Fmydata/predict
{ "data":{
   "input": { "text" : [
    "J'aime X! C'est le meilleur" ]}}}
Step 3: Predict
   Apply the trained model to make predictions on new data
POST prediction/v1.1/query/mybucket%2Fmydata/predict

{ "data":{
   "input": { "text" : [
    "J'aime X! C'est le meilleur" ]}}}

{ data : {
 "kind" : "prediction#output",
 "outputLabel":"French",
 "outputMulti" :[
   {"label":"French", "score": x.xx}
   {"label":"English", "score": x.xx}
   {"label":"Spanish", "score": x.xx}]}}
Step 3: Predict
   Apply the trained model to make predictions on new data

import httplib

header = {"Content-Type" : "application/json"}#...put new data in JSON
format in params variable
conn = httplib.HTTPConnection("www.googleapis.com")conn.request
("POST",
 "/prediction/v1.1/query/mybucket%2Fmydata/predict", params, header)
print conn.getresponse()
Prediction API Capabilities
Data
   Input Features: numeric or unstructured text
   Output: up to hundreds of discrete categories

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
Prediction API v1.1 - new features


  Updated Syntax
  Multi-category prediction
     Tag entry with multiple labels
  Continuous Output
     Finer grained prediction rankings based on multiple labels
  Mixed Inputs
      Both numeric and text inputs are now supported

Can combine continuous output with mixed inputs
Google BigQuery
Interactive analysis of large datasets in Google's cloud
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
Why BigQuery?
Working with large data is a challenge
Many Use Cases ...




    Interactive                                 Trends
                               Spam
       Tools                                   Detection




                     Web               Network
                  Dashboards          Optimization
Key Capabilities of BigQuery

  Scalable: Billions of rows
  Fast: Response in seconds

  Simple: Queries in SQL

  Web Service
    REST
    JSON-RPC
    Google App Scripts
Using BigQuery
Another 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
Writing Queries

Compact subset of SQL
     SELECT ... FROM ...
     WHERE ...
     GROUP BY ... ORDER BY ...
     LIMIT ...;

Common functions
    Math, String, Time, ...

Statistical approximations
        TOP
        COUNT DISTINCT
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
Security and Privacy

Standard Google Authentication
   Client Login
   OAuth
   AuthSub

HTTPS support
  protects your credentials
  protects your data

Relies on Google Storage to manage access
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
Using BigQuery Shell
Python DB API 2.0 + B. Clapper's sqlcmd
http://www.clapper.org/software/python/sqlcmd/
BigQuery from a Spreadsheet
BigQuery from a Spreadsheet
Recap

  Google Storage
     High speed data storage on Google Cloud
  Prediction API
     Google's machine learning technology able to
     predict outcomes based on sample data
  BigQuery
     Interactive analysis of very large data sets
     Simple SQL query language access
Further info available at:

 Google Storage for Developers
    http://code.google.com/apis/storage
 Prediction API
    http://code.google.com/apis/prediction
 BigQuery
    http://code.google.com/apis/bigquery

Weitere ähnliche Inhalte

Was ist angesagt?

Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
confluent
 

Was ist angesagt? (20)

Ozone and HDFS’s evolution
Ozone and HDFS’s evolutionOzone and HDFS’s evolution
Ozone and HDFS’s evolution
 
2020 07-30 elastic agent + ingest management
2020 07-30 elastic agent + ingest management2020 07-30 elastic agent + ingest management
2020 07-30 elastic agent + ingest management
 
Compression Options in Hadoop - A Tale of Tradeoffs
Compression Options in Hadoop - A Tale of TradeoffsCompression Options in Hadoop - A Tale of Tradeoffs
Compression Options in Hadoop - A Tale of Tradeoffs
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
 
Interactive real time dashboards on data streams using Kafka, Druid, and Supe...
Interactive real time dashboards on data streams using Kafka, Druid, and Supe...Interactive real time dashboards on data streams using Kafka, Druid, and Supe...
Interactive real time dashboards on data streams using Kafka, Druid, and Supe...
 
Zabbix conference 2018v2
Zabbix conference 2018v2Zabbix conference 2018v2
Zabbix conference 2018v2
 
Introduction to Kafka and Zookeeper
Introduction to Kafka and ZookeeperIntroduction to Kafka and Zookeeper
Introduction to Kafka and Zookeeper
 
IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere concepts
 
Megastore: Providing scalable and highly available storage
Megastore: Providing scalable and highly available storageMegastore: Providing scalable and highly available storage
Megastore: Providing scalable and highly available storage
 
Scylla Summit 2022: The Future of Consensus in ScyllaDB 5.0 and Beyond
Scylla Summit 2022: The Future of Consensus in ScyllaDB 5.0 and BeyondScylla Summit 2022: The Future of Consensus in ScyllaDB 5.0 and Beyond
Scylla Summit 2022: The Future of Consensus in ScyllaDB 5.0 and Beyond
 
Using Kafka: Anatomy of the Flowable event registry
Using Kafka: Anatomy of the Flowable event registryUsing Kafka: Anatomy of the Flowable event registry
Using Kafka: Anatomy of the Flowable event registry
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
 
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
Ibm spectrum scale fundamentals workshop for americas part 4 Replication, Str...
 
Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
Architecture Patterns for Event Streaming (Nick Dearden, Confluent) London 20...
 
Building an open data platform with apache iceberg
Building an open data platform with apache icebergBuilding an open data platform with apache iceberg
Building an open data platform with apache iceberg
 
Metrics: where and how
Metrics: where and howMetrics: where and how
Metrics: where and how
 
USENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPFUSENIX Vault'19: Performance analysis in Linux storage stack with BPF
USENIX Vault'19: Performance analysis in Linux storage stack with BPF
 
Grafana introduction
Grafana introductionGrafana introduction
Grafana introduction
 
Transparent Data Encryption in PostgreSQL
Transparent Data Encryption in PostgreSQLTransparent Data Encryption in PostgreSQL
Transparent Data Encryption in PostgreSQL
 
Webinar: Detecting row patterns with Flink SQL - Dawid Wysakowicz
Webinar:  Detecting row patterns with Flink SQL - Dawid WysakowiczWebinar:  Detecting row patterns with Flink SQL - Dawid Wysakowicz
Webinar: Detecting row patterns with Flink SQL - Dawid Wysakowicz
 

Andere mochten auch

Andere mochten auch (7)

An indepth look at Google BigQuery Architecture by Felipe Hoffa of Google
An indepth look at Google BigQuery Architecture by Felipe Hoffa of GoogleAn indepth look at Google BigQuery Architecture by Felipe Hoffa of Google
An indepth look at Google BigQuery Architecture by Felipe Hoffa of Google
 
Google Cloud Spanner Preview
Google Cloud Spanner PreviewGoogle Cloud Spanner Preview
Google Cloud Spanner Preview
 
AWS Athena vs. Google BigQuery for interactive SQL Queries
AWS Athena vs. Google BigQuery for interactive SQL QueriesAWS Athena vs. Google BigQuery for interactive SQL Queries
AWS Athena vs. Google BigQuery for interactive SQL Queries
 
Redshift VS BigQuery
Redshift VS BigQueryRedshift VS BigQuery
Redshift VS BigQuery
 
Google BigQuery for Everyday Developer
Google BigQuery for Everyday DeveloperGoogle BigQuery for Everyday Developer
Google BigQuery for Everyday Developer
 
Google BigQuery
Google BigQueryGoogle BigQuery
Google BigQuery
 
Google BigQuery - Features & Benefits
Google BigQuery - Features & BenefitsGoogle BigQuery - Features & Benefits
Google BigQuery - Features & Benefits
 

Ähnlich wie Intro to new Google cloud technologies: Google Storage, Prediction API, BigQuery

Google cloud platform
Google cloud platformGoogle cloud platform
Google cloud platform
rajdeep
 
Architecting for change: LinkedIn's new data ecosystem
Architecting for change: LinkedIn's new data ecosystemArchitecting for change: LinkedIn's new data ecosystem
Architecting for change: LinkedIn's new data ecosystem
Yael Garten
 

Ähnlich wie Intro to new Google cloud technologies: Google Storage, Prediction API, BigQuery (20)

Introduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologiesIntroduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologies
 
Introduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesIntroduction to Google's Cloud Technologies
Introduction to Google's Cloud Technologies
 
Intro to Google's Cloud Technologies
Intro to Google's Cloud TechnologiesIntro to Google's Cloud Technologies
Intro to Google's Cloud Technologies
 
Building Apps on Google Cloud Technologies
Building Apps on Google Cloud TechnologiesBuilding Apps on Google Cloud Technologies
Building Apps on Google Cloud Technologies
 
Quick Intro to Google Cloud Technologies
Quick Intro to Google Cloud TechnologiesQuick Intro to Google Cloud Technologies
Quick Intro to Google Cloud Technologies
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud Technologies
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud Technologies
 
Google cloud platform
Google cloud platformGoogle cloud platform
Google cloud platform
 
The Big Picture and How to Get Started
The Big Picture and How to Get StartedThe Big Picture and How to Get Started
The Big Picture and How to Get Started
 
Microsoft Build 2023 Updates – Copilot Stack and Azure OpenAI Service (Machin...
Microsoft Build 2023 Updates – Copilot Stack and Azure OpenAI Service (Machin...Microsoft Build 2023 Updates – Copilot Stack and Azure OpenAI Service (Machin...
Microsoft Build 2023 Updates – Copilot Stack and Azure OpenAI Service (Machin...
 
Google Cloud for Data Crunchers - Strata Conf 2011
Google Cloud for Data Crunchers - Strata Conf 2011Google Cloud for Data Crunchers - Strata Conf 2011
Google Cloud for Data Crunchers - Strata Conf 2011
 
GCCP Session 2.pptx
GCCP Session 2.pptxGCCP Session 2.pptx
GCCP Session 2.pptx
 
File Repository on GAE
File Repository on GAEFile Repository on GAE
File Repository on GAE
 
Big dataarchitecturesandecosystem+nosql
Big dataarchitecturesandecosystem+nosqlBig dataarchitecturesandecosystem+nosql
Big dataarchitecturesandecosystem+nosql
 
Big Data Driven At Eway
Big Data Driven At Eway Big Data Driven At Eway
Big Data Driven At Eway
 
Building what's next with google cloud's powerful infrastructure
Building what's next with google cloud's powerful infrastructureBuilding what's next with google cloud's powerful infrastructure
Building what's next with google cloud's powerful infrastructure
 
A fresh look at Google’s Cloud by Mandy Waite
A fresh look at Google’s Cloud by Mandy Waite A fresh look at Google’s Cloud by Mandy Waite
A fresh look at Google’s Cloud by Mandy Waite
 
Architecting for change: LinkedIn's new data ecosystem
Architecting for change: LinkedIn's new data ecosystemArchitecting for change: LinkedIn's new data ecosystem
Architecting for change: LinkedIn's new data ecosystem
 
Strata 2016 - Architecting for Change: LinkedIn's new data ecosystem
Strata 2016 - Architecting for Change: LinkedIn's new data ecosystemStrata 2016 - Architecting for Change: LinkedIn's new data ecosystem
Strata 2016 - Architecting for Change: LinkedIn's new data ecosystem
 
Modern Thinking área digital MSKM 21/09/2017
Modern Thinking área digital MSKM 21/09/2017Modern Thinking área digital MSKM 21/09/2017
Modern Thinking área digital MSKM 21/09/2017
 

Mehr von Chris Schalk

Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
Chris Schalk
 
App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010
Chris Schalk
 
What is Google App Engine
What is Google App EngineWhat is Google App Engine
What is Google App Engine
Chris Schalk
 
App engine devfest_mexico_10
App engine devfest_mexico_10App engine devfest_mexico_10
App engine devfest_mexico_10
Chris Schalk
 

Mehr von Chris Schalk (20)

Google App Engine Overview and Update
Google App Engine Overview and UpdateGoogle App Engine Overview and Update
Google App Engine Overview and Update
 
How to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the CloudHow to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the Cloud
 
Building Kick Ass Video Games for the Cloud
Building Kick Ass Video Games for the CloudBuilding Kick Ass Video Games for the Cloud
Building Kick Ass Video Games for the Cloud
 
GDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloudGDD 2011 - How to build kick ass video games for the cloud
GDD 2011 - How to build kick ass video games for the cloud
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest Features
 
Google App Engine's Latest Features
Google App Engine's Latest FeaturesGoogle App Engine's Latest Features
Google App Engine's Latest Features
 
Building Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the CloudBuilding Multi-platform Video Games for the Cloud
Building Multi-platform Video Games for the Cloud
 
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
 
Introduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesIntroduction to Google's Cloud Technologies
Introduction to Google's Cloud Technologies
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
 
Introduction to Google Cloud Platform Technologies
Introduction to Google Cloud Platform TechnologiesIntroduction to Google Cloud Platform Technologies
Introduction to Google Cloud Platform Technologies
 
Google Cloud Technologies Overview
Google Cloud Technologies OverviewGoogle Cloud Technologies Overview
Google Cloud Technologies Overview
 
Introducing App Engine for Business
Introducing App Engine for BusinessIntroducing App Engine for Business
Introducing App Engine for Business
 
Google App Engine for Business 101
Google App Engine for Business 101Google App Engine for Business 101
Google App Engine for Business 101
 
What's new in App Engine and intro to App Engine for Business
What's new in App Engine and intro to App Engine for BusinessWhat's new in App Engine and intro to App Engine for Business
What's new in App Engine and intro to App Engine for Business
 
App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010App Engine Presentation @ SFJUG Sep 2010
App Engine Presentation @ SFJUG Sep 2010
 
What is Google App Engine
What is Google App EngineWhat is Google App Engine
What is Google App Engine
 
App engine cloud_comp_expo_nyc
App engine cloud_comp_expo_nycApp engine cloud_comp_expo_nyc
App engine cloud_comp_expo_nyc
 
App engine devfest_mexico_10
App engine devfest_mexico_10App engine devfest_mexico_10
App engine devfest_mexico_10
 
App Engine Overview Cloud Futures Publish
App Engine Overview Cloud Futures PublishApp Engine Overview Cloud Futures Publish
App Engine Overview Cloud Futures Publish
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Kürzlich hochgeladen (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

Intro to new Google cloud technologies: Google Storage, Prediction API, BigQuery

  • 1.
  • 2. Introducción a las nuevas tecnologías de plataforma cloud de Google APIs de Almacenamiento, Predicción y BigQuery Chris Schalk Sept 23rd, 2010
  • 3. Agenda Google Storage for Developers Prediction API & BigQuery
  • 4. Google Storage for Developers Store your data in Google's cloud
  • 5. 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
  • 6. Sample Use Cases Static content hosting e.g. static html, images, music, video Backup and recovery e.g. personal data, business records Sharing e.g. share data with your customers Data storage for applications e.g. used as storage backend for Android, AppEngine, Cloud based apps Storage for Computation e.g. BigQuery, Prediction API
  • 7. 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
  • 8. Google Storage Technical Details RESTful API Verbs: GET, PUT, POST, HEAD, DELETE Resources: identified by URI Compatible with S3 Buckets Flat containers Objects Any type Size: 100 GB / object Access Control for Google Accounts For individuals and groups Two Ways to Authenticate Requests Sign request using access keys Web browser login
  • 9. Performance and Scalability Objects of any type and 100 GB / Object Unlimited numbers of objects, 1000s of buckets All data replicated to multiple US data centers Leveraging Google's worldwide network for data delivery Only you can use bucket names with your domain names Read-your-writes data consistency Range Get
  • 10. Security and Privacy Features Key-based authentication Authenticated downloads from a web browser Sharing with individuals Group sharing via Google Groups Access control for buckets and objects Set Read/Write/List permissions
  • 11. Demo Tools: GS Manager GSUtil Upload / Download
  • 12. Google Storage usage within Google Google Google BigQuery Prediction API Haiti Relief Imagery USPTO data Partner Reporting Partner Reporting
  • 13. Some Early Google Storage Adopters
  • 14. Google Storage - Pricing Storage $0.17/GB/Month Network Upload - $0.10/GB Download $0.15/GB Americas / EMEA $0.30/GB APAC Requests PUT, POST, LIST - $0.01 / 1000 Requests GET, HEAD - $0.01 / 10000 Requests
  • 15. Google Storage - Availability Limited preview in US currently 100GB free storage and network from Google per account Sign up for waitlist at http://code.google.com/apis/storage/ Note: Non US preview available on case-by-case basis
  • 16. Google Storage Summary Store any kind of data using Google's cloud infrastructure Easy to Use APIs Many available tools and libraries gsutil, GS Manager 3rd party: Boto, CloudBerry, CyberDuck, JetS3t, and more
  • 17. Google Prediction API Google's prediction engine in the cloud
  • 18. Introducing the Google Prediction API Google's sophisticated machine learning technology Available as an on-demand RESTful HTTP web service
  • 19. How does it work? "english" The quick brown fox jumped over the The Prediction API lazy dog. finds relevant "english" To err is human, but to really foul things features in the up you need a computer. sample data during "spanish" No hay mal que por bien no venga. training. "spanish" La tercera es la vencida. The Prediction API later searches for ? To be or not to be, that is the question. those features ? La fe mueve montañas. during prediction.
  • 20. 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 Counselling ... and many more ...
  • 21. A Prediction API Example Automatically categorize and respond to emails by language Customer: ACME Corp, a multinational organization Goal: Respond to customer emails in their language Data: Many emails, tagged with their languages Outcome: Predict language and respond accordingly
  • 22. 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
  • 23. Step 1: Upload Upload your training data to Google Storage Training data: outputs and input features Data format: comma separated value format (CSV) "english","To err is human, but to really ..." "spanish","No hay mal que por bien no venga." ... Upload to Google Storage gsutil cp ${data} gs://yourbucket/${data}
  • 24. Step 2: Train Create a new model by training on data To train a model: POST prediction/v1.1/training?data=mybucket%2Fmydata Training runs asynchronously. To see if it has finished: GET prediction/v1.1/training/mybucket%2Fmydata {"data":{ "data":"mybucket/mydata", "modelinfo":"estimated accuracy: 0.xx"}}}
  • 25. Step 3: Predict Apply the trained model to make predictions on new data POST prediction/v1.1/query/mybucket%2Fmydata/predict { "data":{ "input": { "text" : [ "J'aime X! C'est le meilleur" ]}}}
  • 26. Step 3: Predict Apply the trained model to make predictions on new data POST prediction/v1.1/query/mybucket%2Fmydata/predict { "data":{ "input": { "text" : [ "J'aime X! C'est le meilleur" ]}}} { data : { "kind" : "prediction#output", "outputLabel":"French", "outputMulti" :[ {"label":"French", "score": x.xx} {"label":"English", "score": x.xx} {"label":"Spanish", "score": x.xx}]}}
  • 27. Step 3: Predict Apply the trained model to make predictions on new data import httplib header = {"Content-Type" : "application/json"}#...put new data in JSON format in params variable conn = httplib.HTTPConnection("www.googleapis.com")conn.request ("POST", "/prediction/v1.1/query/mybucket%2Fmydata/predict", params, header) print conn.getresponse()
  • 28. Prediction API Capabilities Data Input Features: numeric or unstructured text Output: up to hundreds of discrete categories 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
  • 29. Prediction API v1.1 - new features Updated Syntax Multi-category prediction Tag entry with multiple labels Continuous Output Finer grained prediction rankings based on multiple labels Mixed Inputs Both numeric and text inputs are now supported Can combine continuous output with mixed inputs
  • 30. Google BigQuery Interactive analysis of large datasets in Google's cloud
  • 31. 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
  • 32. Why BigQuery? Working with large data is a challenge
  • 33. Many Use Cases ... Interactive Trends Spam Tools Detection Web Network Dashboards Optimization
  • 34. Key Capabilities of BigQuery Scalable: Billions of rows Fast: Response in seconds Simple: Queries in SQL Web Service REST JSON-RPC Google App Scripts
  • 35. Using BigQuery Another 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
  • 36. Writing Queries Compact subset of SQL SELECT ... FROM ... WHERE ... GROUP BY ... ORDER BY ... LIMIT ...; Common functions Math, String, Time, ... Statistical approximations TOP COUNT DISTINCT
  • 37. 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
  • 38. Security and Privacy Standard Google Authentication Client Login OAuth AuthSub HTTPS support protects your credentials protects your data Relies on Google Storage to manage access
  • 39. 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
  • 40. Using BigQuery Shell Python DB API 2.0 + B. Clapper's sqlcmd http://www.clapper.org/software/python/sqlcmd/
  • 41. BigQuery from a Spreadsheet
  • 42. BigQuery from a Spreadsheet
  • 43. Recap Google Storage High speed data storage on Google Cloud Prediction API Google's machine learning technology able to predict outcomes based on sample data BigQuery Interactive analysis of very large data sets Simple SQL query language access
  • 44. Further info available at: Google Storage for Developers http://code.google.com/apis/storage Prediction API http://code.google.com/apis/prediction BigQuery http://code.google.com/apis/bigquery