基于大数据的混合查询处理方法及装置制造方法及图纸

技术编号:24353257 阅读:49 留言:0更新日期:2020-06-03 02:02
本发明专利技术公开了一种基于大数据的混合查询处理方法及装置。其中,方法包括:接收输入的特定语言格式的混合查询语句;对混合查询语句进行语法解析,生成混合查询计划,并依据混合查询计划,确定与混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;将查询语句路由至至少一个存储引擎和至少一个计算引擎,以供至少一个存储引擎依据查询语句进行查询处理得到中间查询结果,至少一个计算引擎依据中间查询结果进行计算处理得到最终的查询结果。采用本方案,可实现对跨存储引擎数据的快速处理,操作简单易行,易于大规模应用与实施;并且可将查询语句与存储引擎或计算引擎解耦,降低用户的学习成本,便于查询效率的进一步提升。

Hybrid query processing method and device based on big data

【技术实现步骤摘要】
基于大数据的混合查询处理方法及装置
本专利技术涉及计算机
,具体涉及一种基于大数据的混合查询处理方法及装置。
技术介绍
随着科技及社会的不断发展,各类数据呈井喷式地增长,从而为人们的各类需求提供数据基础。由于业务需求的多样性,在实际的业务处理过程中,通常需对不同存储引擎中的数据进行联合处理。目前在对不同存储引擎中的数据进行联合处理时,通常需将所需的数据从各个存储引擎中导出至Excel中,并在Excel中对各个存储引擎的输出数据进行处理。然而,该方法操作繁琐,效率低下,尤其不适于海量数据的处理;并且,用户在进行联合处理时,通常需用户根据各个存储引擎的特点编译相应的查询代码,从而加大用户的学习成本,并进一步降低处理效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于大数据的混合查询处理方法及装置。根据本专利技术的一个方面,提供了一种基于大数据的混合查询处理方法,包括:接收利用任一种对外调用方式输入的特定语言格式的混合查询语句;对所述混合查询语句进行语法解析,生成混合查询计划,并依据所述混合查询计划,确定与所述混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。根据本专利技术的另一方面,提供了一种基于大数据的混合查询处理装置,包括:接收模块,适于接收利用任一种对外调用方式输入的特定语言格式的混合查询语句;确定模块,适于对所述混合查询语句进行语法解析,生成混合查询计划,并依据所述混合查询计划,确定与所述混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;处理模块,适于将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。根据本专利技术的又一方面,提供了一种计算设备/,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述基于大数据的混合查询处理方法对应的操作。根据本专利技术的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述基于大数据的混合查询处理方法对应的操作。根据本专利技术提供的基于大数据的混合查询处理方法及装置,首先接收输入的特定语言格式的混合查询语句;并对混合查询语句进行语法解析,生成混合查询计划,并依据混合查询计划,确定与混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;最终将查询语句路由至至少一个存储引擎和至少一个计算引擎,以供至少一个存储引擎依据查询语句进行查询处理得到中间查询结果,至少一个计算引擎依据中间查询结果进行计算处理得到最终的查询结果。采用本方案,可实现对跨存储引擎数据的快速处理,操作简单易行,易于大规模应用与实施;并且可将查询语句与存储引擎或计算引擎解耦,降低用户的学习成本,便于查询效率的进一步提升。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术提供的一种预设的大数据处理系统的功能结构示意图;图2示出了根据本专利技术一个实施例提供的一种基于大数据的混合查询处理方法的流程示意图;图3示出了根据本专利技术另一个实施例提供的一种基于大数据的混合查询处理方法的流程示意图;图4a示出了根据本专利技术另一个实施例提供的一种逻辑树示意图;图4b示出了根据本专利技术另一个实施例提供的一种逻辑子树示意图;图4c示出了根据本专利技术另一个实施例提供的另一种逻辑子树示意图;图4d示出了根据本专利技术另一个实施例提供的又一种逻辑子树示意图;图5示出了根据本专利技术一个实施例提供的一种基于大数据的混合查询处理装置的功能结构示意图;图6示出了根据本专利技术一个实施例提供的一种计算设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。本专利技术所提供的基于大数据的混合查询处理方法及装置可应用于预设的大数据处理系统中。如图1所示,该预设的大数据处理系统包括:服务接口11、解析模块12、路由模块13、多个计算引擎14以及多个存储引擎15。其中,服务接口11,提供至少一种对外调用方式,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句。该大数据处理系统中的特定语言格式的查询语句可以为与计算引擎或存储引擎耦合度较低的逻辑查询语句,即用户无需根据查询所需的计算引擎及存储引擎的特点及语法结构等专门编译相应的语句。解析模块12,适于对查询语句进行语法解析及校验,生成逻辑查询计划。具体地,为保障数据查询效率以及避免系统资源浪费,解析模块12首先对服务接口11接收到的查询语句进行语法校验。可选的,若查询语句的语法校验不合格,可为用户反馈相应的提示信息,以供用户根据提示信息进行查询语句的及时修正。待语法校验成功后,进一步对查询语句进行解析,以生成相应的逻辑查询计划。从而供路由模块13、多个计算引擎14和/或多个存储引擎15基于逻辑查询计划获得最终的查询结果。路由模块13,适于根据逻辑查询计划,确定与逻辑查询计划相对应的至少一个计算引擎和/或至少一个存储引擎,并将查询语句路由至该至少一个计算引擎和/或至少一个存储引擎。具体地,在解析模块12生成与查询语句相对应的逻辑查询计划之后,进一步由路由模块13根据逻辑查询计划生成相应的物理执行计划,即确定出与逻辑查询计划相对应的至少一个计算引擎和/或至少一个存储引擎,并将查询语句路由至该至少一个计算引擎和/或至少一个存储引擎。多个计算引擎14以及多个存储引擎15,适于根据路由模块路由的查询语句,执行对应的查询处理,获得并输出查询结果。图2示出了根据本专利技术一个实施例提供的一种基于大数据的混合查询处理方法的流程示意图。如图2所示,该方法包括:步骤S210,接收利用任一种对外调用方式输入的特定语言本文档来自技高网...

