举例说明>>
与或图(AND-OR Graph)表示一个搜索空间,允许探索备选方案。用与或图对计划进行编码,并修改图的叶和节点,以重用内部计划结构和查询优化器的成本,从而减少物理配置调优的开销。现有的工作优化参数化查询,并通过缓存计划和重用优化器对共享子表达式的成本来减少优化器的调用数量。Plan Stitch 专注于执行成本,并通过执行反馈提高计划质量。它构建了执行成本中最便宜的计划,同时可能与之前执行的计划不同,存在部分结构上的变化。
Part 3 Plan Stitch 框架概述
基于上述属性,论文使用动态规划为 AND-OR 图中的每个 AND 节点和每个 OR 节点拼接最便宜的子计划,来构造从叶和节点到根或节点的最便宜的计划。具体算法流程如下图所示:
论文通过 TPC_DS 测试基准(10 GB),分别在三例实际客户工作负载中进行了实验。实验比较了基于回归的计划校正 (RBPC)和计划缝合 Plan Stitch 的性能,表1显示了工作负载的一些汇总统计信息: