
10
Spent month building FiloDB, a fully functional relational database in Go because I wanted to understand how databases actually work under the hood. Used "Build Your Own Database from Scratch in Go" as my starting point and studied various codebases for inspiration, but ended up implementing it myself and adding features beyond the basics. Honestly surprised myself with how well it performs - hitting ~1,800 operations per second!
Built the entire stack from ground up: B+ tree storage engine with memory-mapped I/O (learned so much about OS-level programming), full ACID transactions that actually work, and concurrent reads using worker pools. The CLI feels just like working with a real database - you can CREATE tables, INSERT/UPDATE/DELETE records, and run complex queries with range lookups and filtering.
Added some cool features I'm proud of: aggregate functions (COUNT, SUM, AVG, MIN, MAX) for data analysis, composite indexing for fast queries, and built-in debugging tools. The whole thing is cross-platform and ships as a single binary with literally zero external dependencies (just golang.org/x/sys for system calls).
Real performance numbers from my testing: 1,813 ops/sec for inserts, 1,848 ops/sec for queries, sub-millisecond latency, and only 0.88 KB storage overhead per record. Even built benchmarking tools to measure everything properly.
This was purely an educational project to learn database internals, but it actually works reliably and handles real workloads. It's completely self-contained - works on Linux, macOS, and Windows out of the box. This project taught me more about systems programming, memory management, and database internals than any course ever could. Pretty happy with how it turned out as a learning experience!
Built with