← All projects

Software · Team project

The Not-so-Simple DBMS.

A database project that grew from a minimal engine into a system with more efficient indexing, larger documents, and replicated storage.

KU Leuven2024–2025Team project

Try a small example

A collection of projects.

3 records

Project collection
NameCategoryActions
MicroreactorEngineering—
Book clubCommunity—
UltrasoundResearch—

Add a record, change it, or remove it.

This small example runs in your browser and resets on reload. It illustrates record operations; the original database engine and replication system are described below.

What happens behind a simple table?

A small table is straightforward to use. The interesting problems emerge underneath it: how to find a record efficiently, store something larger than a disk block, reclaim unused space, or keep copies consistent across servers.

Our team built on a minimal database system over two semesters. The report covers B-tree indexing improvements, binary data, document references, large documents, compaction, and replication.

Keeping several copies consistent.

The replication component uses Raft. In the intended design, a leader coordinates updates across a cluster, while the other servers maintain copies of the data. Elections allow the cluster to choose a leader, and replicated logs help nodes agree on changes.

A write therefore involves more than changing one table: the servers need to agree on the sequence of updates, including when a server becomes unavailable.

A team effort.

Completed with Muzaffer Cesur, Tristan Hilven, Willem Nuyens, Tibo Theys, Ward Van Laer, Yana Van Lommel, and Casper Vanwalleghem for P&O Computer Science at KU Leuven.

Source: our May 2025 “SimpleDBMS Report”. The system’s 1 TB capacity was a design target; full-scale testing with all extensions was noted as future work.