Bao:学习引导查询优化器
摘要:查询优化仍然是数据管理系统中最具挑战性的问题之一。最近将机器学习技术应用于查询优化挑战的努力取得了一些进展,但由于训练成本高、无法适应变化和性能较差,实际收益较少。受到这些困难的启发,并借鉴了多臂赌博机的长期研究成果,我们引入了Bao(BAndit Optimizer)。 Bao利用现有查询优化器中积累的经验提供每个查询的优化提示。Bao将现代的树状卷积神经网络与托姆森采样(一种几十年前已经被广泛研究的强化学习算法)相结合。结果,Bao可以自动从错误中学习,并适应查询的工作负载、数据和模式的变化。实验结果表明,Bao可以快速(比先前方法快一个数量级)学习提高端到端查询执行性能的策略,包括尾延迟。在云环境中,我们展示了Bao相对于复杂的商业系统可以提供降低成本和更好性能的优势。
作者:Ryan Marcus, Parimarjan Negi, Hongzi Mao, Nesime Tatbul, Mohammad Alizadeh, Tim Kraska
论文ID:2004.03814
分类:Databases
分类简称:cs.DB
提交时间:2023-03-28