CN111221843A - 大数据处理方法及装置 - Google Patents

大数据处理方法及装置 Download PDF

Info

Publication number
CN111221843A
CN111221843A CN201811429316.7A CN201811429316A CN111221843A CN 111221843 A CN111221843 A CN 111221843A CN 201811429316 A CN201811429316 A CN 201811429316A CN 111221843 A CN111221843 A CN 111221843A
Authority
CN
China
Prior art keywords
query statement
statement
query
type
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811429316.7A
Other languages
English (en)
Inventor
刘思源
朱海龙
李铭
徐胜国
徐皓
李铮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201811429316.7A priority Critical patent/CN111221843A/zh
Publication of CN111221843A publication Critical patent/CN111221843A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种大数据处理方法及装置。其中,方法包括:接收输入的特定语言格式的查询语句;对查询语句进行语法解析,确定查询语句的语句类型;其中,语句类型包括混合查询语句类型及单查询语句类型;根据查询语句的语句类型,确定与查询语句相对应的执行方式;采用与查询语句相对应的执行方式对查询语句进行处理。本方案仅通过用户输入的查询语句,并对查询语句进行解析便可自动确定出与该查询语句匹配的执行方式,从而无需用户自行选择数据查询所需的计算引擎及存储引擎,进而降低用户的学习成本;并且,本方案针对于不同的语句类型,采用相应的执行方式,从而有利于提高执行方式与查询语句的匹配度,并有助于数据查询效率的提高。

Description

