NoisePage is an in-memory relational DBMS designed to support self-driving (i.e., autonomous) operation. It is developed by the Carnegie Mellon Database Group.
Multi-version Concurrency Control (MVCC) Optimistic Concurrency Control (OCC)
Transactions generate redo records in thread-local memory.
NoisePage started with the Bw-Tree index from the Peloton project. In 2021, the Bw-Tree was replaced by a B+Tree as the default index data structure.
Code Generation JIT Compilation Stored Procedure Compilation
NoisePage transforms query plans into a database-centric DSL called TPL ("terrier programming language"). The DBMS then compiles the TPL program into bytecodes that it can either interpret with its own VM or compile into machine code with LLVM.
Decomposition Storage Model (Columnar)
Carnegie Mellon University