一种数据查询的方法及系统技术方案

技术编号:12312358 阅读:76 留言:0更新日期:2015-11-11 20:11
本发明专利技术公开了一种数据查询的方法及系统,该方法包括:接收到第一数据查询请求,解析第一数据查询请求,确定第一数据查询请求所请求的数据表处于第一数据以及第二数据库,通过包含了临时数据表的第一数据库引擎以响应第一数据查询请求,这里的临时数据表包含了第二数据库中的数据。简单来讲,就是在第一数据查询请求是混合型数据查询请求时,则系统将第二数据库中的数据表导入到第一数据库中,然后通过第一数据库来直接响应第一数据查询请求,这样就可以使得第一数据查询请求查询出两个数据库中的数据表,从而实现了数据库的混合查询,提升了数据查询效率。

【技术实现步骤摘要】

本申请涉及计算机
,尤其涉及一种数据查询的方法及系统
技术介绍
随着电子技术发展,计算机的应用也越来越广泛,在数据库管理中常用到两种查询引擎,一种是数据仓库工具Hive引擎,另一种则是关系型数据库管理系统(英文:microsoft Structured Query Language,简称:MySQL)引擎,若是 SQL 语言结构引用的是SQL数据库中的数据表时,则直接通过Hive引擎来运行,若是SQL语言结构引用的是MySQL数据库时,则直接通过MySQL数据库引擎来运行。但是,目前的数据库查询系统并不能支持混合查询,这样就导致数据库查询系统的效率较低。
技术实现思路
本专利技术实施例提供了一种切换标签页面的方法及电子设备,用以解决现有技术中数据库查询系统并不能支持混合查询,这样就导致数据库查询系统的效率较低的问题。其具体的技术方案如下: 一种数据查询的方法,所述方法包括: 接收到第一数据查询请求; 解析所述第一数据查询请求,确定所述第一数据查询请求所请求的数据表处于第一数据以及第二数据库; 通过包含了临时数据表的第一数据库引擎响应所述第一数据查询请求,其中,所述临时数据表包含了所述第二数据库中的数据。可选的,解析所述第一数据查询请求,确定所述第一数据查询请求所请求的数据表处于第一数据以及第二数据库,包括: 解析所述第一数据查询请求的数据语言结构; 基于所述数据语言结构,确定所述第一数据查询请求所请求的数据表处于第一数据库以及第二数据库。可选的,在所述第一数据查询请求所引用的数据表处于第一数据库以及第二数据库时,通过包含了临时数据表的第一数据库引擎响应所述第一数据查询请求,包括: 在所述第一查询请求所引用的数据表处于第一数据库以及第二数据库时,将所述第二数据库中的数据导入到所述第一数据库中,生成第一临时表; 通过所述第一临时表以及所述第一数据库中的数据表响应所述第一查询请求。可选的,还包括: 在所述第一数据查询请求所引用的数据表处于第一数据库时,则通过所述第一数据库引擎响应所述第一数据查询请求。可选的,还包括: 在所述第一数据查询请求所引用的数据表处于第二数据库时,则通过所述第二数据库响应所述第一数据查询请求。可选的,在通过所述第一数据库响应所述第一数据查询请求之后,还包括: 获取所述第一数据库引擎输出的结果数据表; 将所述结果数据表转换为所述第二数据库中的数据表,并将所述结果数据表保存在所述第二数据库中。 —种数据查询系统,包括: 接收模块,用于接收到第一数据查询请求; 解析模块,用于解析所述第一数据查询请求,确定所述第一数据查询请求所请求的数据表处于第一数据以及第二数据库; 响应模块,用于通过包含了临时数据表的第一数据库引擎响应所述第一数据查询请求,其中,所述临时数据表包含了所述第二数据库中的数据。可选的,所述解析模块,具体用于解析所述第一数据查询请求的数据语言结构;基于所述数据语言结构,确定所述第一数据查询请求所请求的数据表处于第一数据库以及第二数据库。可选的,所述响应模块,具体用于在所述第一查询请求所引用的数据表处于第一数据库以及第二数据库时,将所述第二数据库中的数据导入到所述第一数据库中,生成第一临时表;通过所述第一临时表以及所述第一数据库中的数据表响应所述第一查询请求。可选的,还包括: 获取模块,用于获取所述第一数据库引擎输出的结果数据表; 处理模块,用于将所述结果数据表转换为所述第二数据库中的数据表,并将所述结果数据表保存在所述第二数据库中。本专利技术实施例提供了一种数据查询的方法,该方法包括:接收到第一数据查询请求,解析第一数据查询请求,确定第一数据查询请求所请求的数据表处于第一数据以及第二数据库,通过包含了临时数据表的第一数据库引擎以响应第一数据查询请求,这里的临时数据表包含了第二数据库中的数据。简单来讲,就是在第一数据查询请求是混合型数据查询请求时,则系统将第二数据库中的数据表导入到第一数据库中,然后通过第一数据库来直接响应第一数据查询请求,这样就可以使得第一数据查询请求查询出两个数据库中的数据表,从而实现了数据库的混合查询,提升了数据查询效率。【附图说明】 图1为本专利技术实施例中一种数据查询的方法的流程图; 图2为本专利技术实施例中一种数据查询系统的结构示意图。【具体实施方式】本专利技术实施例提供了一种数据查询的方法,该方法包括:接收到第一数据查询请求,解析第一数据查询请求,确定第一数据查询请求所请求的数据表处于第一数据以及第二数据库,通过包含了临时数据表的第一数据库引擎以响应第一数据查询请求,这里的临时数据表包含了第二数据库中的数据。简单来讲,就是在第一数据查询请求是混合型数据查询请求时,则系统将第二数据库中的数据表导入到第一数据库中,然后通过第一数据库来直接响应第一数据查询请求,这样就可以使得第一数据查询请求查询出两个数据库中的数据表,从而实现了数据库的混合查询,提升了数据查询效率。下面通过附图以及具体实施例对本专利技术技术方案做详细的说明,应当理解,本专利技术实施例以及实施例中的具体技术特征只是对本专利技术技术方案的说明,而不是限定,在不冲突的情况下,本专利技术实施例以及实施例中的具体技术特征可以相互组合。如图1所示为本专利技术实施例中一种数据查询方法的流程图,该方法可以应用到一数据查询系统中,该方法包括: SlOl,接收第一数据查询请求; S102,解析第一数据查询请求,确定第一数据查询请求所请求的数据表处于第一数据以及第二数据库; S103,通过包含了临时数据表的第一数据库引擎响应第一数据查询请求。具体来讲,在数据库查询系统接收到第一数据查询请求时,该数据库查询系统将第一数据查询请求进行解析,也就是解析第一数据查询请求的数据语言结构,比如说,该第一数据查询请求为SQL查询时,该数据库查询系统将解析SQL查询的语言结构。然后数据库查询系统将基于语言结构,确定第一数据查询请求所要调用的数据表处于两个独立的数据库中,即:第一数据库以及第二数据库,比如说解析结果为SQL查询需要调用SQL数据中的数据表和/或MySQL数据库中的数据表。若是数据库查询系统确定出第一数据查询请求所请求的数据表处于第一数据库中时,该数据库查询系统将调用第一数据库对应的数据库引擎响应第一数据查询请求,输出对应的数据表。比如说,第一数据查询请求解析的结果为只查询SQL数据库中的数据表,并没有Hive相关表的应用时,数据库查询系统将调度sqoop工具,然后通过sqoop工具调用MySQL数据库引擎执行,最后通过MySQL数据库引擎来响应第一数据库查询请求。从而输出对应数据库中的数据表。若是数据库查询系统确定出第一数据查询请求所请求的数据表处于第二数据库中时,该数据库查询系统将调用第二数据库对应的数据库引擎响应第一数据查询请求,数据对应的数据表。比如说,第一数据查询请求解析的结果为只查询Hive数据库中的数据表,并没有MySQL相关表的引用时,此时数据库查询系统将调度sqoop工具,然后通过sqoop工具调用Hive数据库引擎,最后通过Hive数据库引擎来响应第一数据库查询请求。从而输出对应数据库中的数据表。若是数据库查询系统确定出第一数据查询请求所请求的数据表处于第二数本文档来自技高网...

【技术保护点】
一种数据查询的方法,其特征在于,所述方法包括:接收到第一数据查询请求;解析所述第一数据查询请求,确定所述第一数据查询请求所请求的数据表处于第一数据以及第二数据库;通过包含了临时数据表的第一数据库引擎响应所述第一数据查询请求,其中,所述临时数据表包含了所述第二数据库中的数据。

【技术特征摘要】

【专利技术属性】
技术研发人员:张利强肖俊
申请(专利权)人:虎扑上海文化传播股份有限公司
类型:发明
国别省市:上海;31

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

1