大数据处理方法及装置
技术领域
本发明涉及计算机技术领域,具体涉及一种大数据处理方法及装置。
背景技术
随着科技及社会的不断发展,各类数据呈井喷式地增长,同时也使得大量的大数据平台不断涌现,人们通过大数据平台可实现对海量数据的处理。
目前的大数据平台,需用户自行选择进行数据查询时所需的存储引擎或计算引擎,进而根据选择的计算引擎或存储引擎的引擎特点及语法规则等编译相应的执行代码,从而实现对数据的查询。
然而,采用现有大数据平台的数据查询方法,用户需学习大量的计算引擎及存储引擎知识,从而大幅增加用户的学习成本,降低用户体验;并且,现今科技发展迅速,计算引擎及存储引擎迭代更新较快,现有的大数据平台在加大用户学习成本的同时,也易发生因用户对计算引擎或存储引擎认知不足,而导致选择的计算引擎或存储引擎与实际的业务逻辑不匹配的情况,从而降低数据处理效率的弊端。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的大数据处理方法及装置。
根据本发明的一个方面,提供了一种大数据处理方法,包括:
接收利用任一种对外调用方式输入的特定语言格式的查询语句;
对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
根据本发明的另一方面,提供了一种大数据处理装置,包括:
接收模块,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句;
语句类型确定模块,适于对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
执行方式确定模块,适于根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
处理模块,适于采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
根据本发明的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述大数据处理方法对应的操作。
根据本发明的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述大数据处理方法对应的操作。
根据本发明提供的大数据处理方法及装置,通过接收输入的特定语言格式的查询语句;对查询语句进行语法解析,确定查询语句的语句类型;其中,语句类型包括混合查询语句类型及单查询语句类型;根据查询语句的语句类型,确定与查询语句相对应的执行方式;采用与查询语句相对应的执行方式对查询语句进行处理。本方案仅通过用户输入的查询语句,并对查询语句进行解析便可自动确定出与该查询语句匹配的执行方式,从而无需用户自行选择数据查询所需的计算引擎及存储引擎,进而降低用户的学习成本;并且,本方案针对于不同的语句类型,采用相应的执行方式,从而有利于提高执行方式与查询语句的匹配度,并有助于数据查询效率的提高。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明提供的一种预设的大数据处理系统的功能结构示意图;
图2示出了根据本发明一个实施例提供的一种大数据处理方法的流程示意图;
图3示出了根据本发明另一个实施例提供的一种大数据处理方法的流程示意图;
图4示出了根据本发明一个实施例提供的一种大数据处理装置的功能结构示意图;
图5示出了根据本发明一个实施例提供的一种计算设备的功能结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明所提供的大数据处理方法可应用于预设的大数据处理系统中。如图1所示,该预设的大数据处理系统包括:服务接口11、解析模块12、路由模块13、多个计算引擎14以及多个存储引擎15。
其中,服务接口11,提供至少一种对外调用方式,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句。该大数据处理系统中的特定语言格式的查询语句可以为查询逻辑语句,而非现有技术中根据计算引擎及存储引擎的特点及语法结构等专门编译的语句。
解析模块12,适于对查询语句进行语法解析及校验,生成逻辑查询计划。具体地,为保障数据查询效率以及避免系统资源浪费,解析模块12首先对服务接口11接收到的查询语句进行语法校验。可选的,若查询语句的语法校验不合格,可为用户反馈相应的提示信息,以供用户根据提示信息进行查询语句的及时修正。待语法校验成功后,进一步对查询语句进行解析,以生成相应的逻辑查询计划。从而供路由模块13、多个计算引擎14和/或多个存储引擎15基于逻辑查询计划获得最终的查询结果。
路由模块13,适于根据逻辑查询计划,确定与逻辑查询计划相对应的至少一个计算引擎和/或至少一个存储引擎,并将查询语句路由至该至少一个计算引擎和/或至少一个存储引擎。具体地,在解析模块12生成与查询语句相对应的逻辑查询计划之后,进一步由路由模块13根据逻辑查询计划生成相应的物理执行计划,即确定出与逻辑查询计划相对应的至少一个计算引擎和/或至少一个存储引擎,并将查询语句路由至该至少一个计算引擎和/或至少一个存储引擎。
多个计算引擎14以及多个存储引擎15,适于根据路由模块路由的查询语句,执行对应的查询处理,获得并输出查询结果。
图2示出了根据本发明一个实施例提供的一种大数据处理方法的流程示意图,如图2所示,该方法包括:
步骤S210,接收利用任一种对外调用方式输入的特定语言格式的查询语句。
本发明为用户提供一种统一的查询语言,从而降低输入的查询语句与计算引擎或存储引擎的语法结构的耦合度。
步骤S220,对查询语句进行语法解析,确定查询语句的语句类型;其中,语句类型包括混合查询语句类型及单查询语句类型。
其中,混合查询语句类型为查询语句涉及多个不同的存储引擎;而单查询语句类型为查询语句仅涉及单个存储引擎。本实施例对查询语句进行语法解析的具体方式不做限定,本领域技术人员可根据实际的业务场景自行选择。
在一种实现方式中,为提高解析结果的准确度,可将查询语句转换为相应的逻辑树,其中,逻辑树中的每个节点对应于查询语句中的一个查询子语句。在转换为相应的逻辑树之后,进一步对转换后的逻辑树进行拆分,从而获得与查询语句相对应的至少一个逻辑子树,根据拆分结果确定查询语句的语句类型。其中,在对逻辑树进行拆分过程中,可查找逻辑树中的候选多数据源连接节点;针对于查找到的候选多数据源连接节点,确定该候选多数据源连接节点所对应的各个分支的数据源是否满足混合处理规则;若是,则进行拆分处理。其中,若各个分支的数据源对应于不同类别的存储引擎,和/或,各个分支的数据源对应于不同的集群,和/或,各个分支的数据源对应于不同的业务连接,则确定满足混合处理规则。根据对逻辑树的拆分结果,可快速地确定出查询语句的语句类型。
步骤S230,根据查询语句的语句类型,确定与查询语句相对应的执行方式。
为提升查询语句的执行效率,本步骤中根据查询语句的语句类型,确定出与该语句类型的查询语句相匹配的执行方式。其中,本实施例对确定与查询语句相对应的执行方式的具体方法不做限定。例如,可根据查询语句的语句类型,查找与查询语句的语句类型相对应的至少一种候选执行方式;根据每种候选执行方式对应的执行效率和/或资源占用,确定出与查询语句相对应的执行方式。
可选的,可以预先为不同语句类型配置相应的执行方式,并存储不同语句类型与相应的执行方式的对应关系;则在步骤S220确定查询语句的语句类型之后,通过查找存储的对应关系,可快速地确定出与查询语句相对应的执行方式。并且,采用该种方式,当计算引擎或存储引擎等发生迭代更新时,无需修改查询语句,而仅需调整存储的查询语句类型与执行方式的对应关系,从而降低业务的维护成本。
步骤S240,采用与查询语句相对应的执行方式对查询语句进行处理。
由此可见,本实施例中接收输入的特定语言格式的查询语句;对查询语句进行语法解析,确定查询语句的语句类型;其中,语句类型包括混合查询语句类型及单查询语句类型;根据查询语句的语句类型,确定与查询语句相对应的执行方式;采用与查询语句相对应的执行方式对查询语句进行处理。本方案仅通过用户输入的查询语句,并对查询语句进行解析便可自动确定出与该查询语句匹配的执行方式,从而无需用户自行选择数据查询所需的计算引擎及存储引擎,进而降低用户的学习成本;并且,本方案针对于不同的语句类型,采用相应的执行方式,从而有利于提高执行方式与查询语句的匹配度,并有助于数据查询效率的提高。
图3示出了根据本发明另一个实施例提供的一种大数据处理方法的流程示意图,如图3所示,该方法包括:
步骤S310,接收利用任一种对外调用方式输入的特定语言格式的查询语句。
该特定语言格式的查询语句具体为SQL语句。
步骤S320,对查询语句进行语法解析,确定查询语句是否为混合查询语句类型;若是,则执行步骤S330;否则,执行步骤S340。
其中,在确定查询语句是否为混合查询语句类型时,需判断该查询语句是否为多数据源查询语句。若该查询语句为多数据源查询语句,则确定查询语句为混合查询语句类型;否则,则确定查询语句为单查询语句类型。
在实际的实施过程中,若查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定查询语句的语句类型为混合查询语句类型;和/或,若查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定查询语句的语句类型为混合查询语句类型;和/或,若查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定查询语句的语句类型为混合查询语句类型。
步骤S330,确定与查询语句相对应的至少一个存储引擎和至少一个计算引擎;将查询语句路由至该至少一个存储引擎和至少一个计算引擎。
若查询语句为混合查询语句类型,则表明查询语句的执行过程需进行跨存储引擎处理,所以,为实现混合查询语句类型的查询语句的处理,以及提高混合查询语句类型的查询语句的处理效率,本实施例在确定查询语句为混合查询语句类型之后,采用存储引擎结合计算引擎的执行方式对查询语句进行处理。
具体地,确定与查询语句相对应的至少一个存储引擎和至少一个计算引擎。并将查询语句路由至至少一个存储引擎和至少一个计算引擎,以供至少一个存储引擎依据查询语句进行查询处理得到中间查询结果,至少一个计算引擎依据中间查询结果进行计算处理得到最终的查询结果。
在实际的实施过程中,可将查询语句拆分为多个查询分句,将各个查询分句分别分发至对应的存储引擎和计算引擎;以供存储引擎执行相对应的查询分句获得相对应的中间查询结果,以及由计算引擎根据存储引擎反馈的中间处理结果以及与计算引擎相对应的查询分句进行处理,获得最终的查询结果。
步骤S340,则根据查询语句所对应的存储引擎的类别,确定与查询语句相对应的执行方式,采用与查询语句相对应的执行方式对所述查询语句进行处理。
若查询语句为单查询语句类型,则进一步根据查询语句所对应的存储引擎的类别,确定与查询语句相对应的执行方式,采用与查询语句相对应的执行方式对所述查询语句进行处理。
具体地,若与查询语句相对应的存储引擎为第一类存储引擎,则确定与查询语句相对应的为分布式计算引擎;并将查询语句路由至第一类存储引擎和分布式计算引擎,以供第一类存储引擎以及分布式计算引擎进行计算处理得到最终的查询结果。其中,第一类存储引擎为Hive等分布式存储引擎。
若与查询语句相对应的存储引擎为第二类存储引擎,则将查询语句路由至第二类存储引擎,以供第二类存储引擎执行查询语句获得查询结果。其中,第二类存储引擎为MySQL等非分布式存储引擎。
由此可见,本实施例仅通过用户输入的特定语言格式的查询语句,并对查询语句进行解析,确定查询语句的语句类型;进一步针对于混合语句类型,采用存储引擎获得中间处理结果,计算引擎根据中间处理结果获得最终的查询结果的执行方式,从而提高混合查询语句类型的查询语句的查询效率及查询结果的准确度;针对于单查询语句类型,进一步根据查询语句所对应的存储引擎的类别,确定与查询语句相对应的执行方式,从而利于提升单查询语句类型查询语句的查询效率及查询结果的准确度。
图4示出了根据本发明一个实施例提供的一种大数据处理装置的功能结构示意图。如图4所示,该装置包括:接收模块41、语句类型确定模块42、执行方式确定模块43、及处理模块44。
接收模块41,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句;
语句类型确定模块42,适于对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
执行方式确定模块43,适于根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
处理模块44,适于采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
可选的,执行方式确定模块43进一步适于:根据所述查询语句的语句类型,查找与所述查询语句的语句类型相对应的至少一种候选执行方式;
根据每种候选执行方式对应的执行效率和/或资源占用,确定出与所述查询语句相对应的执行方式。
可选的,执行方式确定模块43进一步适于:若所述查询语句的语句类型为混合查询语句类型,则确定与所述查询语句相对应的至少一个存储引擎和至少一个计算引擎;
处理模块44进一步适于:将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。
可选的,执行方式确定模块43进一步适于:若所述查询语句的语句类型为单查询语句类型,则根据所述查询语句所对应的存储引擎的类别,确定与所述查询语句相对应的执行方式。
可选的,若与所述查询语句相对应的存储引擎为第一类存储引擎,执行方式确定模块43进一步适于:确定与所述查询语句相对应的为分布式计算引擎;处理模块44进一步适于:将所述查询语句路由至所述第一类存储引擎和所述分布式计算引擎,以供所述第一类存储引擎及所述分布式计算引擎执行所述查询语句获得查询结果;
若与所述查询语句相对应的存储引擎为第二类存储引擎,处理模块44进一步适于:将所述查询语句路由至所述第二类存储引擎,以供所述第二类存储引擎执行所述查询语句获得查询结果。
可选的,语句类型确定模块42进一步适于:
若所述查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定所述查询语句的语句类型为混合查询语句类型。
可选的,所述查询语句为SQL语句。
其中,本实施例中大数据处理装置的各个模块的具体实施方式可参照图2和/或图3所示方法实施例中相应步骤的描述,本实施例对此不做赘述。
由此可见,本实施例中接收输入的特定语言格式的查询语句;对查询语句进行语法解析,确定查询语句的语句类型;其中,语句类型包括混合查询语句类型及单查询语句类型;根据查询语句的语句类型,确定与查询语句相对应的执行方式;采用与查询语句相对应的执行方式对查询语句进行处理。本方案仅通过用户输入的查询语句,并对查询语句进行解析便可自动确定出与该查询语句匹配的执行方式,从而无需用户自行选择数据查询所需的计算引擎及存储引擎,进而降低用户的学习成本;并且,本方案针对于不同的语句类型,采用相应的执行方式,从而有利于提高执行方式与查询语句的匹配度,并有助于数据查询效率的提高。
根据本发明一个实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的大数据处理方法。
图5示出了根据本发明一个实施例提供的一种计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图5所示,该计算设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:
处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器502,用于执行程序510,具体可以执行上述大数据处理方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行以下操作:
接收利用任一种对外调用方式输入的特定语言格式的查询语句;
对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
在一种可选的实施方式中,程序510具体可以用于使得处理器502执行以下操作:
根据所述查询语句的语句类型,查找与所述查询语句的语句类型相对应的至少一种候选执行方式;
根据每种候选执行方式对应的执行效率和/或资源占用,确定出与所述查询语句相对应的执行方式。
在一种可选的实施方式中,程序510具体可以用于使得处理器502执行以下操作:
若所述查询语句的语句类型为混合查询语句类型,则确定与所述查询语句相对应的至少一个存储引擎和至少一个计算引擎;
将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。
在一种可选的实施方式中,程序510具体可以用于使得处理器502执行以下操作:
若所述查询语句的语句类型为单查询语句类型,则根据所述查询语句所对应的存储引擎的类别,确定与所述查询语句相对应的执行方式。
在一种可选的实施方式中,程序510具体可以用于使得处理器502执行以下操作:
若与所述查询语句相对应的存储引擎为第一类存储引擎,则确定与所述查询语句相对应的为分布式计算引擎;并将所述查询语句路由至所述第一类存储引擎和所述分布式计算引擎,以供所述第一类存储引擎及所述分布式计算引擎执行所述查询语句获得查询结果;
若与所述查询语句相对应的存储引擎为第二类存储引擎,则将所述查询语句路由至所述第二类存储引擎,以供所述第二类存储引擎执行所述查询语句获得查询结果。
在一种可选的实施方式中,程序510具体可以用于使得处理器502执行以下操作:
若所述查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定所述查询语句的语句类型为混合查询语句类型。
在一种可选的实施方式中,所述查询语句为SQL语句。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例中的大数据处理装置的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1.一种大数据处理方法,包括:
接收利用任一种对外调用方式输入的特定语言格式的查询语句;
对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
A2.根据A1所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式进一步包括:
根据所述查询语句的语句类型,查找与所述查询语句的语句类型相对应的至少一种候选执行方式;
根据每种候选执行方式对应的执行效率和/或资源占用,确定出与所述查询语句相对应的执行方式。
A3.根据A1或A2所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式,采用与所述查询语句相对应的执行方式对所述查询语句进行处理进一步包括:
若所述查询语句的语句类型为混合查询语句类型,则确定与所述查询语句相对应的至少一个存储引擎和至少一个计算引擎;
将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。
A4.根据A1-A3中任一项所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式进一步包括:
若所述查询语句的语句类型为单查询语句类型,则根据所述查询语句所对应的存储引擎的类别,确定与所述查询语句相对应的执行方式。
A5.根据A4所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式,采用与所述查询语句相对应的执行方式对所述查询语句进行处理进一步包括:
若与所述查询语句相对应的存储引擎为第一类存储引擎,则确定与所述查询语句相对应的为分布式计算引擎;并将所述查询语句路由至所述第一类存储引擎和所述分布式计算引擎,以供所述第一类存储引擎及所述分布式计算引擎执行所述查询语句获得查询结果;
若与所述查询语句相对应的存储引擎为第二类存储引擎,则将所述查询语句路由至所述第二类存储引擎,以供所述第二类存储引擎执行所述查询语句获得查询结果。
A6.根据A1-A5中任一项所述的方法,其中,所述确定所述查询语句的语句类型进一步包括:
若所述查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定所述查询语句的语句类型为混合查询语句类型。
A7.根据A1-A6中任一项所述的方法,其中,所述查询语句为SQL语句。
本发明还公开了:B8.一种大数据处理装置,包括:
接收模块,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句;
语句类型确定模块,适于对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
执行方式确定模块,适于根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
处理模块,适于采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
B9.根据B8所述的装置,其中,所述执行方式确定模块进一步适于:
根据所述查询语句的语句类型,查找与所述查询语句的语句类型相对应的至少一种候选执行方式;
根据每种候选执行方式对应的执行效率和/或资源占用,确定出与所述查询语句相对应的执行方式。
B10.根据B8或B9所述的装置,其中,所述执行方式确定模块进一步适于:若所述查询语句的语句类型为混合查询语句类型,则确定与所述查询语句相对应的至少一个存储引擎和至少一个计算引擎;
所述处理模块进一步适于:将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。
B11.根据B8-B10中任一项所述的装置,其中,所述执行方式确定模块进一步适于:若所述查询语句的语句类型为单查询语句类型,则根据所述查询语句所对应的存储引擎的类别,确定与所述查询语句相对应的执行方式。
B12.根据B11所述的装置,其中,若与所述查询语句相对应的存储引擎为第一类存储引擎,所述执行方式确定模块进一步适于:确定与所述查询语句相对应的为分布式计算引擎;所述处理模块进一步适于:将所述查询语句路由至所述第一类存储引擎和所述分布式计算引擎,以供所述第一类存储引擎及所述分布式计算引擎执行所述查询语句获得查询结果;
若与所述查询语句相对应的存储引擎为第二类存储引擎,所述处理模块进一步适于:将所述查询语句路由至所述第二类存储引擎,以供所述第二类存储引擎执行所述查询语句获得查询结果。
B13.根据B8-B12中任一项所述的装置,其中,所述语句类型确定模块进一步适于:
若所述查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定所述查询语句的语句类型为混合查询语句类型。
B14.根据B8-B13中任一项所述的装置,其中,所述查询语句为SQL语句。
本发明还公开了:C15.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如A1-A7中任一项所述的大数据处理方法对应的操作。
本发明还公开了:D16.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如A1-A7中任一项所述的大数据处理方法对应的操作。

