1 .一种查询方法,其特征在于,包括:
在接收到SQL查询请求时,确定所述SQL查询请求对应的执行计划树;
从所述执行计划树中确定出多个等价的目标执行计划子树;
执行多个所述目标执行计划子树中的任一所述目标执行计划子树,以得到多个所述目
标执行计划子树对应的第一查询数据;
利用第一节点代替多个所述目标执行计划子树及将所述第一查询数据缓存于所述第
一节点中,以得到处理后的所述执行计划树,所述第一节点用于表征数据复用标识节点;
根据处理后的所述执行计划树,确定所述SQL查询请求对应的目标查询结果。
2 .根据权利要求1所述的方法,其特征在于,所述从所述执行计划树中确定出多个等价
的目标执行计划子树,包括:
遍历所述执行计划树,以得到所述执行计划树中所包括的多个执行计划子树;
针对每个所述执行计划子树,确定所述执行计划子树的目标哈希值,以得到多个所述
执行计划子树的目标哈希值;
根据多个所述执行计划子树的目标哈希值,从所述执行计划树中确定出多个等价的目
标执行计划子树。
3 .根据权利要求2所述的方法,其特征在于,所述确定所述执行计划子树的目标哈希
值,包括:
利用预设哈希算法确定所述执行计划子树的初始哈希值;
确定所述执行计划子树中所包括的各个节点对应的节点类型;
根据各个所述节点类型,确定所述执行子树的哈希增量;
根据所述初始哈希值和所述哈希增量,确定所述执行计划子树的目标哈希值;
所述根据多个所述执行计划子树的目标哈希值,从所述执行计划树中确定出多个等价
的目标执行计划子树,包括:
从多个所述执行计划子树的目标哈希值中确定出多个相等的目标哈希值;
将多个相等的所述目标哈希值对应的所述执行计划子树确定为多个等价的所述目标
执行计划子树。
4 .根据权利要求1所述的方法,其特征在于,所述根据处理后的所述执行计划树,确定
所述SQL查询请求对应的目标查询结果,包括:
遍历处理后的所述执行计划树;
在每遍历到所述第一节点时,以所述第一节点为断点,对处理后的所述执行计划树进
行拆分,直至处理后的所述执行计划树遍历结束,以得到多个目标阶段;
根据多个所述目标阶段,确定所述SQL查询请求对应的目标查询结果。
5 .根据权利要求4所述的方法,其特征在于,所述根据多个所述目标阶段,确定所述SQL
查询请求对应的目标查询结果,包括:
根据多个所述目标阶段及多个所述目标阶段之间的依赖关系,确定目标有向图,所述
目标有向图包括多个第二节点,所述第二节点与所述目标阶段一一对应;
确定所述目标有向图中每个所述第二节点的目标入度;
根据多个所述目标入度,确定所述SQL查询请求对应的目标查询结果。
6 .根据权利要求5所述的方法,其特征在于,每个所述第二节点对应有目标内存,所述
权 利 要 求 书
1/2 页
2
文档被以下合辑收录
评论