Databases & storage
Indexes, durability, transactions, buffer management and query execution.
Indexes
Finding records on disk and in memory.
B+ tree
lowBalanced high-fanout search tree with all values in linked leaves; the default on-disk index for point lookups and range scans.
LSM-tree
mediumBuffer writes in memory, flush them as immutable sorted files and merge in the background; turns random writes into sequential I/O.
Inverted index
mediumMap each term to a sorted, compressed list of the documents containing it; the core of full-text search and other fast set queries.
sstable
Planned.
LSM compaction
mediumCompaction policies (leveled, tiered, time-window, FIFO) decide which sorted files to merge and when, trading write, read and space amplification and purging tombstones.
lsm merge operator
Planned.
b link tree
Planned.
copy on write b tree
Planned.
bulk loading
Planned.
secondary indexes
Planned.
zone maps
Planned.
star tree index
Planned.
triple store indexing
Planned.
Index-free adjacency
lowStore each node's edges as direct references to neighbouring records, so a hop costs O(degree) pointer reads instead of an index search; know when plain tables or CSR beat it.
Durability & recovery
Surviving crashes without losing data.
Write-ahead log
lowAppend each change to a checksummed sequential log and fsync it before touching data pages; the basis of crash durability in nearly every database.
ARIES recovery
mediumThree-pass crash recovery (analysis, redo, undo) for steal/no-force buffer pools; repeats history, then rolls back losers with compensation log records.
Group commit
lowLet concurrent committers share one log write and fsync; throughput grows with concurrency while each commit still waits at most about two fsyncs.
crash consistency ordering
Planned.
Point-in-time recovery
mediumPeriodic base backups plus a continuously archived change log let you rebuild the state as of any instant, then branch from there.
copy on write snapshots
Planned.
data scrubbing
Planned.
Log-structured storage
mediumMake the log the store: append every write, point an index at the newest copy, reclaim space by copying live records forward.
journaled state revert
Planned.
Transactions & concurrency control
Isolation between concurrent transactions.
MVCC
mediumKeep timestamped versions of each row so readers see a consistent snapshot without blocking writers; the default concurrency control in modern databases.
Two-phase locking
lowTransactions take shared/exclusive locks and release none until they stop acquiring; strict 2PL holds them to commit and guarantees serializability.
Optimistic concurrency control
lowRun transactions without locks, record what they read, and validate at commit that nothing changed; fastest when conflicts are rare.
serializable snapshot isolation
Planned.
Deadlock detection
lowFind transactions waiting on each other in a cycle (wait-for graph), abort one, or order lock requests so no cycle can form.
gapless sequence numbers
Planned.
upsert merge
Planned.
read write splitting
Planned.
Buffer management
Caching pages between disk and memory.
Data layout
How records are arranged on disk.
Columnar storage
mediumStore each column contiguously so analytic scans read only the columns they need, compress well and run as tight SIMD loops.
Slotted pages
lowFixed-size page layout for variable-length records, with a slot array growing from the front and data from the back; stable record IDs despite compaction.
columnar file format
Planned.
columnar memory format
Planned.
Chunked array storage
mediumCut an N-dimensional array into a regular grid of independently compressed blocks, so a slice read touches only the overlapping blocks and writers to different blocks run in parallel.
table snapshot manifests
Planned.
merge on read deletes
Planned.
delta main storage
Planned.
Time partitioning
lowCut a table into fixed-interval time blocks so queries read only overlapping blocks and retention drops a whole block as one metadata change.
Time-series chunk storage
mediumStore each series as immutable compressed chunks of consecutive samples behind a small time index; a range query decodes only the chunks that overlap it.
Content-addressed storage
lowStore each blob under the hash of its bytes: immutable, deduplicated by construction, self-verifying on every read, and composable into Merkle trees.
git object model
Planned.
Query execution
Running queries over the data.
Vectorized execution
mediumQuery operators pass batches of about 1-2K values per column instead of single tuples, amortizing interpretation overhead and enabling tight SIMD loops.
Hash join
lowBuild a hash table on the smaller input's join key and probe it with every row of the larger one; the linear-time workhorse for equi-joins.
Sort-merge join
lowSort both inputs on the key, then advance two cursors in lockstep and emit matching runs; cheap on sorted inputs and good for range joins.
hash aggregation
Planned.
volcano iterator model
Planned.
morsel driven parallelism
Planned.
late materialization
Planned.
query compilation
Planned.
window functions
Planned.
worst case optimal join
Planned.
Query optimization
Choosing and rewriting plans before they run.
query optimizer
Planned.
cardinality estimation
Planned.
cascades query optimization
Planned.
join order dynamic programming
Planned.
subquery decorrelation
Planned.
relational algebra
Planned.
predicate pushdown
Planned.
partition pruning
Planned.
federated query planning
Planned.
Schema & migrations
Evolving schemas and data models without downtime.
schema evolution
Planned.
schema migration versioning
Planned.
schema migration diff
Planned.
expand contract migration
Planned.
online schema change
Planned.
Chunked backfill
lowProcess old data in bounded key ranges, one short transaction per chunk, with a saved checkpoint and idempotent writes, so a crash resumes and live traffic never waits.
schema inference
Planned.
entity attribute value schema
Planned.
closure table
Planned.
bitemporal data
Planned.
Flash, disks & redundancy
Managing flash and disk space and surviving lost devices.
flash translation layer
Planned.
flash garbage collection
Planned.
wear leveling
Planned.
zoned storage
Planned.
declustered raid
Planned.
erasure coding
Planned.
local reconstruction codes
Planned.
extent trees
Planned.
free space management
Planned.
inode file layout
Planned.
Data pipelines
Moving, versioning and tracing data between systems.
Change data capture
mediumDecode the database's own commit log into row-change events in commit order, with a resume position, so any consumer can mirror the data exactly.
incremental view maintenance
Planned.
snapshot diffing
Planned.
slowly changing dimensions
Planned.
data lineage tracking
Planned.
column level lineage
Planned.
dataset versioning
Planned.
event schema normalization
Planned.
realtime query subscriptions
Planned.
point in time join
Planned.
Rollup aggregation
mediumFold raw events into one mergeable partial aggregate per time bucket and dimension key, then merge fine buckets into coarser ones, so long ranges read few rows and stay exact.
Product analytics
Turning event streams into users, sessions, funnels and attributed conversions.
sessionization
Planned.
funnel analysis
Planned.
cohort retention
Planned.
identity resolution
Planned.
semantic layer
Planned.
Entity resolution
mediumDecide which records describe the same real-world thing: block to cut the pair space, score pairs with a probabilistic model, cluster the matches transitively.
conversion attribution
Planned.
File & document formats
Parsing and writing common container and document formats.
tar archive format
Planned.
warc format
Planned.
pdf object model parsing
Planned.
json streaming parser
Planned.
XML Streaming Parser
lowTokenize XML into start, text and end events in constant memory, so a few fields can be extracted from huge, broken or hostile documents.
icalendar format
Planned.
mime parsing
Planned.
email threading
Planned.