基于深度强化学习(DRL)的查询优化最近已成为热门研究主题。尽管取得了令人鼓舞的进展,但DRL优化者仍然面临着强有力地制定有效计划的巨大挑战,这是因为连接订单和操作员选择的巨大搜索空间以及将其作为反馈信号的高度变化的执行延迟。在本文中,我们提出了Loger,这是一个赢得的效果,以使能力和r ubust计划有效,旨在生产有效的加入订单和运营商。Loger首先利用图形变压器来捕获表和谓词之间的关系。然后,搜索空间进行了重组,Loger学会了限制特定的操作员,而不是直接选择每个连接的操作员,同时利用DBMS内置的优化器在修复下选择物理操作员。这种策略利用专家知识来提高计划生成的鲁棒性,同时提供足够的计划搜索灵活性。此外,Loger介绍了𝜖 -beam搜索,该搜索可在进行指导探索时保留多个搜索路径,以保留有希望的计划。最后,Loger引入了损失功能,并通过奖励加权引入损失功能,从而通过减少差的操作员造成的波动,并记录转换以压缩奖励范围,从而进一步提高性能。我们对加入订单基准(JOB),TPC-DS和堆栈溢出进行实验,并证明Loger可以比现有学习的查询优化器更好地实现性能,而与PostgreSQL相比,工作速度为2.07倍。
主要关键词