Reusing PostgreSQL codebase in a Distributed SQL Architecture (YugabyteDB)

Day 1 | 15:35 | 00:30 | UA2.114 (Baudoux) | Franck Pachot


Note: I'm reworking this at the moment, some things won't work.

The stream isn't available yet! Check back at 15:35.

YugabyteDB distinguishes itself among distributed SQL databases by utilizing PostgreSQL's C code rather than building a compatibility layer from the ground up. This session will explore both the advantages and challenges of this architecture. We will drill down from PostgreSQL's familiar query layer to the distributed storage system, which stores PostgreSQL tuples and lock intents within RocksDB's LSM trees using Raft replication.

We will be guided by analyzing execution plans that closely resemble those of PostgreSQL and adding further metrics that shed light on the underlying storage operations. We may also evaluate stack traces to identify the PostgreSQL and RocksDB functions involved in query execution. Finally, the session will discuss the rationale behind forking PostgreSQL, focusing on its benefits and trade-offs.