[发明专利]数据库访问方法及装置有效
申请号: | 201710552947.7 | 申请日: | 2017-07-07 |
公开(公告)号: | CN107451203B | 公开(公告)日: | 2020-09-01 |
发明(设计)人: | 陈萌萌;施宇迪;肖意 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥;李威 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 访问 方法 装置 | ||
本说明书一个或多个实施例提供一种数据库访问方法及装置,该方法可以包括:接收数据库访问请求;在相关联的存储空间存储的历史执行计划中,查询对应于所述数据库访问请求的历史执行计划;当查询到所述历史执行计划时,执行所述历史执行计划,以响应所述数据库访问请求。
技术领域
本说明书一个或多个实施例涉及数据库技术领域,尤其涉及一种数据库访问方法及装置。
背景技术
在相关技术中,用户可以通过诸如SQL(Structured Query Language,结构化查询语言)等语言生成数据库访问请求,以发起对数据库的访问。SQL语言是一种描述型语言(非过程型语言),用户在基于SQL语言发起数据库访问请求时,需要通过SQL语言描述其对数据库的数据访问需求,比如查询哪张表、什么样的数据、对数据做哪些操作等。而对于数据库内核而言,在接收到用户发出的数据库访问请求时,需要将数据库访问请求生成为可执行的代码,这部分代码通常称为“执行计划”(或者“查询计划”,也可简称为“计划”)。
执行计划从执行和优化方式上大体可分为“解释型”(interpreted)和“编译型”(compiled)两种。对于解释型的执行计划,通过将某些常用操作“函数化”,以及生成一些执行的“模板”,并对基础函数或模板的拼装、组合,即可形成解释型的执行计划。由于解释型执行计划可以通过各种模板或函数的排列组合可以组成任意复杂的执行计划,因而具有使用灵活、易于实现等优势。
与解释型执行计划的生成过程不同,编译型执行计划的生成思路是将数据库访问请求直接翻译成代码,然后利用“即时编译(JIT,just-in-time compilation)”技术将代码动态编译为可以执行的机器代码并动态加载到运行环境中,因而编译型执行计划往往执行效率更高,相比解释型执行计划可能有多达几个数量级的性能提升。
然而,虽然编译型执行计划的执行效率更高,但是编译型执行计划的生成过程需要调用编译器的即时编译模块,使得编译型执行计划的生成过程相比于解释型执行计划而言更加耗时,表现为数据库的反馈延迟较大。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种数据库访问方法及装置,可以减少数据库访问所需占用的处理资源,提升对执行计划的生成效率,并有助于加快数据库访问。
为实现上述目的,提供技术方案如下:
根据第一方面,提出了一种数据库访问方法,包括:
接收数据库访问请求;
在相关联的存储空间存储的历史执行计划中,查询对应于所述数据库访问请求的历史执行计划;
当查询到所述历史执行计划时,执行所述历史执行计划,以响应所述数据库访问请求。
根据第二方面,提出了一种数据库访问装置,包括:
接收单元,接收数据库访问请求;
查询单元,在相关联的存储空间存储的历史执行计划中,查询对应于所述数据库访问请求的历史执行计划;
执行单元,当查询到所述历史执行计划时,执行所述历史执行计划,以响应所述数据库访问请求。
根据第三方面,提出了一种数据库访问装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为实现如第一方面所述的方法。
由以上技术方案可见,本说明书一个或多个实施例通过存储历史执行计划,并将历史执行计划应用于对数据库访问请求的响应,可以实现对历史执行计划的复用,而无需重复生成相同的执行计划,从而能够减少数据库访问所需占用的处理资源,提升对执行计划的生成效率,并有助于加快数据库访问。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710552947.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种小型鱼饲料原料震动筛选装置
- 下一篇:一种富硒茶叶分级装置