The book "Building a Database Engine" is a practical guide to creating your own database engine from scratch. It is intended for developers looking to deepen their knowledge in the area of systems programming and database architecture.
Building a Database Engine
The author shares insights accumulated over 13 years of application development and concludes that databases outlast any technological stack, yet most developers know very little about them. The goal of the book is to change this by offering a step-by-step guide to building your own database engine.
What You Will Learn
- Data Storage: from the naive approach with CSV to the efficient binary format TLV.
- Write-Ahead Logging (WAL): implementing failure resilience.
- Data Pages: using 4KB pages with an LRU-based buffer to enhance efficiency.
- Indexes: constructing B-trees and hash indexes for fast search.
- Buffer Pools: caching data pages using an LRU cache supported by a linked list and hash table.
Why You Should Read It
- Overcoming the fear of systems programming.
- Understanding the fundamental principles of how databases work.
- Developing skills that will set you apart from other developers.
- Preparing for higher-level technical interviews.
Additional
Premium Package
About the Author: Martin Joo
Martin Joo is a Hungarian software engineer and Laravel educator focused on the deeper engineering side of PHP work — performance, system design, and database internals — applied to the Laravel framework specifically. His material is denser than most Laravel tutorial content and aimed at developers ready to think about Laravel as a serious production stack.
His CourseFlix listing carries four Martin Joo courses: Performance with Laravel (Premium Package), Master System Design with Laravel, Building Finance Apps with Laravel, and Building a Database Engine (a from-scratch database implementation in PHP). Material is paid and aimed at senior Laravel developers and engineering leads.
Books
Related courses
-
Updated 2y agoEffective Database Design
By: Ben BrummThe course "Effective Database Design" will provide you with an action plan, examples, and instructions for creating a well-designed database.1h 3m5/5 -
Updated 2y agoNeo4j: GraphDB Foundations with Cypher
By: UdemyLearn what a graph database is, gain the fundamental skills to use Neo4j on your next project. Learn how some of the worlds top tech companies structure and que4h 44m -
ClassicMastering Postgres | The most comprehensive course on PostgreSQL
By: Aaron FrancisYour application operates at the speed of the slowest query, regardless of the language, framework, or platform you use.16h 13m5/5