This project is an educational implementation of a relational database engine written in C. It functions as a SQLite clone, demonstrating the internal mechanics of a database system through a C-based systems project that focuses on manual memory management and file I/O.
The engine is distinguished by its use of a bytecode virtual machine, which executes database operations by compiling SQL statements into low-level instructions. It utilizes a B-tree database engine to organize records in a balanced tree structure, ensuring efficient insertion, search, and range scanning.
The system covers core database internals, including SQL compilation workflows, disk-based persistence, and B-tree indexing with recursive node traversal and node splitting. It also implements data cursor management for navigating result sets.