Welcome, everyone, to this lecture on why to choose the Google Cloud platform.
So before we conclude this section, let's take a moment to talk about cloud computing.
But specifically in the context of choosing the Google Cloud platform instead of just general cloud
computing topics, what advantages does Google Cloud platform specifically bring to our cloud computing
capabilities and needs?
Well, there's a couple of things we need to talk about.
First is how Google Cloud is organized and the variety of services that are offered to us under Google
Cloud Compute storage, big data and machine learning.
Then we'll talk about other really nice features that are provided by Google Cloud, including open
accessibility, the variety of security layers, pricing control and then budgets and billing.
So to begin, we need to understand that Google Cloud actually organizes the cloud into four main categories
compute storage, big data and machine learning.
And this is a rough organization.
There's going to be some services that don't exactly fit any of these, but for the wide variety of
services, you will see them fall into one of these four buckets.
So under compute services, you have things like compute engine, Kubernetes, engine, app engine and
cloud functions.
Under the organization category of storage, you have Bigtable, Cloud Storage, Cloud SQL, Cloud,
Spanner, Cloud DataStore.
Under Big Data, you have things like BigQuery Dataflow.
DataLab Things have to do with ingesting a lot of data.
And then under machine learning, you have kind of very specific APIs that will take in data and then
have some sort of prediction or output.
Things like natural language APIs, their Vision API speech API translate API and many more.
This is a really rapidly expanding part of Google Cloud.
Now, I should point out certain Google Cloud certifications actually focus a lot more on applying and
using specific categories of Google Cloud platform services.
For example.
As you may expect, the GCP Professional Data Engineer certification really focuses a lot more on the
big data and machine learning services and their use cases.
So if you're interested in any particular category of services, you may want to see if there's a certification
that actually dives a lot deeper into that particular category for our use cases here in this course
with the Associate cloud engineer, we're really looking for an overview and we're trying to understand
which services are used and which use cases.
So we'll be getting an overview and we really want to understand the basics of interacting with, managing
and using those services on Google Cloud as well as just overview aspects of using Google Cloud, like
the Identity and Access management system, or things like just analyzing the monitoring and usage of
your Google Cloud services.
Now, speaking of Google Cloud and why you may want to specifically choose GCP, often a big concern
when you're working with a cloud provider is something known as vendor lock in, whereby using a cloud
provider, it can actually become very difficult to migrate to another solution or provider, especially
as your needs change.
Now, fortunately, Google Cloud itself takes a very forward thinking approach for open accessibility,
and this really comes into terms with two factors.
So the first factor is that Google Cloud itself provides interfaces that can actually access other sources
or other cloud providers.
For example, the Looker Service, which is a data visualization service similar to something like Tableau
that's going to support 50 plus distinct dialects across multiple clouds.
Another example of this ability to access interfaces from other cloud providers is the Google Stackdriver,
which allows for monitoring across multiple cloud providers.
And this is a really nice feature to have because it allows you to actually use services from other
cloud providers.
And more importantly, if you're already using a cloud provider that is not Google Cloud, you can actually
continue to use it in, monitor it with Google Cloud platform as you begin to slowly add on capabilities
and resources specific to Google Cloud, you essentially get the best of both worlds.
And this is actually a really big feature of Google Cloud.
Sometimes this feature is known as multi cloud or hybrid cloud capabilities.
Now, another really great aspect of open accessibility for Google Cloud is the fact that there's a
lot of open source based alternatives for the Google Cloud platform based services, and those open
source alternatives are actually published and contributed to by Google themselves.
For example, Google TensorFlow is an open source library used for many machine learning applications,
and a lot of the machine learning APIs were actually built using TensorFlow, and you actually have
the capability to build out your own version of those services if you want to using the open source
version of TensorFlow.
Another example could be GCP, Bigtable, and that actually uses the open source database Apache HBase
as its interface.
And many of these services on Google Cloud have an open source alternative that is actually open source
by Google themselves, which is really nice in case you end up maybe striking it big with your company
and maybe you want to end up having your own customized solutions or your own scalable solutions based
off the same open source architecture that you're familiar with.
For the Google Cloud platform service that is analogous to it.
Now one of the key features of any cloud provider, but specifically Google Cloud is security.
And as you probably already know, Google itself runs many services that have over a billion users.
When you think about things like the number of people using Google Maps or using Gmail, and because
of that experience and technical expertise, they actually have a lot of different layers of security
built in throughout the entire cloud infrastructure.
So I want to take a high level overview of these different layers of security.
So at the very base, if we think about that data center, that's actually housing the physical servers,
we have hardware, infrastructure, security.
So these are things like physical security at the data centers.
Not just anybody can go up to a Google data center and just get in and just pull out a server.
So there's actually physical security and guards at these data centers.
And I should also mention that Google itself actually has its own custom secure hardware designs, including
the Titan chip that is specifically built with things like security and authentication in mind.
And there's also cryptographic signatures on GCP servers themselves.
So it all starts basically at that actual physical data center.
Security is top of mind there.
Then when we build out a new layer on top of this, it's going to be your service deployment security
when you're actually using a Google cloud service.
So essentially this means that if you're using different Google Cloud services that are communicating
between each other, the communication between those services is encrypted for added security.
Then we have user identity security.
This is actually a big part of the course later on, and there's a really robust identity and access
management system for identity verification, even with built in two factor authentication support.
And we'll talk about the IAM or IAM identity and access management for Google Cloud in a lot more detail
later on.
Then on top of this there's storage security.
So if your data is at rest, there's actually encryption of this stored data on Google Cloud.
And then on top of that, there's GCP, Internet security.
So I should mention that Google services themselves that want to make themselves available on the Internet
actually end up registering themselves with something known as GFW or Google Front End, which ends
up checking security certificates automatically for you.
And I should also mention that at Google Scale, a denial of service attacks are actually less effective.
Google themselves are already used to just billions of requests from just how large their services are.
And I should mention that GCP definitely has built in systems to monitor for denial of service attacks,
which, if you're not familiar with, is basically when a bunch of computers are hijacked and they try
to overwhelm a system.
But as you can imagine, it's pretty hard to overwhelm Google's own capabilities.
So wrapping all these layers themselves are just Google security practices in the terms of how they
think about the development and deployment of these layers and additional services to these layers.
So Google has a lot of practices around deployment, intrusion detection, software development practices
for libraries.
Basically, if you're working inside Google, you can only certain times use pre-approved libraries
that they know are secure.
When you're adding services to Google Cloud, there's even an external bug bounty.
So if somebody who does not work at Google actually ends up finding some sort of security flaw, Google
will pay them for that bounty so they can effectively fix it.
And there's a lot more that goes into this.
There's things like two factor authentication in order to push new code to Google Cloud services.
So there's a lot of Google security practices that are essentially wrapping around throughout this entire
layer.
A different security's.
And then finally, a critical part of effective cloud usage.
And your comfort and peace of mind is clear.
Pricing building and budget controls in Google Cloud Platform offers two main features in regards to
this, and one is fine grain or friendly pricing, and then the other one is clear billing and budget
practices.
So when we're talking about friendly pricing, we're just talking about the specifics that Google Cloud
platform services can sometimes offer, even sub hour billing increments.
So if you only are going to use maybe some compute for five more minutes, you're not going to end up
getting charged for a full hour even though you only end up using five minutes.
So there is sub hour billing for some of these services.
There's also discounts for sustained usage or committed usage.
And if you want, you can also highly customize virtual machine instances, which we'll talk about later
on for specific resource amounts so you can make sure you're only going to pay for what you want to
use.
And again, this will all make a lot more sense when we dive a lot deeper into managing our own budgets
and billings within the Google Cloud Monitor platform.
Okay.
Speaking of which, when we're talking about clear budgets and pricing, Google Cloud offers many tools
to help you understand your costs and to make sure you don't get an unexpected bill.
Let me give you just a quick overview of some of those tools.
The first one are budgets and alerts, and we'll do this ourselves later where we can actually set alerts
based on percent usage of some sort of predetermined monetary budget.
For example, you could have an alert sent to you when 90% of your $10,000 budget is used.
So when it hits $9,000 of usage, you'll get an alert.
I should also mention that there's actually built in alerts automatically done for you, typically at
things like 25 and 50% and 90%.
So you don't have to manually set these alerts if the default ones are enough for you.
So this is some peace of mind.
You're going to get those alerts and you can customize those alerts and set multiple alerts depending
on the percent usage.
Another key factor in clear budgets and pricing is the billing export capability.
So you can easily export billing information to different export files, including GCP based formats
such as BigQuery.
In case you want to analyze your billing data a more closely.
There's also visual reports.
So we'll see this later on.
There's actually clear graphics to monitor expenditure of GCP usage and you can do this by the day,
by the week, by the month, etcetera.
And what's also nice about that is there's forecasting and then there's different quotas.
So there's quotas like rate quotas.
That's requests per time limits.
So for example, you can only make something like 100 requests per second.
So that's a rate quota.
There's also allocation quotas.
There's like how many resources you can actually allocate per project, and there's built in limits
for certain services.
And I should mention that these quotas are actually duly designed to protect you from spending too much
money or money you didn't want to spend, and also to protect Google Cloud platform from potentially
harmful actors.
If someone is doing some extreme amount of requests, that's probably not natural, and it's to protect
Google Cloud data services as well from some sort of harmful actor and you to make sure you don't end
up paying for those multitude of requests.
However, I should mention that if you are in fact needing to use something that's higher than those
quotas, you can always contact Google platform support and they can raise your quotas for certain services
if you have the need for that.
Okay.
So as a quick review, we know Google Cloud platform specifics that they separate out into four major
categories of their services like Compute storage, big Data and ML.
We also know that they have a lot of features for open accessibility, things like the hybrid cloud
or multi cloud model.
There's a bunch of security layers and we also noticed a lot of features for pricing control and budgets
and billing.
And we're going to be exploring all of these in a lot more detail when we actually dive in to using
Google Cloud ourselves.
So up next, it's time to start getting some hands on practice.
We'll be setting up our Google Cloud platform account and get a tour of the platform.
Basic information about key concepts for GCP account Management.
All right, thanks.
And I'll see you at the next lecture.