Self-Driving Database Management System In-Memory Autonomous Open-Source
Rewrote storage + query execution. 2015 Kept Postgres frontend. Replaced Postgres frontend. 2016 Cobbled together replacements. Rewriting Postgres replacements. 2017 We only use Postgres SQL parser. Decoupled networking from execution.
Adaptive Storage Change the layout of data over time based on how it is accessed. Bridging the Archipelago Between Row-Stores and Column-Stores for Hybrid Workloads SIGMOD 2016
UPDATE myTable SET A = 123, B = 456, A B C D C = 789 WHERE D = “xxx” Hot SELECT AVG (B) FROM myTable WHERE C < “yyy” Cold
UPDATE myTable SET A = 123, B = 456, A B C D A B C D C = 789 WHERE D = “xxx” Hot A B C D SELECT AVG (B) FROM myTable WHERE C < “yyy” Cold
Row Layout Column Layout Adaptive Layout 1600 Execution Time (ms) 1200 800 400 0 Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Sep-15 Sep-16 Sep-17 Sep-18 Sep-19 Sep-20
Row Layout Column Layout Adaptive Layout 1600 Execution Time (ms) 1200 800 400 0 Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Sep-15 Sep-16 Sep-17 Sep-18 Sep-19 Sep-20
Row Layout Column Layout Adaptive Layout 1600 Execution Time (ms) 1200 800 400 0 Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Sep-15 Sep-16 Sep-17 Sep-18 Sep-19 Sep-20
Row Layout Column Layout Adaptive Layout 1600 Execution Time (ms) 1200 800 400 0 Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Scan Insert Sep-15 Sep-16 Sep-17 Sep-18 Sep-19 Sep-20
http://pelotondb.io
END
Recommend
More recommend