Claims (10)

1.一种大数据处理方法,包括:
接收利用任一种对外调用方式输入的特定语言格式的查询语句;
对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
2.根据权利要求1所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式进一步包括:
根据所述查询语句的语句类型,查找与所述查询语句的语句类型相对应的至少一种候选执行方式;
根据每种候选执行方式对应的执行效率和/或资源占用,确定出与所述查询语句相对应的执行方式。
3.根据权利要求1或2所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式,采用与所述查询语句相对应的执行方式对所述查询语句进行处理进一步包括:
若所述查询语句的语句类型为混合查询语句类型,则确定与所述查询语句相对应的至少一个存储引擎和至少一个计算引擎;
将所述查询语句路由至所述至少一个存储引擎和至少一个计算引擎,以供所述至少一个存储引擎依据所述查询语句进行查询处理得到中间查询结果,所述至少一个计算引擎依据所述中间查询结果进行计算处理得到最终的查询结果。
4.根据权利要求1-3中任一项所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式进一步包括:
若所述查询语句的语句类型为单查询语句类型,则根据所述查询语句所对应的存储引擎的类别,确定与所述查询语句相对应的执行方式。
5.根据权利要求4所述的方法,其中,所述根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式,采用与所述查询语句相对应的执行方式对所述查询语句进行处理进一步包括:
若与所述查询语句相对应的存储引擎为第一类存储引擎,则确定与所述查询语句相对应的为分布式计算引擎;并将所述查询语句路由至所述第一类存储引擎和所述分布式计算引擎,以供所述第一类存储引擎及所述分布式计算引擎执行所述查询语句获得查询结果;
若与所述查询语句相对应的存储引擎为第二类存储引擎,则将所述查询语句路由至所述第二类存储引擎,以供所述第二类存储引擎执行所述查询语句获得查询结果。
6.根据权利要求1-5中任一项所述的方法,其中,所述确定所述查询语句的语句类型进一步包括:
若所述查询语句所对应的数据源信息中至少两个数据源对应于不同类别的存储引擎,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的集群,则确定所述查询语句的语句类型为混合查询语句类型;
和/或,若所述查询语句所对应的数据源信息中至少两个数据源对应于不同的业务连接,则确定所述查询语句的语句类型为混合查询语句类型。
7.根据权利要求1-6中任一项所述的方法,其中,所述查询语句为SQL语句。
8.一种大数据处理装置,包括:
接收模块,适于接收利用任一种对外调用方式输入的特定语言格式的查询语句;
语句类型确定模块,适于对所述查询语句进行语法解析,确定所述查询语句的语句类型;其中,所述语句类型包括混合查询语句类型及单查询语句类型;
执行方式确定模块,适于根据所述查询语句的语句类型,确定与所述查询语句相对应的执行方式;
处理模块,适于采用与所述查询语句相对应的执行方式对所述查询语句进行处理。
9.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的大数据处理方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的大数据处理方法对应的操作。
CN201811429316.7A 2018-11-27 2018-11-27 大数据处理方法及装置 Pending CN111221843A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811429316.7A CN111221843A (zh) 2018-11-27 2018-11-27 大数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811429316.7A CN111221843A (zh) 2018-11-27 2018-11-27 大数据处理方法及装置

