Database Internals and Storage Engines Questions

How a single database engine works internally, at the mechanism level: storage-engine architectures such as B-tree versus LSM-tree, on-disk page and buffer-pool management, write-ahead logging (WAL) and checkpointing, and MVCC's internal mechanics (version chains, vacuum and bloat, transaction-ID wraparound). Also covers compaction and its write/read amplification trade-offs, including engine-specific behavior such as Bloom filters and tombstone/TTL expiry in LSM-based stores like Cassandra, and hands-on design of simplified storage components: on-disk data layouts and indexes, WAL recovery routines, compaction strategies, and crash-safe log or queue formats. Tests depth beyond usage: why the engine behaves as it does, not how to operate, tune, recover, or scale it.

EasyTechnical
42 practiced

What is a B-tree index and why is it well-suited to range queries? Describe briefly how B-tree insert/delete operations maintain balance, why page splits occur, and how page splits can impact write amplification and concurrency.

HardSystem Design
51 practiced

You are asked to design a simple transactional storage engine prototype that supports ACID guarantees: describe the high-level architecture, core data structures (indexes, append-only log, memtable/sstable or pages), transaction logging (WAL), concurrency control approach (locking vs MVCC), checkpointing and background compaction, and crash recovery algorithm. Focus on the trade-offs for durability, latency, and throughput.

HardSystem Design
63 practiced

You're designing the compaction strategy for an LSM-based store (e.g., RocksDB) that must balance write throughput, read latency, and disk usage for a mixed workload. What compaction approaches would you consider and how would you choose between them, how would you throttle compaction under peak load, and what would you monitor to make sure compaction doesn't destabilize the service?

EasyTechnical
44 practiced

Explain the difference between B-tree and LSM-tree indexing structures, for example as used in PostgreSQL versus RocksDB. For a high-ingest logging service, which index type would you typically choose, and why?

HardTechnical
36 practiced

Design and implement a compact on-disk index for a binary log file where each record starts with an 8-byte timestamp followed by an 8-byte length. The index must locate the first record whose timestamp is greater than or equal to a target timestamp, using a sparse index to keep memory usage low. Implement the index-build routine and the sparse binary-search lookup routine.

Unlock Full Question Bank

Get access to all 22 Database Internals and Storage Engines interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.