CDL - Core Services Flashcards
What is Compute Engine?
A compute service that allows you to deploy scalable, high-performance VMs.
What is App Engine (PaaS)? What is its Benefit?
A compute service that allow you to BUILD and DEPLOY apps on FULLY MANAGED, highly SCALABLE, platform.
Pro - No management of underlying infra
What is Google Kubernetes Engine (GKE)? Its benefit?
An open-source compute service that allows you to DEPLOY, SCALE, and MANAGE containerized apps on Kubernetes.
Pro:
Portable - can run on any cloud platform
Reliable
efficient
secure
What is a Sole-Tenant Node (Dedicated VM)? Its benefit?
A compute service that allows you to separate your instances physically separated WITH its own hardware.
Pro:
Meet compliance, licensing, and management needs
What is Bare Metal Solution? Benefit? What are its use case?
A compute service that provides hardware to run specialized workloads / mission critical
Pro: low latency
What are Cloud GPUs? Benfit?
A compute service that allows you to apply GPUs to your workloads
Pro:
They are specialized processors that perform more intensive tasks, ML, scientific computing, and 3D visualization.
What is Cloud Functions (FaaS)? Benefit?P
Compute service that allows you to create serverless, single-purpose functions that respond to events.
What is the diff between Preemptible and Shielded VMs?
Preemptible - Deployable, short-lived instances suited for batch jobs and fault-tolerant workloads.
Pro - affordable
Shielded - Deploy hardened (more secure) VMs on GCP
What are the two environments you can launch App Engine?
Standard and Flexible
What is App Engine Flexible?
An environment that uses fully managed containers.
Parameters:
Starts in minutes
Runs with Docker Containers on Compute Engine VMs
Scale - Designed for predictable, consistent traffic
Instances - must have at least one instance running
Languages - Supports generally any language and custom runtime.
Pricing - Billable vCPUs, memory, and disks
SSH - yes, can debug
Back ground processes - permitted
What App Engine Standard?
An environment using serveless compute
Parameters:
Starts in seconds
Runs in sandbox (?)
Scale - designed to rapid scaling in response to traffic spikes
Instances - Can scale to ZERO running
Languages - Supports specific, no custom runtime.
Pricing - Billable hours
SSH - no, cannot debug.
Background processes - no
When considering App Engine, can an application use both flexible and standard environments?
Yes
Is App Engine well suited to applications that are designed using a microservice architecture?
Yes
Application Versioning is a feature of Compute App Engine, define it.
AV refers to the different stages of development in an apps lifecycle such as development, test, staging, and production environments.
Traffic tunneling is a feature of Compute App Engine, define it.
TT allows you to route incoming requests to different app versions, such as A/B test versions, and to incrementally rollout features.
What application diagnostic tools come featured with Compute App Engine??
Cloud Monitoring + Cloud Logging = for health and performance
Cloud debugger + error reporting = for diagnosing and fixing bugs quickly
What app security features does Compute App Engine come with?
App Engine Firewall - to define access rules
SSL/TLS certificates by default - Web-traffics
What are container images? Why are they used?
They are a set of instructions that tell a compute service how to build and run a software application.
A container image can run on any platform, thus making it easy to deploy and manage apps.
Analogy: Think if a recipe that you can share, even if someone else has different ingredients and kitchen tools (cloud platforms/services )
Define SSL/TLS certificates? Explain their benfits.
SSL/TLS certificates are like digital handshakes between websites - they help ensure that the website you visit is really who it says it to be. They keep your information safe.
A website with a SSL/TLS certificate will have the green lock bar on the address bar.
Pro;
- Send your information encrypted to a website, and only if they are confirmed, is your information shared. Think of your signal as an outgoing locked box that can only be opened with they right key (identity confirmed)
- Important for banking/online shopping
What are the 5 GCP Container services?
- GKE
- Cloud Build
- Artifact Registry
- Container Registry
- Cloud Run
What function do Pods service within GKE?
A pod is a group of one or more containers with SHARED resources, such as storage, network, and other settings.
Kubernetes is ideal for what type of archiecture?
Best suited for micro-service architectures where a company has tens to hundres of services they need to manage.
What is a micro-services architecture? Provide an example.
A microservice architecture is like a LEGO set. It is a way of breaking down applications into smaller, independent functional pieces.
Eg: One microservice may manage:
1) inventory
2)Orders
3) payment processing
4) shipments.
Are micro-services independent of each other?
Yes, each microservice is independent and contains its own code, DB, and server.
How do microservices communicate with each other?
Via APIs
What are the benefits of microservices?
1) Scalability - independently scale up/down depending on which service is receiving the most traffic.
2) Resilience - BC MS are independent, if one fails, the others keep working. Hence they are RELIABLE and FAULT TOLERANT
3) Agility - independence of MC make it easy to make changes to services and iterate faster.
What are GCPs core Database services?
- BigQuery (on exam) -
- Cloud Spanner -
- Cloud Bigtable
- Cloud SQL
- Firestore (exam - realtime)
What is a database? Provide an example.
A DB is a data-store that stores semi- and structured data stored online.
DBs are like big box of toys
Use cases:
1. Website - to store client data
2. Online store - store product/inventory information
3. Videogames - player data, stats, metrics, etc.
What is a Data Warehouse? Function?
A DW is a relational datastore (structured DV) designed for ANALYTICAL workloads that are generally COLUMN-ORIETNED.
Column aggregation
What is a data store? Are DBs simple or complex DS? Why?
A general term to describe a system that stores data.
DBs are complex DS bc they requires FORMAL DESIGN and MODELING techniques.
Define and provide examples of the two database types.
1) Relational DB - Stores STRUCTURED data that represents tabular data (tables, rows, columns). Data is row or column oriented.
Non-relational DB - Stores UNSTRUCTURED data that may/may not resemble tabular data.
What a 3 primary functionalities of DBs?
- Data retrieval - via language to query
- Specialized modeling strategies - to optimize retrieval for unique use cases
- Data transformation - turn data into useful structures or reports.
What are the 3 key functionalities of DWs?
1) Aggregation - they group data (eg, to find totals or averages)
- Designed to be HOT - they return queries fast
- Infrequently accessed - Meant to generate reports weekly, not in real-time, for business/user reports.
What is a key value DB?
KVDB is a type of non-relational DB (NoSQL) that uses simple key-value methods to store data.
KV are like dictionaries that store key (term) and value (definition) data.
Eg:
Key (ID) –> Value (name)
Key (animal type) –> value (dog)
What are characteristics of key-value stores?
- Dumb and fast - theylack features like relationships, indexes, or aggregation.
- Scalable
Use the library analogy to describe the difference between SQL and NoSQL DBs.
Imagine you have a library and you want to store and retrieve books according to SQL or NoSQL parameters.
SQL - Name, author, data, genre (relational)
NoSQL- Could use document storage to store cover images, table of contents, and excerpts (non-relationanl)
What are key SQL characteristics?
Fixed schema - data structures are defined in advance.
What is a document store?
A DS is a NoSQL DB that stores documents as its primary data structure. A subclass of key-value stores
Think - XML, JSON, etc.
What are the differences between SQL and NoSQL?
Structure Query Language - A programming language used to interact with relational DBs
NoSQL - Use to describe non-relational DBs
What are key use cases of SQL DBs?
1) Online transaction Processing (OLTP) - e-commerce and banking
2) Data Warehouse - to store/analyze historical data
3) CRM - To track customer interactions and sales leads.
What are two key characteristics of NoSQL DBs?
Flexible schema - structure of data can be changed more easily.
Use a variety of data models - key-value, document, graph DBs
What are key use cases for NoSQL DBs?
- Content Management Systems (CMS) - used to store and manage content of websites/blogs
- Real time analytics operations
3) Mobile apps - to store and retrieve data quickly.
Define Serverless cloud services. Benefits?
A way to build and run applications without having to worry about servers or infrastructure.
Pros:
-fully managed
- Pay as you go
- Scale to zero
Provide a serverless cloud analogy
Restaurant - Imagine that you rent a shop – the location, tools, machinery (serverless) and you provide the recipes (code)
What are benefits of Serverless cloud offerings?
- Reduce operational overhead - less management
- Scalability - automatically.
- Cost saving - PAYG
What are 3 GCP Storage services?
- Block (persistent disk)
- File (filestore)
- Cloud Storage (object and serverless)
Identify the 4 available GCP Storage Classes (on exam).
What are their minimum storage durations?
- Storage (O day min)
- Nearline (30 day min)
- Coldline (90 days min)
- Archive (365 day min)
MSD - The minimum days a file is required to be stored before deletions to avoid charges.
What is Cloud Storage?
CS is a serverless object storage service – you do not have to worry about underlying disks, right-sizing, availability, or durability.
Files are called OBJECTS
Folders are cold FOLDERS
What are Cloud Storages key benefits?
Unlimited storage;
Global access;
Low latency;
Highly durable + Geo-redundant
Uniform experience
When would you use Cloud Storage Standard?
For FREQUENT using of files.
Note: least cost effective
When would you use Cloud Storage Nearline?
To access files about ONCE per month (cheaper than standard)
When would you use Cloud Storage Coldline?
Higher access cost, but lower at-rest cost (?)
When would you use Cloud Storage Archive?
For archiving, or legal retainment of files for 7 years, etc., accessed ANNUALLY.
Slow retrieval
Very cost effect
Intended to be rarely accessed.
Explain the difference and use case for Block and Object Storage.
Block - Data that is stored into fit-sized blocks (eg, 4kb or 9 kb), sequentially, each with a unique ID.
Think a bookshelf - where books are placed in their categories.
Use case: structured data
Running a DB, hosting a VM, or storing video files
Object - Data that is stored as self-contained units of any size.
Think Warehouse - no specific placement of items, but with their ID you can locate item.
Use case: unstructured data
Images, videos, or documents.
What is Virtual Private Cloud?
An isolated network on GCP where you can launch Google resources.
You choose a range of IPs using CIDR Range (?)
What is a subnet?
The partitioning of a larger network into multiple smaller segments.
Subnets need to have a smaller CIDR rank compared to a VPC.
Define Public and Private Subnets?
Public - a network that can reach the internet
Private - a network that cannot reach the internet.
Define Cloud Armor (networking)? (exam)
Cloud networking service to protect against DoS and web attackes.
Define Cloud Load Balancing?
Used to rout traffic and provide distributed access
Define Cloud Interconnect (exam)
Cloud networking service that allows you to connect your infra to Google’s cloud – on your terms, from anywhere.
Define Cloud VPN (exam)
Cloud networking service that allows you to extend your on-prem network to Googles network via an IPsec VPN tunnel.
Define Private Google Cloud. Use case.
PGC allows your instances to reach Google’s APIs/services via an INTERNAL IP, not a public IP.
When you want traffic to remain in network to avoid egress costs.
Define Shared VPC.
Allows you to connect resources between multiple projects by sharing subnets.
Define VPC network peering. Its benefits?
When you connect two VPC networks.
Reduce - latency, cost, and increase security.
Define the function of each App development environment.
Dev - the building, testing, and debugging of code.
Test - Code tested on separate servers to check before staging environment.
Staging - A replication environment of the production environment, used to further test app.
Production - When code is GA and used by end users.
What are the primary differences between at Database and a Data-warehouse?
Database - Designed to run real-time/operational workloads for transaction processing.
Data Warehouse - Designed to fun analytical workloads from aggregated historical data for complex reporting and business insights.
Databases and data warehouses tend to use what type of data?
DB - structured/relational. Current data. Operational/transactional needs.
DW - mix of un/structured data. Historical data that provide snapshots over time. Business intelligence.
Whats the difference between block, file, and cloud storage?
Block - used for structured data and applications.
File - ideal for unstructured data and file management.
Cloud - A mix of services that use either block or file storage.