《表2 连接顺序优化方法比较》
针对启发式方法的缺陷,研究人员将不同的强化学习算法应用于连接顺序优化。强化学习不仅从根本上降低了启发式算法的开销,而且能通过过去的经验训练模型,应用于所有工作负载的连接顺序优化问题。人工智能赋能的连接顺序优化方法比较如表2所示。Marcus等人提出连接顺序枚举器ReJOIN[26],使用强化学习中策略梯度算法学习连接选择策略。ReJOIN中状态变量为二元连接子树结构和连接/选择谓词的特征表示向量,利用多层神经网络输出当前状态对应的连接动作发生的概率分布以选择下一个连接动作。当所有关系连接完成时,ReJOIN根据优化器的代价模型对连接顺序给出奖励值。Krishnan等人[27]提出一个基于Q-learning算法的DQ(deep Q-learning)优化器。Q-learning是强化学习中基于值的算法,核心为Q(s,a)函数,即在某一时刻的状态s下采取动作a能够获得收益的期望。相较于策略学习的强化学习算法,Q-learning对任意连接子计划的连接均计算得分而不是直接选择最优连接,能够使用查询计划的多个子计划进行训练,极大地降低训练数据量需求。DQ优化器由当前表连接结果生成的查询图作为强化学习状态,连接操作作为强化学习动作,使用两层DNN(deep neural network)表示Q函数,训练Q函数的参数。在训练时使用数据库系统代价模型评估动作的奖励,计算Q函数值,在查询时每次选择DNN输出Q值最小的连接计划。
图表编号 | XD00165382800 严禁用于非法目的 |
---|---|
绘制时间 | 2020.07.01 |
作者 | 宋雨萌、谷峪、李芳芳、于戈 |
绘制单位 | 东北大学计算机科学与工程学院、东北大学计算机科学与工程学院、东北大学计算机科学与工程学院、东北大学计算机科学与工程学院 |
更多格式 | 高清、无水印(增值服务) |