KnobTree: Intelligent Database Parameter Configuration via Explainable Reinforcement Learning

Jiahan Chen,Shuhan Qi,Yifan Li,Zeyu Dong,Mingfeng Ding,Yulin Wu,Xuan Wang
2024-06-21
Abstract:Databases are fundamental to contemporary information systems, yet traditional rule-based configuration methods struggle to manage the complexity of real-world applications with hundreds of tunable parameters. Deep reinforcement learning (DRL), which combines perception and decision-making, presents a potential solution for intelligent database configuration tuning. However, due to black-box property of RL-based method, the generated database tuning strategies still face the urgent problem of lack explainability. Besides, the redundant parameters in large scale database always make the strategy learning become unstable. This paper proposes KnobTree, an interpertable framework designed for the optimization of database parameter configuration. In this framework, an interpertable database tuning algorithm based on RL-based differentatial tree is proposed, which building a transparent tree-based model to generate explainable database tuning strategies. To address the problem of large-scale parameters, We also introduce a explainable method for parameter importance assessment, by utilizing Shapley Values to identify parameters that have significant impacts on database performance. Experiments conducted on MySQL and Gbase8s databases have verified exceptional transparency and interpretability of the KnobTree model. The good property makes generated strategies can offer practical guidance to algorithm designers and database administrators. Moreover, our approach also slightly outperforms the existing RL-based tuning algorithms in aspects such as throughput, latency, and processing time.
Artificial Intelligence,Databases
What problem does this paper attempt to address?
The paper attempts to address issues primarily focused on the intelligence and interpretability of database parameter configuration. Specifically: 1. **Lack of Interpretability**: Existing database parameter configuration methods based on deep reinforcement learning (DRL) can achieve automated tuning, but due to their black-box nature, the generated tuning strategies lack interpretability. This makes it difficult for database administrators to analyze the reasons based on past experience when performance is suboptimal in practical applications. 2. **Learning Instability Caused by Large-Scale Parameters**: Large databases typically contain hundreds of tunable parameters, making the learning process complex and unstable, and difficult to quickly find the optimal configuration. 3. **Ignoring Database Administrator Knowledge**: Existing reinforcement learning-based methods overly rely on interaction with the database while neglecting the use of database administrators' expertise, leading to inefficient tuning. To address the above issues, the paper proposes **KnobTree**, an interpretable database parameter configuration framework. KnobTree mainly includes two parts: - **Important Parameter Selection**: By combining knowledge-driven and data-driven methods, it enhances database performance prediction using expert knowledge and employs the Shapley value method to filter out parameters that significantly impact database performance. This reduces the action space in reinforcement learning and accelerates the training process. - **Interpretable Database Tuning Decisions**: It proposes a tree-based database tuning algorithm based on reinforcement learning. By constructing a transparent differentiable decision tree model, the model can fully display its decision-making process, generating interpretable database tuning strategies. Through these innovations, KnobTree not only ensures the optimization of database performance but also provides clear explanations of the tuning strategies, offering practical guidance for algorithm designers and database administrators. Additionally, experimental results show that KnobTree slightly outperforms existing reinforcement learning-based tuning algorithms in terms of throughput, latency, and processing time.