Publications (1)

Publication Number Publication Date
CN111221843A true CN111221843A (zh) 2020-06-02

Family

ID=70808708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811429316.7A Pending CN111221843A (zh) 2018-11-27 2018-11-27 大数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN111221843A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064914A (zh) * 2021-04-22 2021-07-02 中国工商银行股份有限公司 数据提取方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090019000A1 (en) * 2007-07-12 2009-01-15 Mitchell Jon Arends Query based rule sets
CN102982075A (zh) * 2012-10-30 2013-03-20 北京京东世纪贸易有限公司 支持访问异构数据源的系统和方法
CN106777108A (zh) * 2016-12-15 2017-05-31 贵州电网有限责任公司电力科学研究院 一种基于混合存储架构的数据查询方法和装置
CN108241540A (zh) * 2018-01-09 2018-07-03 福建星瑞格软件有限公司 一种跨数据源查询的任务调度方法以及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090019000A1 (en) * 2007-07-12 2009-01-15 Mitchell Jon Arends Query based rule sets
CN102982075A (zh) * 2012-10-30 2013-03-20 北京京东世纪贸易有限公司 支持访问异构数据源的系统和方法
CN106777108A (zh) * 2016-12-15 2017-05-31 贵州电网有限责任公司电力科学研究院 一种基于混合存储架构的数据查询方法和装置
CN108241540A (zh) * 2018-01-09 2018-07-03 福建星瑞格软件有限公司 一种跨数据源查询的任务调度方法以及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
向红: "基于本体的异构数据集成系统的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064914A (zh) * 2021-04-22 2021-07-02 中国工商银行股份有限公司 数据提取方法及装置

