Database
182 terms in this category
ACID (Atomicity, Consistency, Isolation, Durability)
ACID is the four guarantees a reliable database makes about transactions. It is the reason you trust a bank's database with your money.
Algolia
Algolia is the luxury hotel of search engines.
Atomicity
Atomicity means a transaction is all-or-nothing — like an atom that cannot be split.
Auto Increment
Auto increment means the database assigns the next ID number automatically every time you insert a row.
B-Tree Index
A B-Tree index is the default index type that most databases create when you say CREATE INDEX.
Backup
A database backup is a saved copy of your data at a specific point in time.
Bigtable
Bigtable is Google's original big data table that stores trillions of rows across thousands of machines. It's like a spreadsheet that ate a whole data cent
Bitmap Index
A bitmap index stores a bit array for each distinct value in a column.
Bloom Filter
A Bloom filter is a tiny data structure that can tell you 'definitely NOT here' or 'maybe here.
CAP Theorem
The CAP theorem says a distributed database can only guarantee two out of three things: Consistency (everyone sees the same data), Availability (every requ...
CRUD (Create, Read, Update, Delete)
CRUD is the four things you can do to data: Create it, Read it, Update it, Delete it. Literally every app ever made is just CRUD in a trenchcoat.
CTE (Common Table Expression)
A CTE is a temporary named result set you define at the top of a query with the WITH keyword. It's like giving a subquery a name so you can reuse it.
Cascade Delete
A cascade delete is when deleting one thing automatically deletes everything connected to it — like pulling a thread that unravels the whole sweater.
Cassandra
Cassandra is like a massive library system spread across every city in the world.
ChromaDB
You're hacking together an AI chatbot at 2am. You don't want to provision cloud infrastructure.
ClickHouse
Imagine filing cabinets where instead of storing one person's whole file together, you store ALL salaries in one drawer, ALL names in another.
CockroachDB
CockroachDB is the database that just won't die, like the bug it's named after.
Column
A column is a category of data in a table. If a table is a spreadsheet, columns are the headers: 'Name', 'Email', 'Age'.
Column Store
Instead of storing all of a row's data together (name, age, email), a column store keeps all the names together, all the ages together, and all the emails...
Column-Level Encryption
Column-level encryption encrypts specific sensitive columns (like SSN, credit card numbers) while leaving everything else readable.
Columnar Storage
Columnar storage saves data column by column instead of row by row. All the ages together, all the names together, all the emails together.
Common Table Expression
A CTE (WITH clause) lets you name a sub-query and use it later, like setting a variable in your SQL.
Compaction
Compaction is the database's housekeeping process that merges and cleans up files on disk.
Composite Index
A composite index indexes multiple columns together, like a phone book sorted by last name AND first name. The order matters a lot.
Conflict Resolution
Conflict resolution is what happens when two database servers both change the same thing at the same time and then try to sync up.
Connection Pooler
A connection pooler keeps a stash of open database connections ready to go, like having pre-heated ovens in a bakery.
Consensus Algorithm
A consensus algorithm is how a group of servers democratically agree on something even when some of them are flaky or unreachable.
Consistency
Consistency in databases means a transaction can only bring the database from one valid state to another valid state.
Covering Index
A covering index includes all the columns your query needs, so the database never has to look at the actual table.
DELETE
DELETE removes rows from a table. It is the 'Delete' in CRUD. Like UPDATE, you MUST use a WHERE clause — without it, you delete everything in the table.
Data Lake
A data lake is a massive storage dump where you throw every piece of data in its raw format. CSV files, JSON, images, logs, whatever.
Data Lakehouse
A data lakehouse is what you get when a data lake and a data warehouse have a baby.
Data Warehouse
A data warehouse is where all your company's data goes to be analyzed.
Database
A database is like a super-organized filing cabinet for your app's data.
Database Branching
Database branching is Git for your database.
Database Functions
Instead of doing math in your application code and sending results to the database, Database Functions let the database do its own math. It's like telling
Database Lock
A database lock prevents multiple transactions from messing with the same data at the same time. It's like a bathroom door lock — one person at a time.
Database Proxy
A database proxy sits between your app and your database like a bouncer at a club.
Database Trigger
A database trigger is an automatic response to data changes. Insert a row? The trigger fires. Update a column? The trigger fires.
Default Value
A default value is what gets stored in a column when you do not provide one.
Denormalization
Denormalization is the intentional opposite of normalization — you duplicate data to make queries faster.
Dirty Read
A dirty read happens when you read data from another transaction that hasn't committed yet.
Distributed Database
A distributed database spreads your data across multiple computers that work together like a hive mind. If one server dies, the others pick up the slack.
Document Store
A document store lets you throw JSON blobs into your database like tossing papers into a filing cabinet.
Dragonfly
Dragonfly looked at Redis and said 'I can be 25x faster using modern multi-threaded architecture instead of Redis's single-threaded approach.' It's a drop-
Drizzle ORM
Drizzle is a TypeScript ORM that feels like writing SQL, not fighting an abstraction layer.
DuckDB
DuckDB is like SQLite's nerdy data analyst sibling. Instead of handling web app transactions, it's built for crunching numbers — analytical queries on mill
Durability
Durability means once the database says 'committed', your data is saved forever — even if the server crashes right after.
ELT
ELT is ETL's modern cousin. Instead of transforming data before loading it, you dump the raw data into your warehouse first, then use the warehouse's beefy...
ERD (Entity Relationship Diagram)
An ERD is a visual map of your database — boxes for tables, lines showing how they connect.
ETL
ETL stands for Extract, Transform, Load. You extract data from sources, transform it (clean, reshape, calculate), then load it into your warehouse.
Eager Loading
Eager loading fetches all the related data you need upfront in one or two queries.
Edge Database
What if your database was everywhere, like coffee shops? Edge Databases put copies of your data at the edge of the network — close to users — so reads are
Embedded Database
An embedded database lives inside your app like a roommate who never leaves. No separate server, no network calls, just a file on disk.
Entity Relationship Diagram
Same as ERD — a visual picture of your database tables and how they connect. Lines between boxes show relationships.
Eventual Consistency
Eventual consistency means 'give it a moment and everything will match up.' You write data to one server, and the other servers will get the update...
Explain Plan
EXPLAIN shows you exactly how the database plans to execute your query — which indexes it uses, how many rows it scans, where it is slow.
Expression Index
An expression index indexes the result of a function or calculation, not just a raw column. Want to search by lowercase email? Index LOWER(email).
FULL JOIN
FULL JOIN returns everything from both tables regardless of whether there is a match. Rows with no match on either side get NULLs.
FaunaDB
FaunaDB is a globally distributed database that's obsessed with correctness.
Field
A field is the intersection of a row and a column — the actual single value stored there. If the 'email' column for user #5 says 'alex@example.
Firebase
Firebase is Google's all-in-one backend-as-a-service. Database, auth, hosting, functions — all pre-built and hosted.
Firestore
Firestore is Google's cloud database that updates your app in real-time when data changes.
First Normal Form (1NF)
First Normal Form (1NF) is the most basic normalization rule: each column should hold one value, not a list.
Flyway
Flyway is a migration tool that keeps track of every change you've ever made to your database schema, in order, like a meticulous diary.
Foreign Key
A foreign key is how you link two tables together. If an 'orders' table has a 'user_id' column pointing to the 'users' table, that is a foreign key.
Full-Text Search
Full-text search lets you search through text like Google does, not just exact matches.
Fuzzy Search
Fuzzy search finds results even when the search term is misspelled or slightly off. Search for 'jonh' and it still finds 'John.
GIN Index
A GIN index is like a book's index on steroids. Instead of pointing to one location per entry, each entry can point to thousands of locations.
GROUP BY
GROUP BY collapses rows with the same value into one group so you can count, sum, or average them. 'How many orders per user?' — GROUP BY user_id.
GiST Index (Generalized Search Tree)
A GiST index is PostgreSQL's Swiss Army knife for indexing weird data types.
Graph Database
A graph database stores data as dots connected by lines, like a social network map.
HAVING
HAVING is like WHERE but it filters after GROUP BY aggregation. WHERE filters rows before grouping, HAVING filters groups after.
Hard Delete
A hard delete is permanent deletion — the data is gone, like shredding a document. No undo, no recovery (unless you have backups).
Hash Index
A hash index uses a hash function to map values directly to locations, making equality lookups insanely fast.
INNER JOIN
INNER JOIN only returns rows where there is a match in BOTH tables. If a user has no orders, they do not appear in the result.
INSERT
INSERT is how you add new data to a database. It is the 'Create' in CRUD. You tell it which table, which columns, and what values to put in.
In-Memory Database
An in-memory database keeps everything in RAM instead of on disk, which makes it absurdly fast.
Index
A database index is like the index in the back of a book. Without it, the database reads every single row to find what you want.
InfluxDB
InfluxDB is obsessed with time. It's built specifically for data that comes with a timestamp, like server metrics, sensor readings, or how many times you r...
Isolation
Isolation means concurrent transactions do not see each other's in-progress changes.
JOIN
JOIN combines rows from two tables based on a related column.
Junction Table
A junction table (also called a join table) is the middle table you create to represent a many-to-many relationship.
Key-Value Store
A key-value store is the simplest database possible. You give it a name (key) and some data (value), and it remembers it.
KeyDB
KeyDB is another 'Redis but better' contender — it's a multi-threaded fork of actual Redis code. While Redis stubbornly stayed single-threaded, KeyDB said
LEFT JOIN
LEFT JOIN returns all rows from the left table, and matching rows from the right table.
LIMIT
LIMIT caps how many rows a query returns. If your users table has 1 million rows, you do not want to load all of them at once.
LSM Tree
An LSM tree (Log-Structured Merge Tree) is a write-optimized data structure. It buffers writes in memory, then flushes them to disk in sorted chunks.
LanceDB
LanceDB stores your vectors in a special columnar file format called Lance, which is like Parquet took steroids specifically for AI workloads.
Lazy Loading
Lazy loading waits until you actually access related data before fetching it. Access post.author and only then does it query the database.
LibSQL
LibSQL is an open-source fork of SQLite that adds the features developers kept wishing SQLite had — like replication, network access, and the ability to ru...
Liquibase
Liquibase is like Flyway's more enterprise cousin who wears a suit. It tracks database changes but uses XML, YAML, or JSON changelogs instead of raw SQL.
Locking
Locking prevents two transactions from modifying the same data at the same time. It is how databases coordinate concurrent access.
MVCC
MVCC (Multi-Version Concurrency Control) is how databases let multiple users read and write at the same time without stepping on each other's toes.
Many-to-Many
Many-to-Many means rows on both sides can relate to many rows on the other side. Students can enroll in many courses, and courses can have many students.
MariaDB
MariaDB is MySQL's open-source twin that split off when Oracle bought MySQL and people got nervous.
Materialized View
A materialized view is a saved query result that the database keeps on disk like a cheat sheet.
Meilisearch
You want search-as-you-type on your app. Elasticsearch needs a PhD and a dedicated ops team. Meilisearch needs about 15 minutes and one Docker command.
Migration
A migration is a versioned script that modifies your database schema — adding a column, creating a table, changing a type.
MongoDB
MongoDB stores data as JSON-like documents instead of tables. Imagine instead of rows in a spreadsheet, you store entire JavaScript objects.
Multi-Primary Replication
Multi-primary replication lets multiple database servers accept writes simultaneously, like having multiple cashiers at a store.
MySQL
MySQL is the OG popular kid of databases. Half the internet runs on it (WordPress, Facebook originally).
N+1 Query
N+1 is when your code runs 1 query to get a list of things, then runs 1 more query for EACH thing on the list.
Neo4j
Neo4j stores data as a web of connections, like a conspiracy board with red strings connecting everything.
Neon
Neon is serverless Postgres — it scales to zero when nobody's using it and wakes up instantly when they do. Like Vercel for databases.
NewSQL
NewSQL databases are like someone said 'I want the scale of NoSQL but I refuse to give up SQL and transactions.
NoSQL (Not Only SQL)
NoSQL databases are like the rebellious cousin of regular databases.
Normalization
Normalization is the process of organizing your database to reduce data duplication.
Not Null
NOT NULL is how you tell the database 'this field MUST have a value — you cannot leave it blank.
OFFSET
OFFSET skips a number of rows before starting to return results.
OLAP
OLAP is all about analyzing huge amounts of data to answer business questions. 'What were total sales by region last quarter?' That's an OLAP query.
OLTP
OLTP is the workhorse behind every app. It handles fast, small transactions: creating users, placing orders, updating profiles.
ORDER BY
ORDER BY sorts your query results. Add DESC for newest first, ASC for oldest first.
One-to-Many
One-to-Many means one row in Table A can relate to many rows in Table B. One user can have many orders. One post can have many comments.
One-to-One
One-to-One is a relationship where one row in Table A corresponds to exactly one row in Table B. Like a user and their profile — one user, one profile.
Optimistic Locking
Optimistic locking assumes conflicts are rare so it does not lock the row upfront. Instead, it adds a version number to each row.
PACELC Theorem
PACELC is CAP theorem's smarter older sibling. It says: during a Partition, choose between Availability and Consistency.
Partial Index
A partial index only indexes the rows you actually care about. Why index 10 million archived orders when you only ever query the active ones?
Partitioning
Partitioning divides a huge table into smaller physical chunks while still appearing as one table to your queries.
Pessimistic Locking
Pessimistic locking assumes conflicts are likely, so it locks the row the moment you read it. Nobody else can touch it until you are done.
PgBouncer
PgBouncer is a lightweight connection pooler that sits in front of PostgreSQL and recycles database connections like a good environmentalist.
Phantom Read
A phantom read is when you run the same query twice in a transaction and get different rows back because another transaction inserted or deleted matching r...
Pinecone
Normal databases store facts. Pinecone stores vibes — mathematical representations of meaning. Ask it 'what's similar to this sentence?
Pivot Table
Pivot Table means two different things. In Laravel/PHP it is just another name for a junction table.
Point-in-Time Recovery
Point-in-time recovery (PITR) is the database equivalent of a time machine. Accidentally deleted all your users at 3:47 PM?
PostgreSQL
PostgreSQL (just say 'Postgres') is the Swiss Army knife of databases.
Primary Key
A primary key is the unique ID that every row in a table must have. Like a social security number for your data — no two rows can have the same one.
Qdrant
Qdrant is the Rust programmer's answer to vector databases — same idea as Pinecone but written in a language that would make a C developer cry tears of joy...
Query Optimization
Query optimization is the art of making slow database queries fast. Add an index here, rewrite that subquery as a JOIN, fetch only the columns you need.
QuestDB
QuestDB is the time-series database that said 'hold my beer' and started ingesting millions of rows per second on a single machine. It uses memory-mapped f
RIGHT JOIN
RIGHT JOIN is LEFT JOIN's mirror image — it returns all rows from the right table, and matching rows from the left.
Raft
Raft is a consensus algorithm designed to be understandable, unlike its predecessor Paxos which requires a PhD to read.
Read Committed
Read Committed is the default isolation level in PostgreSQL.
Read Replica
A read replica is a copy of your database that only handles read queries.
Record
A record is just another word for a row. Developers love having five words for the same thing to keep you on your toes.
Recursive Query
A recursive query is SQL that calls itself, like a mirror reflecting a mirror.
Redis Cluster
One Redis server is fast. But what if you need MORE fast? Redis Cluster takes your data and spreads it across multiple Redis nodes using hash slots, like d
Redis Pub/Sub
Redis Pub/Sub is like a PA system in a building. You shout a message on a channel, and everyone listening to that channel hears it instantly. But if nobody
Redis Streams
Redis looked at Kafka and said 'I can do that too, but simpler and from memory!' Redis Streams is an append-only log data structure built right into Redis.
Replication
Replication means automatically copying your database to one or more other servers in real time. If the main server dies, a replica takes over.
Restore
Restore means loading a backup back into your database to undo something bad. Someone deleted the production data? Restore from last night's backup.
Row
A row is one single record in a table. If your users table has 500 users, it has 500 rows.
Row-Level Security
Row-level security (RLS) is like having an invisible bouncer on every table row.
SELECT
SELECT is how you ask a database to give you data. It is the 'Read' in CRUD.
SQL (Structured Query Language)
SQL is the language you use to talk to a database. You ask it things like 'give me all users who signed up this week' and it actually does it.
SQLite
SQLite is a database that lives entirely in a single file on your computer. No server, no setup, just a file.
SQLite in Production
Everyone says 'SQLite is just for dev and mobile!' but then you realize it powers more active deployments than all other databases combined. It's a databas
Schema
A database schema is the blueprint of your database — which tables exist, what columns they have, what types they are, and how they relate to each other.
Schema Migration Tool
A schema migration tool is version control for your database.
Seed
Seeding a database means filling it with initial or test data automatically.
Serializable Isolation
Serializable isolation is the strictest mode where the database pretends all transactions run one after another, even though they're actually concurrent.
Sharding
Sharding splits your database across multiple servers based on some rule — like user IDs 1-1M on server 1, 1M-2M on server 2.
Snapshot Isolation
Snapshot isolation gives each transaction a frozen-in-time photo of the database.
Snowflake Schema
A snowflake schema is a star schema where the dimension tables are normalized into sub-tables, making the diagram look like a snowflake.
Soft Delete
A soft delete is marking something as deleted without actually deleting it — like putting a file in the trash instead of permanently deleting it.
Star Schema
A star schema organizes your warehouse like a star.
Stored Procedure
A stored procedure is a named program you write in SQL (and sometimes a procedural language) that lives inside the database.
Strong Consistency
Strong consistency means the moment you write something, everyone everywhere immediately sees the updated value. No 'give it a sec' nonsense.
Subquery
A subquery is a query inside a query. The inner query runs first and its result is used by the outer query.
Supabase
Supabase is Firebase but built on real Postgres SQL. You get a database, auth, file storage, and real-time updates all in one.
SurrealDB
SurrealDB is the Swiss Army chainsaw of databases. It does documents, graphs, key-value, AND relational all in one.
Table
A database table is exactly like a spreadsheet tab. It has columns across the top (name, email, age) and rows going down (one per person).
Time-Series Database
A time-series database is laser-focused on data that happens over time. Temperature readings, stock prices, server CPU usage, your heart rate, whatever.
TimescaleDB
You love Postgres but your IoT sensors are writing a million rows per second.
Transaction
A transaction groups multiple database operations into one all-or-nothing bundle. Either ALL of them succeed, or NONE of them happen.
Trigger
A trigger is code that the database runs automatically when something happens — like automatically updating an 'updated_at' timestamp whenever a row change...
Trigram Search
Trigram search breaks words into groups of three letters and matches them fuzzily.
Turso
Turso is SQLite at the edge — it puts tiny, fast SQLite databases close to your users around the world and keeps them in sync.
Two-Phase Commit
Two-phase commit (2PC) is like a wedding ceremony for distributed transactions. Phase 1: 'Do you all agree to commit?' Every node says yes or no.
Typesense
Your users can't spell. Neither can mine. Typesense doesn't care — it finds 'machien leraning' and returns 'machine learning' results anyway.
UPDATE
UPDATE changes existing data in a table. It is the 'Update' in CRUD.
UUID (Universally Unique Identifier)
A UUID is a randomly generated ID that looks like 'a3b4c5d6-...' and is practically guaranteed to be unique across the entire universe.
Unique Constraint
A unique constraint tells the database 'no two rows can have the same value in this column.
Upstash
Upstash gives you Redis and Kafka as serverless services with per-request pricing.
Valkey
When Redis changed its license and everyone panicked, the Linux Foundation said 'don't worry, we'll fork it!' Valkey is that community fork — it's Redis bu
Vector Clock
A vector clock is a way for distributed servers to figure out the order of events without a synchronized wall clock.
View
A view is a saved query that looks and acts like a table.
WHERE
WHERE is how you filter which rows a query affects. Without WHERE, SELECT returns everything, UPDATE changes everything, DELETE deletes everything.
Weaviate
Other vector databases expect you to show up with embeddings pre-made, like bringing your own food to a restaurant.
Wide Column Store
A wide column store is like a spreadsheet where every row can have completely different columns, and there can be billions of them.
Window Function
Window functions let you do calculations across related rows without collapsing them into one result like GROUP BY does.
Write-Ahead Log
The Write-Ahead Log (WAL) is the database's diary. Before changing any actual data, the database first writes what it's about to do in this log.