查询作为数据库系统(database system,DBS)占比最大的操作,其效率在很大程度上影响着DBS的性能,为查询选择一个较优的执行计划、提高查询效率是提高DBS效率的关键。查询执行受到其他查询的影响产生查询交互(query interaction,QI),是查...查询作为数据库系统(database system,DBS)占比最大的操作,其效率在很大程度上影响着DBS的性能,为查询选择一个较优的执行计划、提高查询效率是提高DBS效率的关键。查询执行受到其他查询的影响产生查询交互(query interaction,QI),是查询优化器难以为并行查询选择较优执行计划的主要因素。提出一种以操作为单位表示查询执行计划的编码方式(features of plans based on operator,FPO),并用操作之间的数据共享关系以及资源竞争关系反映QI;在此基础上,提出基于图神经网络的查询执行计划选择模型(plan selection based on graph,PSG)。PSG将操作作为节点,操作特征作为节点特征,操作间的关系作为边,生成异构图,作为模型的输入;考虑到操作间的关系有多种、作用不同,使用关系图卷积网络(relational graph convolutional network,RGCN)聚合信息,得到查询组合的图表示,提取其QI,通过全连接层(fully connected layers,FC),为查询选择执行计划。在PostgreSQL上的实验表明,PSG的平均准确率比查询优化器提高了47.3个百分点。展开更多
文摘查询作为数据库系统(database system,DBS)占比最大的操作,其效率在很大程度上影响着DBS的性能,为查询选择一个较优的执行计划、提高查询效率是提高DBS效率的关键。查询执行受到其他查询的影响产生查询交互(query interaction,QI),是查询优化器难以为并行查询选择较优执行计划的主要因素。提出一种以操作为单位表示查询执行计划的编码方式(features of plans based on operator,FPO),并用操作之间的数据共享关系以及资源竞争关系反映QI;在此基础上,提出基于图神经网络的查询执行计划选择模型(plan selection based on graph,PSG)。PSG将操作作为节点,操作特征作为节点特征,操作间的关系作为边,生成异构图,作为模型的输入;考虑到操作间的关系有多种、作用不同,使用关系图卷积网络(relational graph convolutional network,RGCN)聚合信息,得到查询组合的图表示,提取其QI,通过全连接层(fully connected layers,FC),为查询选择执行计划。在PostgreSQL上的实验表明,PSG的平均准确率比查询优化器提高了47.3个百分点。