【技术保护点】
1.一种基于大数据的混合查询处理方法,包括:/n接收利用任一种对外调用方式输入的特定语言格式的混合查询语句;/n对所述混合查询语句进行语法解析,生成混合查询计划,并依据所述混合查询计划,确定与所述混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;/n将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。/n

【技术特征摘要】
1.一种基于大数据的混合查询处理方法,包括:
接收利用任一种对外调用方式输入的特定语言格式的混合查询语句;
对所述混合查询语句进行语法解析,生成混合查询计划,并依据所述混合查询计划,确定与所述混合查询计划相对应的至少一个存储引擎和至少一个计算引擎;
将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。


2.根据权利要求1所述的方法,其中,所述对所述混合查询语句进行语法解析,生成混合查询计划,并依据所述混合查询计划,确定与所述混合查询计划相对应的至少一个存储引擎和至少一个计算引擎进一步包括:
将所述混合查询语句拆分为多个查询分句;
确定所述多个查询分句中的第一查询分句以及第二查询分句;其中,第一查询分句由相对应的存储引擎执行,第二查询分句由相对应的计算引擎执行;
基于拆分结果生成混合查询计划。


3.根据权利要求2所述的方法,其中,所述将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果进一步包括:
将第一查询分句路由至相对应的存储引擎,以供存储引擎执行相对应的第一查询分句,以获得与第一查询分句相对应的中间查询结果;
将第二查询分句路由至相对应的计算引擎,以供计算引擎根据与第一查询分句相对应的中间查询结果,以及所述第二查询分句进行计算处理得到最终的查询结果。


4.根据权利要求2或3所述的方法,其中,所述将所述混合查询语句拆分为多个查询分句进一步包括:
将所述混合查询语句转换为与所述混合查询语句相对应的逻辑树;
对所述逻辑树进行逻辑树拆分,得到与所述逻辑树相对应的多个逻辑子树;
根据与所述逻辑树相对应的多个逻辑子树,生成多个查询分句。


5.根据权利要求4所述的方法,其中,所述将所述混合查询语句转换为与所述混合查询语句相对应的逻辑树进一步包括:
将所述混合查询语句转换为对应的抽象语法树,并进一...

【专利技术属性】
技术研发人员:刘思源朱海龙李铭徐胜国徐皓李铮
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1