Page 146 - 《软件学报》2025年第12期
P. 146
荣垂田 等: 多目标深度强化学习驱动的数据库系统参数优化技术 5527
Q
Q′
26. θ ← τθ + (1 − τ)θ Q′
π
π′
27. θ ← τθ + (1 − τ)θ π′
28. end
29. end
30. end
算法 2 中第 11–30 行更新 Actor 和 Critic 网络参数, 包括数据采样、偏好向量采样、对目标网络使用多目标
Bellman 最优方程计算 TD Target 来指导 Critic 网络的更新、计算 TD Target 和当前 Q 值的差值 TD-error 构造损
A L 增加损失函数的平滑性、使用随机策略梯度更新
B
失函数 L 、借助辅助损失函数 Actor 网络、最后更新目标网络.
5 数据库性能与内存资源利用率协同优化
已有的相关工作大多是面向一个目标的优化 (吞吐量或延迟), 或者是将吞吐量和延迟两个目标进行线性转换
为单目标. 为了阐述本文提出的原生多目标强化学习方法在数据库系统参数优化方面的优势, 本节将数据库系统
的优化目标进行扩展, 实现数据库系统性能与内存资源利用率的协同优化, 实现高吞吐量、低延迟、高内存资源
利用率 (或低内存资源占有率).
为了在优化吞吐量和延迟的同时减少内存的使用量, 本文为内存占用量也设置了相关的奖励函数.
M t − M 0
∆M t→0 =
M 0
(15)
∆M =
M t − M t−1
∆M t→t−1 =
M t−1
公式 (1)、公式 (2)、公式 (15) 分别表示吞吐量、延迟和内存占用量变化量, 再根据公式 (4) 计算吞吐量和延
迟的奖励.
将奖励形式向量化表示更新为:
r =< r T ,r L ,r M > (16)
数据库性能与内存资源利用率协同优化算法的实现与算法 2 相似, 不同之处在于奖励函数的表示和计算方式
不同. 需要将算法 2 中的奖励函数的公式从公式 (5) 变为公式 (16).
6 实 验
在本节中, 我们评估本文提出的多目标强化学习模型的性能、训练效率、适用性和可扩展性, 并将其与现有
+
的方法 CDBTune 使用的 DDPG 模型, 以及 LlamaTune 中基于 BO 的方法 SMAC 进行比较.
(1) 验证原生多目标强化学习方法 N-MODDPG 模型及其改进的模型 ON-MODDPG 在 MySQL 和 PostgreSQL
数据库参数调优方面的有效性, 以及本文的方法在参数优化方面的效率优势. 实验中使用的数据库系统的参数见
附录 A.
(2) 在不同的负载情况下和不同的关系数据库上, 验证本文方法在数据库性能提升方面的有效性和适用性.
(3) 对比不同方法应对用户需求变化的能力, 验证模型的适用性.
(4) 对比协同优化方法 Co-MODDPG 和其他方法, 在优化 MySQL 数据库性能时内存占用率的变化, 验证模型
的可扩展性.
6.1 实验条件
实验使用了两种基准测试工具 SYSBench (https://github.com/akopytov/sysbench) 和 TPCC-MySQL (https://
github.com/Percona-Lab/tpcc-MySQL), 在 4 个工作负载下进行了实验, 分别为 TPC-C 工作负载、SYSBench 的 RW
(读写)、RO (仅读) 和 WO (仅写). 在 TPC-C 工作负载下, 生成了包含 200 个仓库 (约 18 GB) 的数据库 (tpcc_test),

