Litcius/Paper detail

UDO

Junxiong Wang, Immanuel Trummer, Debabrota Basu

2021Proceedings of the VLDB Endowment41 citationsDOI

Abstract

UDO is a versatile tool for offline tuning of database systems for specific workloads. UDO can consider a variety of tuning choices, reaching from picking transaction code variants over index selections up to database system parameter tuning. UDO uses reinforcement learning to converge to near-optimal configurations, creating and evaluating different configurations via actual query executions (instead of relying on simplifying cost models). To cater to different parameter types, UDO distinguishes heavy parameters (which are expensive to change, e.g. physical design parameters) from light parameters. Specifically for optimizing heavy parameters, UDO uses reinforcement learning algorithms that allow delaying the point at which the reward feedback becomes available. This gives us the freedom to optimize the point in time and the order in which different configurations are created and evaluated (by benchmarking a workload sample). UDO uses a cost-based planner to minimize reconfiguration overheads. For instance, it aims to amortize the creation of expensive data structures by consecutively evaluating configurations using them. We evaluate UDO on Postgres as well as MySQL and on TPC-H as well as TPC-C, optimizing a variety of light and heavy parameters concurrently.

Topics & Concepts

Computer scienceControl reconfigurationBenchmarkingVariety (cybernetics)Point (geometry)Code (set theory)WorkloadReinforcement learningArtificial intelligenceEmbedded systemProgramming languageMathematicsOperating systemMarketingSet (abstract data type)BusinessGeometryData Stream Mining TechniquesOptimization and Search ProblemsDistributed systems and fault tolerance