【技术实现步骤摘要】
基于大数据的混合查询优化方法及装置
本专利技术涉及计算机
,具体涉及一种基于大数据的混合查询优化方法及装置。
技术介绍
随着科技及社会的不断发展,各类数据呈井喷式地增长,从而为人们的各类需求提供数据基础。由于业务需求的多样性,在实际的业务处理过程中,通常需对不同存储引擎中的数据进行联合处理。目前在对不同存储引擎中的数据进行联合处理时,通常需将所需的数据从各个存储引擎中导出至Excel中,并在Excel中对各个存储引擎的输出数据进行处理。由此可见,现有的处理方式是将存储引擎中的源数据全部读入,再进一步对读入的数据进行统一处理。然而,鉴于某些存储引擎仍具有部分的计算能力,采用现有的处理方式极易造成存储引擎计算资源的浪费;并且,该处理方式是将未经任何处理的源数据全部读入,从而进一步地增加了存储开销,降低处理效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于大数据的混合查询优化方法及装置。根据本专利技术的一个方面,提供了一种基 ...
【技术保护点】
1.一种基于大数据的混合查询优化方法,包括:/n将接收到的混合查询语句转换为与所述混合查询语句相对应的逻辑树;其中,所述逻辑树中的节点对应于所述混合查询语句中的子语句;/n根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点,并将由存储引擎执行的节点对应的子语句确定为第一子语句,将不能由存储引擎执行的节点对应的子语句确定为第二子语句;/n将第一子语句路由至相对应的存储引擎,以供存储引擎执行相对应的第一子语句,并获得与第一子语句相对应的中间查询结果;/n将第二子语句路由至相对应的计算引擎,以供计算引擎根据与第一子语句相对应的中间查询结果,以及所述 ...
【技术特征摘要】
1.一种基于大数据的混合查询优化方法,包括:
将接收到的混合查询语句转换为与所述混合查询语句相对应的逻辑树;其中,所述逻辑树中的节点对应于所述混合查询语句中的子语句;
根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点,并将由存储引擎执行的节点对应的子语句确定为第一子语句,将不能由存储引擎执行的节点对应的子语句确定为第二子语句;
将第一子语句路由至相对应的存储引擎,以供存储引擎执行相对应的第一子语句,并获得与第一子语句相对应的中间查询结果;
将第二子语句路由至相对应的计算引擎,以供计算引擎根据与第一子语句相对应的中间查询结果,以及所述第二子语句进行计算处理得到最终的查询结果。
2.根据权利要求1所述的方法,其中,所述根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点进一步包括:
将逻辑树中的数据源节点确定为由存储引擎执行的节点。
3.根据权利要求1或2所述的方法,其中,所述根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点进一步包括:
确定逻辑树中与逻辑树中的数据源节点直接相连的非数据源节点;
若所述与数据源节点直接相连的非数据源节点为过滤节点和/或返回限制节点,则将该过滤节点和/或返回限制节点确定为由存储引擎执行的节点。
4.根据权利要求3所述的方法,其中,所述根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点进一步包括:
若所述与数据源节点直接相连的非数据源节点为函数节点,则进一步确定所述函数节点所对应的函数在所述数据源节点所对应的存储引擎中是否有效;
若有效,则将所述函数节点确定为由存储引擎执行的节点;
若无效,则将所述函数节点确定为不能由存储引擎执行的节点。
5.根据权利要求1-4中任一项所述的方法,其中,所述根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点进一步包括:
确定逻辑树中与逻辑树中的数据源节点未直接相连的非数据源节点,并对所述未直接相连的非数据源节点进行语义分析,根据分析结果,确定所述未直接相连的非数据源节点是否为由存储引擎执行的节点。
6.根据权利要求5所述的方法,其中,所述根据所述逻辑树中各个节点之间的连接关系以及各个节点的信息,确定由存储引擎执行的节点进一步包括:
确定逻辑树中与数据源节点未直接相连的...
【专利技术属性】
技术研发人员:刘思源,朱海龙,李铭,徐胜国,徐皓,李铮,
申请(专利权)人:北京奇虎科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。