[发明专利]一种数据查询的优化方法及装置有效
申请号: | 201610130398.X | 申请日: | 2016-03-08 |
公开(公告)号: | CN107168977B | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 李阳 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/28 |
代理公司: | 北京晋德允升知识产权代理有限公司 11623 | 代理人: | 杨移 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 查询 优化 方法 装置 | ||
本申请公开了一种数据查询的优化方法及装置,该方法包括:接收数据查询请求,确定数据查询请求所对应的待查询数据的属性信息以及各数据表,根据属性信息,分别在各数据表中进行采样,得到各数据表对应的样本数据,根据样本数据,生成基于所有样本数据的样本执行计划,执行该样本执行计划,并根据执行结果,获取针对所有样本数据的样本统计信息,根据样本统计信息,生成针对各数据表的全局统计信息,根据所述全局统计信息,在预先针对各数据表生成的各全局执行计划中,确定最优全局执行计划。该方法适用于多表和单表的查询优化,实用性强。
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据查询的优化方法及装置。
背景技术
随着信息技术的发展,数据库得到了广泛的应用,数据的存储量与日俱增,用户对数据库中数据的查询需求也越来越复杂。这就需要针对数据库的查询进行优化,以保证数据库在处理大量复杂的查询请求时的查询效率和质量。
目前,对于关系型数据库而言,其对数据查询的优化过程通常为:数据库接收结构化查询语言(Structured Query Language)查询请求,并根据该SQL查询请求,生成多种执行计划(其中,执行计划是数据库针对查询请求生成的一种查询的规划,如:采用何种查询算法、多个数据表的查询次序等等),之后,数据库会根据一种称为统计信息的描述性信息(其中,统计信息是能够描述数据在数据表中的分布特征的信息),对各个执行计划可能的查询耗时和处理资源的消耗进行预测,以便选择出最优的执行计划,后续可按照该最优的执行计划进行数据查询。然而,在实际应用时,数据库会对数据表中的数据进行编辑操作(如:增加数据、删除数据、改动数据等),这样就会造成统计信息与数据表中当前的数据不符(即,统计信息出现了误差),进而会影响对执行计划的预测的准确性。
现有技术中,为了避免或降低统计信息所造成的误差而影响对执行计划预估的准确性,提出两种针对数据查询时的优化方式:
其中一种方式为:对于某查询请求所生成的多种执行计划而言,数据库将所有的执行计划均执行一遍,并获取执行每一种执行计划时的耗时、消耗的资源等信息,从而确定出最优的一种执行计划。那么,当服务器在后续过程再次接收到同类型的查询请求后,便可以直接选用前述最优的执行计划进行数据的查询。
另一种方式为:对各数据表中的数据进行采样,得到各数据表自身的样本数据,且在采样得到的样本数据的基础上,分析出每一张数据表的统计信息。
但是,对于上述两种方式而言,均存在一定的缺陷:
在第一种方式中,执行完所有的执行计划将耗费较多的时间以及处理资源,考虑到数据库在实际应用中将面对大量的查询请求,显然,采用第一种方式将导致数据库的工作负荷过高,最终会影响查询效率,并不利于实际应用。
在第二种方式中,在得到统计信息的过程中将不执行任何的执行计划,那么,当查询请求涉及到多张数据表的情况下,数据库只能够分别根据每一张数据表自身的统计信息,对执行计划进行预测,这样就可能造成根据不同数据表的统计信息预测出不同的最优执行计划的现象,显然,会对数据库在选择最优执行计划的过程中造成干扰。也就是说,上述的第二种方式只适用于单一数据表的执行计划的预测,如果查询时涉及到多张数据表,那么,使用第二种方式将不能有效得到针对多张数据表全局的统计信息。
发明内容
本申请实施例提供一种数据查询的优化方法,用以解决现有的数据查询优化的过程中实用性较差的问题。
本申请实施例提供的一种数据查询的优化方法,应用于关系型数据库,该方法包括:
接收数据查询请求;
确定所述数据查询请求所对应的待查询数据的属性信息以及各数据表;
根据所述属性信息,分别在各数据表中进行采样,得到各数据表对应的样本数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610130398.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息资源的处理方法和设备
- 下一篇:消息展示的方法和装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置