Page 151 - 《软件学报》2025年第12期
P. 151
5532 软件学报 2025 年第 36 卷第 12 期
使用 ON-MODDPG 方法对 PostgreSQL 配置参数进行优化后, 与使用 DDPG 方法的性能的峰值相比, 其吞吐
量也提升了 32% 左右, 延迟也有明显下降.
6.6 参数优化方法应对用户需求变化的适应性对比
当在线调优为数据库系统用户推荐配置参数时, 需要回放用户的工作负载进行压力测试, 传统的单目标强化
学习方法 (SORL) 在面对数据库系统环境中硬件配置或工作负载的变化, 可以自动提取在不同环境中真正起作用
的特征, 从而简化调优难度, 有效地做出决策, 并适应当前环境, 经过有限步的微调后使数据库系统达到良好的
性能.
但是 SORL 无法感知用户对数据库系统调优目标 (吞吐量、延迟) 的偏好变化, 不能快速适应新的目标偏好
以满足用户对良好性能的期望. 当偏好发生变化时, 如果使用传统的单目标的强化学习方法, 需要重新设置目标的
偏好系数 (见公式 (4)), 即重设奖励函数, 重新进行模型的训练过程; 而本文方法 ON-MODDPG 在训练阶段, 偏好
改变是动态发生的, 每个 episode 开始时由偏好发生器生成一个偏好向量, 在模型训练完成后, 只需将需要的偏好
向量 ω 输入模型即可得到应对新偏好的参数配置, 使数据库系统性能保持在较优水准.
在容器实例 Tuner1 中对 PostgreSQL 数据库系统配置参数进行在线调优测试, 分别取偏好向量 ω 1 =< 0.9,0.1 >、
+
ω 2 = < 0.5,0.5 > 和 ω 3 = < 0.1,0.9 >. 本实验中 CDBTune 使用的 DDPG 模型在训练的过程中使用的偏好为 ω 2 , 然
后将该模型应用到两个不同的偏好 ω 1 和 ω 3 的场景下. 实验结果的对比如图 16 所示.
DDPG ω 1 DDPG ω 2 DDPG ω 3 ON-MODDPG ω 1 ON-MODDPG ω 2 ON-MODDPG ω 3
600
4 000
500
3 500
3 000 400
Throughput (T/s) 2 000 Latency (ms) 300
2 500
200
1 500
100
1 000
0
500
0 −100
10 20 30 40 50 10 20 30 40 50
Steps Steps
(a) 吞吐量 (b) 延迟
图 16 数据库系统参数优化方法对不同负载的适应性对比
从图 16 显示的实验结果可知, DDPG 方法无法应对偏好的变化. 在偏好 ω 2 下使用 DDPG 方法对数据库系统
参数进行优化可以使其达到良好的性能. 当偏好向量发生变化, 变为 ω 1 和 ω 3 时, 如果继续使用偏好 ω 2 下推荐的
参数数据库的性能会有明显的下降, 如图 16 中的吞吐量从 2 500 T/s 下降到了 500 T/s, 系统的延迟也有了大幅的
提高. 这说明当偏好向量发生变化时, DDPG 方法需要从数据库系统的默认参数开始进行优化, 模型需要重新
训练.
ON-MODDPG 方法应用到不同的偏好 ω 1 、 ω 2 和 ω 3 下, 无论是系统的吞吐量还是系统延迟都可以保持在一
+
个相对稳定的水平. 不同偏好下的系统的性能变化远小于 CDBTune 使用的 DDPG 方法. 这说明 ON-MODDPG 可
以动态适应用户对系统的不同偏好. 当用户对系统的偏好发生变化时, 只需要根据当前系统的负载进行有限步的
调整, 就能使数据库系统性能保持在较优水平.

