数据库查询方法、系统、存储介质以及设备技术方案

技术编号:38706684 阅读:12 留言:0更新日期:2023-09-08 14:47
本发明专利技术属于数据库技术领域,尤其适用于嵌入式数据库技术领域,具体涉及数据库查询方法、系统、存储介质以及设备,包括:接收基于对象关系映射框架发起的数据库查询请求;分析所述数据库查询请求以获取与其对应的元数据信息;结合所述数据库查询请求、所述元数据信息转换为逻辑执行计划;基于所述逻辑执行计划完成查询请求并返回查询结果;本发明专利技术在接收查询请求后,通过对象关系映射框架调用内部转换器直接转换成逻辑执行计划,通过对象关系映射框架直接和存储引擎进行交互,获取数据处理结果,减少中间处理环节,从而提高查询效率。从而提高查询效率。从而提高查询效率。

【技术实现步骤摘要】
数据库查询方法、系统、存储介质以及设备


[0001]本专利技术属于数据库
,尤其适用于嵌入式数据库
,具体涉及数据库查询方法、系统、存储介质以及设备。

技术介绍

[0002]现有的关系型数据库通常由API接口、计算层、存储层组成,用户通过API接口框架输入SQL语句的方式访问数据库,SQL语句通过解析器进行词法、语法的解析,然后通过优化器,最终形成执行计划,再交给执行器执行。
[0003]但是,现有的由于需要将查询请求改写成SQL语句再经过解析器,导致查询处理路径较长,查询效率较低。

技术实现思路

