Tech Fundamentals (pre-GTM Academy) Flashcards
What is a Consumption-Based Business
Usage Based model, allowing customer to access a product and pay for what they use.
What is a Database
Databases store data and make it accessible and secure.
A database is an organized collection of data, designed to allow efficient storage, retrieval, and manipulation of information, for consistent and reliable access.
Every application needs a Database.
What is a Computer
Every computer has Storage (permanent storage), Memory (temporary storage), and Processors.
What is Storage
Physical disk (HDD) or solid state (SSD), retains data at all times, and is the slowest part of a computer.
Memory
Used to load applications. Allows rapid switching between apps and tasks.
IT cannot be permanently stored on RAM. It’s a medium between storage and CPU.
It’s fast and expensive. Faster than permanent storage.
Compute (CPU)
Central Processing Unit, responsible for processing instructions received from users and applications.
Bigger CPU means faster processing of instructions.
There’s CPU’s, GPU’s, and other specialized processors
Operating System, Virtual Machine, and Containers
exist between hardware and apps. Makes software accessible.
OS: software that manages hardware, resources, and provides services for applications to run (macOS, Windows, Linux)
VM: Emulated Computer System that runs an OS and applications on virtualized hardware, isolated from the host system (e.g. Vmware, Parallels)
Containers: lightweight portable unit that packages an application and its dependencies to run consistently across different environments (e.g. Docker, Kubernetes)
Software Development Life Cycle (SDLC)
Framework to develop software: planning, creating, testing, deploying, and maintaining software
planning, code, build, test, release, deploy, operate, monitor
Programming Languages
Fortran (mainframes)
.NET (windows)
JavaScript (web development)
modern coding languages: Python, JavaScript, C++, PHP, R, Java, Go, MATLAB, etc.
Monoliths
big and predetermined, large teams (highly sequenced and orderly), development is very slow, with large and infrequent changes. UI, Business Logic, Data Access Layer all bundled together.
Microservices Architecture
Microservices Architecture (MSA): modern apps with modern coding languages split individual functionality into individual pieces.
Separate functions built individually.
Large app is composed of smaller apps.
Communicate via API’s.
Language independent.
Independent scaling.
Benefits: Iterate Quickly, Independent Scaling, and Less Risk to the Application
Application Programming Interface (API’s)
set of rules and tools that allow software applications to communicate with each other by exchanging data or performing functions. It’s an interface.
IaaS
IaaS: virtualized computing resources like servers, storage, networking, managed by the provider, allowing users to build/manage their own systems (e.g. AWS EC2)
PaaS
PaaS offers a platform with tools, framework, runtime environments for developing/deploying applications without managing underlying infrastructure (e.g. Google App Engine)
SaaS
delivers fully managed software application over internet, accessible via subscription, with no need for users to handle installation or maintenance (e.g. Gmail).
Benefits of Cloud Computing
(SNREC)
On-demand self service (simple interface for customer to provision whatever is needed. Typically no human intervention needed)
broad network access (services accessible through any physical location that has internet connection)
resource pooling - cloud provider has large pool of resources, allocates resources to customer, benefits of economies of scale
rapid elasticity - easily scale resources up and down very quickly.
consumption based pricing - pay only for what you use / reserve.
Cloud Regions & Availability Zones
Region is a geographic area where cloud providers data centers are located, containing multiple isolated facilities to host cloud services and resources (e.g. AWS US East-1 in Virginia)
Availability Zone (AZ) is an isolacted location within a cloud region, consisting of one or. more data centers with independent power, cooling, and networking to ensure HA and fault tolerance (e.g. US East 1a, US East 1b)
AZ are a subset of Cloud Regions. Cloud Region encompasses multiple availability Zones.
What is RDBMS / Relational Database
Relational database that stores data in tables and uses SQL to access the data.
The tables contain rows and columns that form highly “structured” data.
Schema
Schema defines the structure of a database.
It is a structured plan that defines how the data will be stored and accessed by the application and/or services.
For example, outlining the Tables (e.g. Customers) and their columns (Order Date), and the Rules (e.g. which columns are required, how tables connect) to keep the data consistent and accessible.
Examples of RDBMS
Oracle, Postgres, DB2, SQL Server, MySQL
What is a Table, Row, and Column
Table is a structured collection of data organized into rows and columns
Rows are a record of something
Columns are a specific attribute (e.g. “data about the data”) (it’s what describes what is contained in the rows)
What is Data Validity
Assurance that data is accurate, consistent, and confirms to defined rules, constraints, and formats. Enforcement thorugh data types, primary/foreign key constraints, and validation rules in the schema.
What is Data Normalization?
Process of Breaking down data into different tables
What are Joins
They bridge information between tables.