Peloton: The Self-Driving Database Management System
In the last two decades, both researchers and vendors have built advisory tools to assist database administrators (DBAs) in various aspects of system tuning and physical design. Most of this previous work, however, is incomplete because they still require humans to make the final decisions about any changes to the database and are reactionary measures that fix problems after they occur. What is needed for a truly "self-driving" database management system (DBMS) is a new architecture that is designed for autonomous operation. All aspects of the system are controlled by an integrated planning component that not only optimizes the system for the current workload, but also predicts future workload trends so that the system can prepare itself accordingly. It enables new optimizations that are important for modern high-performance DBMSs, but which are not possible today because the complexity of managing these systems has surpassed the abilities of human experts. In this talk, I present Peloton, the first self-driving DBMS that we are building at CMU. Peloton's autonomic capabilities are now possible due to algorithmic advancements in deep learning, as well as improvements in hardware and adaptive database architectures. I will discuss Peloton's design, lessons learned from building a new DBMS from scratch, and some promising early results.