WESLEY CHUN: This is Wesley Chun.
Here at Google, we want our tools
enable you to build the next killer app.
In this Dev Byte, I'll introduce you
to the core components of the Google Cloud Platform.
I'll also share a few stories of what others have already
done with it.
Once you're familiar with the services in the platform,
you too will be able to leverage Google's vast resources,
experience, and performance to help you power that great idea.
At Google, we're always thinking about scale and innovation.
Here are some of the research papers
we published over the years, many of which
have led directly to services in the Google Cloud Platform.
You already know Google Search and YouTube and Gmail services
which run at Google scale.
What if you could take advantage of that kind of scale
and innovation that's behind our services,
but for your big idea?
This is where the Google Cloud Platform steps in,
enabling you to take your app to the power of Google.
What is the Google Cloud Platform?
Well, in brief, it's a collection
of services organized into three categories-- compute, storage,
and application services to help your apps scale.
Pick and choose which services you want,
and only pay for the resources you use.
We begin with the compute category,
where we've got Google App Engine and Google Compute
Engine.
Let's start with Compute Engine, our computing solution
at the infrastructure as a service layer.
Create Linux virtual machines and connect to them
like any other network computer.
They feature persistent disks with snapshotting, live virtual
machine migration to get around those pesky maintenance
periods, networking and firewalls, load balancing,
and regional zones for high availability
to implement your technology stack and solve
really big problems with.
How big?
Well, here's an example of really big data.
Let's say you were going to get married
and you wanted a huge wedding and needed prepare invitations
for your closest 15 billion friends
and relatives, which is roughly 7 billion guests from Earth
and the other eight from other planets.
Well, anyway, let's just say we had that
and you were organizing the addresses, roughly about
100 bytes each, for the envelopes.
But to make sure there aren't any duplicates,
you would need to sort all of that data.
Well, the MapR did something similar last year
using Hadoop on Compute Engine to set the minute sort record.
Their app was able to take 15 billion 100 byte directors,
meaning 1.5 terabytes, or 1,500 gigs of data,
and sorted it all in less than a minute.
On top of this, they were able to reproduce this result
consistently across multiple runs and different cluster
configurations.
Click the link for more details.
The other Compute solution is App Engine,
our platform as a service offering.
This solution is for developers who want to be more hands off
and don't want to deal that much with system administration.
So components living between the hardware and your app,
such as the operating system, the database, and web servers,
are all managed by Google so you can focus on your app.
Build your solution using familiar languages
like Java, Python, PHP, and Go.
Upload your code and let Google take care of everything else.
Snapchat is a highly popular photo sharing service
which serves more than 350 million photos or snaps a day.
What got them to scale to where they are today?
Google App Engine.
Google Cloud Storage is for your massive data repository.
Store any number of files and blobs of virtually any size
securely with controlled access to users,
as well as apps and other Google Cloud Platform services that
can process and analyze your data.
Song Pop is this generation's name
that tune app running on Google App Engine.
Along with Google Cloud Storage, their app
serves more than 18 terabytes a day of music
to its 80 million users.
Google Cloud SQL is the fully managed, highly available
relational database service in the cloud.
Create, configure, and use MySQL databases,
but host it in our data centers.
The standard MySQL wire protocol lets
you connect to Cloud SQL from any app anywhere.
And it also supports JDBC.
Free yourself from replication, encryption, patch management,
and backups so that you can focus on your solution.
One of its best features is its pay
per use model, where customers can opt to pay for a database
only when it's being used, and then for inexpensive storage
the rest of the time.
Google Cloud Data Store is the place
to store your NoSQL key value data.
It's a fully managed service which automatically handles
sharding, replication, and scaling.
The storage mechanism is schemeless and supports either
object based or SQL-like queries as well as Asset transactions.
Cloud Datastore is the same technology
that powers App Engine's native data store.
Google BigQuery is an exciting, massive data analysis
tool that lets you make queries on data sets
that were previously impossible, difficult, or significantly
time consuming-- data sets such as baby names for the last four
decades, every word written by Shakespeare,
or global historical weather station data since 1929.
Using BigQuery, you can analyze terabytes of data
in mere seconds using SQL-like queries.
Here in BigQuery's interactive web console,
you can issue ad hoc queries against your data set.
Take it for a test drive with one of these free public data
sets today, such as the ones I just mentioned
or this particular query, which lets
you pull up the five top most updated Wikipedia pages.
Google Cloud Endpoints enables you to seamlessly
create APIs or application endpoints to your service,
allowing you to more easily add new web or mobile front
ends to your existing service.
It's the glue between your app's front end
clients and your back end.
Your web or mobile clients connect
to Cloud Endpoints via Google App Engine
so that you can go back end services there or have
skeleton codes sitting on App Engine for those requests
to your actual back end, whether it
be on Compute Engine or other external servers.
Security via data authorization is automatically
handled between the front ends and App Engine.
There is even a tool that generates border plate client
side code in Java for Android, Objective C for iOS,
and JavaScript for generic web access
to help you get going even faster.
So that's the Google Cloud Platform--
what it's done for others and most importantly, what
it can do for you.
We look forward to helping you with your next big idea.