Google Cloud Overview

 

Public cloud providers offer services that fall into four broad categories.

Compute resources -

  1. Virtual Machines (VM) - It's like having a server in your office.
  1. Google Kubernetes Engine - Managed cluster of docker containers.
  1. Serverless computing - 2 serverless computing options 1. App engine and 2. Cloud functions
 

App engine are used for situations like running website Backend, for example, running a NodeJS server.

Cloud Functions - used for running code in response to an event such as uploading an image.

 

Storage

  • Object storage -

Use of storage for objects and blobs. Objects are files stored as group in buckets rather than a conventional file system. Object storage is not limited by the size of disks or solid-state drives (SSDs) attached to a server.

Known as cloud storage and is accessible from both servers running in GCP and other devices with internet.

 
  • File storage -

hierarchical file system based on NFS storage system. Decoupled from any specific VMs. Suitable for applications that require operating system like file access.

 
  • Block storage -
    • uses a fixed-size data structure called a block to organize data. You can either install file systems on top of block storage, or run applications that access blocks directly. Some relational databases access blocks directly rather than through file systems. Attached to VMs and can either be ephemeral (exist and store data only for the life of VM) or persistent (continues to exist even after VM is detached or shuts down).

      These disks are good options when you have data that you want available independent of the lifecycle of a VM, and support fast operating system– and file system–level access.

       

      Object storage takes longer to retrieve data compared to Block storage. Also Object Storage doesn't support file system-level access and have to be used with high level protocol like HTTP. Advantage of Object storage is that it can store large volumes of data.

 
  • Caches - in-memory data stores that maintain fast access to data. Latency - time it takes to retrieve data. in-memory stores are designed to have latency in submillisecond.
    • Advantages -

    • Fast to retrieve data.
    •  

      Disadvantages -

    • Memory more expensive than SSD.
    • Its volatile and can lose the data.
    • Can run out of sync with source of truth.
 
 

Networking

Devices within GCP can have both internal and external addresses. Internal addresses are accessible only to services in your internal GCP network. Your internal GCP network is defined as a virtual private cloud (VPC). External addresses are accessible from the Internet.

2 types of external IP - static (extended period) or ephemeral (attached to VMs and released with VM is stopped)

 

Specialized services

  • AutoML, a machine learning service
  • Cloud Natural Language, a service for analyzing text
  • Cloud Vision for analyzing images
  • Cloud Inference API, a service for computing correlations over time-series data