As all of you might know, Cloud services can be broadly classified into three categories:
IaaS(Infrastructure as a Service), PaaS(Platform as a Service), and SaaS(Software as a Service).
What is GCP?
GCP (Google Cloud Platform) is an offering by Google that provides IaaS and PaaS services. SaaS services are also provided by Google in the form of G Suite(Google Workspace). Both G Suite and GCP as well as all other products from Google like Google Search, YouTube, etc. use the same Google infrastructure.
GCP provides several IaaS and PaaS services. We will go through some of the widely used services and understand them briefly. But before starting with the services let’s take a look at Regions and Zones.
Regions and Zones
Google Cloud resources are hosted in multiple locations worldwide. These locations are composed of zones and regions.
A region is a specific geographical location where you can host your resources. For eg. us-west1, europe-north, asia-south1 etc.
Zones represent a specific area within a region. Each region consists of three or more zones. For example, the us-west1 region denotes a region on the west coast of the United States that has three zones: us-west1-a, us-west1-b, and us-west1-c.
Now each Zone has one or more discrete clusters. Here, a cluster is a distinct physical infrastructure that is housed in a data center.
GCP Services in breif
Google provides a lot of services under GCP and we will take a look at some of them in brief. We can broadly classify the services into 4 categories:
Google Compute Engine-
Google Compute Engine is a secure and customizable compute service that lets you create and run virtual machine instances on Google’s infrastructure. It offers highly customizable and secure virtual machines which can handle any type of workload. Choose from the wide varieties of VMs optimized for Scale-out workloads (T2D), General purpose workloads (E2, N2, N2D, N1), Ultra-high memory (M2, M1), Compute-intensive workloads (C2), Most demanding applications and workloads (A2).
Google Kubernetes Engine-
Run containerized applications on a secured and managed Kubernetes service. It is a simple way to automatically deploy, scale, and manage Kubernetes. Now, it also comes with Autopilot mode(a hands-off, fully managed solution that manages your entire cluster’s infrastructure without worrying about configuring and monitoring).
Google App Engine-
Build highly scalable applications on a fully managed serverless platform. Custom runtimes allow you to bring any library and framework to App Engine by supplying a Docker container. Easily host different versions of your app, and easily create development, test, staging, and production environments. It lets you focus on your code while the fully managed environment of App Engine manages the infrastructure concerns.
Scalable pay-as-you-go functions as a service (FaaS) to run your code with zero server management. Run lightweight single-purpose functions on Google Cloud Functions. It is basically the lite version of App Engine.
Develop and deploy highly scalable containerized applications on a fully managed serverless platform. This is the lite version of Google Kubernetes Engine. It is a fully managed compute environment for deploying and scaling serverless containerized microservices without worrying about provisioning machines, configuring clusters, or autoscaling.
A fully managed, scalable NoSQL database service for large analytical and operational workloads with up to 99.999% availability. It handles millions of requests per second and provides consistent sub 10ms latency. It can be used for ad tech, fintech, digital media, IoT, etc. It offers seamless zero downtime scaling. It is designed with a storage engine for machine learning applications leading to better predictions.
Object storage for companies of all sizes. Store any amount of data. Retrieve it as often as you’d like. It offers seamless data transfer into Cloud Storage using Storage Transfer Service and Transfer Service for on-premises data. Save costs without sacrificing performance by storing data across different storage classes. Transition to lower-cost classes automatically using Object Lifecycle Management (OLM).
Cloud SQL is a service that delivers fully managed SQL databases in the cloud. Cloud SQL provides PostgreSQL, SQL Server, and MySQL databases. Cloud SQL does the time-consuming yet necessary tasks like applying patches and updates, managing backups, and configuring replications for you so that you can focus on building your applications. Cloud SQL uses standard wire protocols, hence you can connect from just about any application, anywhere.
Fully managed relational database with unlimited scale, strong consistency, and up to 99.999% availability. It is like the big brother of Cloud SQL. Cloud Spanner features all the benefits of relational semantics and SQL along with unlimited scaling capabilities. It provides high availability with zero scheduled downtime and online schema changes.
Easily develop rich applications using a fully managed, scalable, and serverless document database. It can scale effortlessly to meet any demand, with no maintenance. Using FireStore you can accelerate the development of mobile, web, and IoT apps with direct connectivity to the database. It also features built-in live synchronization and offline mode which makes it easy to develop real-time applications, fully customizable security and data validation rules to ensure the data is always protected.
It can integrate with Firebase and Google Cloud services like Cloud Functions and BigQuery
BigQuery is Google Cloud’s fully managed, petabyte-scale, and cost-effective analytics data warehouse that lets you run analytics over vast amounts of data in near real-time. With BigQuery, there’s no infrastructure to set up or manage, letting you focus on finding meaningful insights using standard SQL and taking advantage of flexible pricing models across on-demand and flat-rate options.
A fast, reliable way to land small records at any volume, an entry point for real-time and batch pipelines feeding BigQuery, data lakes and operational databases. Use it with ETL/ELT pipelines in Dataflow. It is a secure, scalable messaging or queue system. It features In-order and any-order at-least-once message delivery with pull and push modes. Secure data with fine-grained access controls and always-on encryption.
Dataflow is a fully managed, serverless, reliable service for running Apache Beam pipelines at scale on Google Cloud. Dataflow is used to scale processing of the input text and the extractions of the embeddings to store them in BigQuery. It provides unified stream and batch data processing that’s serverless, fast, and cost-effective. It is a fully managed data processing service. Supports automated provisioning and management of processing resources, horizontal autoscaling of worker resources to maximize resource utilization.
It is an OSS community-driven innovation with Apache Beam SDK.
A fully managed and highly scalable data discovery and metadata management service. Pinpoint your data with a simple yet powerful search interface. Using Data Catalog you can sync technical metadata automatically and create schematized tags for business metadata.
Tag sensitive data automatically, through Cloud Data Loss Prevention (DLP) integration.
Natural language API-
Derive insights from unstructured text using Google machine learning.The powerful pre-trained models of the Natural Language API empower developers to easily apply natural language understanding (NLU) to their applications with features including sentiment analysis, entity analysis, entity sentiment analysis, content classification, and syntax analysis.
Derive insights from your images in the cloud or at the edge with AutoML Vision or use pre-trained Vision API models to detect emotion, understand text, and more.Use machine learning to understand your images with industry-leading prediction and accuracy.
Train machine learning models that classify images by your custom labels using AutoML Vision.
Detect objects and faces, read handwriting, and build valuable image metadata with Vision API.
This was a brief look into some of the popular services in GCP. To find out more about each of these services and many other technical blogs check out: Knoldus Blogs