[0004]为了克服现有技术的不足,本专利技术提供数据库查询方法、系统、存储介质以及设备,以解决现有技术的查询处理路径较长,查询效率较低的问题。
[0005]本专利技术其中一方案提供了一种数据库查询方法,包括:
[0006]接收基于对象关系映射框架发起的数据库查询请求;
[0007]分析所述数据库查询请求以获取与其对应的元数据信息;
[0008]结合所述数据库查询请求、所述元数据信息转换为逻辑执行计划;
[0009]基于所述逻辑执行计划完成查询请求并返回查询结果。
[0010]在本方案中,在接收查询请求后,通过对象关系映射框架调用内部转换器直接转换成逻辑执行计划,通过对象关系映射框架直接和存储引擎进行交互,获取数据处理结果,减少中间处理环节,从而提高查询效率。
[0011]在本专利技术其中一个方案中,所述数据库查询方法还包括:/>[0012]在接收所述数据库查询请求前,建立所述对象关系映射框架中的对象化接口与所述元数据信息的映射关系。
[0013]在本专利技术其中一个方案中,所述分析所述数据库查询请求以获取与其对应的元数据信息,具体包括:
[0014]获取所述数据库查询请求包含的若干个所述对象化接口的调用信息;
[0015]基于所述映射关系,获取与所述调用信息对应的元数据信息;
[0016]基于所述调用信息、与所述调用信息对应的元数据信息,生成逻辑节点。
[0017]在本专利技术其中一个方案中,所述将所述数据库查询请求转换为逻辑执行计划包括:
[0018]将若干个所述逻辑节点整理为对应所述数据库查询请求的逻辑节点列表;
[0019]通过转换器以预定的逻辑顺序将所述逻辑节点列表中的逻辑节点转换为若干个逻辑执行计划算子;
[0020]基于所述逻辑执行计划算子之间的依赖关系,通过若干个所述逻辑计划执行算子
构建对应所述数据库查询请求的逻辑执行计划。
[0021]在本专利技术其中一个方案中,所述逻辑节点至少包括以下之一:查询对象、过滤条件、数据分组、返回信息、数据去重、数据排序、数据筛选。
[0022]在本专利技术其中一个方案中,所述方法还包括对所述对象关系映射框架包含的对象化接口进行更新,具体包括:
[0023]在数据库启动时,基于所述对象化接口与所述元数据信息的映射关系,将所述数据库更新的所述元数据信息保存至所述对象关系映射框架的对象化接口;
[0024]在所述数据库进行查询时,基于所述对象化接口与所述元数据信息的映射关系,将所述数据库更新的所述元数据信息保存至所述对象关系映射框架的对象化接口。
[0025]所述基于所述逻辑执行计划完成查询请求并返回查询结果,具体包括:
[0026]通过优化器对所述逻辑执行计划进行优化;
[0027]基于优化后的所述逻辑执行计划生成物理执行计划,根据所述物理执行计划调用存储引擎接口响应查询请求。
[0028]在本专利技术其中一个方案中还指出了一种数据库查询系统,可用于上述多个方案中的任意一个所述的数据库查询方法,包括:
[0029]接口模块,接收基于对象关系映射框架发起的数据库查询请求;
[0030]计算模块,分析所述数据库查询请求以获取与其对应的元数据信息;
[0031]转换模块,结合所述数据库查询请求、所述元数据信息转换为逻辑执行计划;
[0032]执行模块,基于所述逻辑执行计划完成查询请求并返回查询结果。
[0033]在本专利技术其中一个方案中还指出了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述多个方案中的任意一个所述的数据库查询方法。
[0034]在本专利技术其中一个方案中还指出了一种数据库查询设备,包括至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器上存储有可被至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器在执行时能够实现如上述多个方案中的任意一个所述的数据库查询方法。
附图说明
[0035]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
[0036]图1表示本专利技术其中一实施例的数据库查询方法的流程示意图;
[0037]图2表示本专利技术其中一实施例的接数据库查询的流程示意图;
[0038]图3表示本专利技术其中一实施例的将数据库查询请求转换为逻辑执行计划的流程示意图;
[0039]图4表示本专利技术另一实施例的将数据库查询请求转换为逻辑执行计划的流程示意图;
[0040]图5表示本专利技术其中一实施例的完成查询请求并返回查询结果的流程示意图;
[0041]图6表示本专利技术其中一实施例的数据库查询系统的架构示意图;
[0042]图7表示本专利技术其中一实施例的数据库查询设备的架构示意图;
[0043]图8表示本专利技术其中一实施例的由转换器将逻辑节点转换为逻辑执行计划算子的逻辑顺序图。
具体实施方式
[0044]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0045]需要说明,若本专利技术实施例中有涉及方向性指示(诸如上、下、左、右、前、后
……
),则该方向性指示仅用于解释在某一特定姿态下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
[0046]另外,若本专利技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,若全文中出现的“和/或”或者“及/或”,其含义包括三个并列的方案,以“A和/或B”为例,包括A方案、或B方案、或A和B同本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据库查询方法,其特征在于,包括:接收基于对象关系映射框架发起的数据库查询请求;分析所述数据库查询请求以获取与其对应的元数据信息;结合所述数据库查询请求、所述元数据信息转换为逻辑执行计划;基于所述逻辑执行计划完成查询请求并返回查询结果。2.如权利要求1所述的数据库查询方法,其特征在于,所述数据库查询方法还包括:在接收所述数据库查询请求前,建立所述对象关系映射框架中的对象化接口与所述元数据信息的映射关系。3.如权利要求2所述的数据库查询方法,其特征在于,所述分析所述数据库查询请求以获取与其对应的元数据信息,具体包括:获取所述数据库查询请求包含的若干个所述对象化接口的调用信息;基于所述映射关系,获取与所述调用信息对应的元数据信息;基于所述调用信息、与所述调用信息对应的元数据信息,生成逻辑节点。4.如权利要求3所述的数据库查询方法,其特征在于,所述将所述数据库查询请求转换为逻辑执行计划包括:将若干个所述逻辑节点整理为对应所述数据库查询请求的逻辑节点列表;通过转换器以预定的逻辑顺序将所述逻辑节点列表中的逻辑节点转换为若干个逻辑执行计划算子;基于所述逻辑执行计划算子之间的依赖关系,通过若干个所述逻辑计划执行算子构建对应所述数据库查询请求的逻辑执行计划。5.如权利要求3所述的数据库查询方法,其特征在于,所述逻辑节点至少包括以下之一:查询对象、过滤条件、数据分组、返回信息、数据去重、数据排序、数据筛选。6.如权利要求2

5任意一项所述的数据库查询方法,其特征在于,所述方法还包括对所述对象关...

【专利技术属性】
技术研发人员:张若吴峰伍国彪
申请(专利权)人:粤港澳大湾区广东国创中心
类型:发明
国别省市:

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

1