Similar Documents

Publication Publication Date Title
US11551007B2 (en) Determining intent from a historical vector of a to-be-analyzed statement
CN111221842A (zh) 大数据处理系统及方法
US9122540B2 (en) Transformation of computer programs and eliminating errors
CN106547527B (zh) 一种JavaScript文件构建方法及装置
CN111309751A (zh) 大数据处理方法及装置
CN111221852A (zh) 基于大数据的混合查询处理方法及装置
CN111898643A (zh) 一种语义匹配方法及装置
CN116860949B (zh) 问答处理方法、装置、系统、计算设备及计算机存储介质
CN111026634A (zh) 一种接口自动化测试系统、方法、装置及存储介质
CN111079408A (zh) 一种语种识别方法、装置、设备及存储介质
CN113504900A (zh) 一种编程语言转换方法和装置
CN115599359A (zh) 一种代码生成方法、装置、设备及介质
CN111221888A (zh) 大数据分析系统及方法
CN111580821B (zh) 脚本绑定方法、装置、电子设备及计算机可读存储介质
CN109753658B (zh) 交互方法和装置
CN112988163B (zh) 编程语言智能适配方法、装置、电子设备和介质
CN112084795A (zh) 一种翻译系统和翻译服务调用的方法、装置
CN111221841A (zh) 基于大数据的实时处理方法及装置
CN111221843A (zh) 大数据处理方法及装置
CN111221860A (zh) 基于大数据的混合查询优化方法及装置
US9569187B2 (en) Irreducible modules
CN110489124B (zh) 源代码执行方法、装置、存储介质及计算机设备
CN113495723B (zh) 一种调用功能组件的方法、装置及存储介质
CN110188274B (zh) 搜索纠错方法及装置
CN109783134B (zh) 前端页面配置方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200602