[发明专利]同步SQL执行计划的方法和装置在审
申请号: | 201611000840.3 | 申请日: | 2016-11-14 |
公开(公告)号: | CN108073612A | 公开(公告)日: | 2018-05-25 |
发明(设计)人: | 金海锋;侯松 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 方高明 |
地址: | 518052 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 生产库 方法和装置 目标测试 数据库统计 数据项 关系获取 信息同步 数据处理 测试库 库生成 数据量 数据库 关联 | ||
本发明涉及一种同步SQL执行计划的方法和装置。上述方法包括:确定与SQL执行计划关联的数据项;从目标生产库中提取所述数据项的数据库统计信息;获取生产库与测试库的对应关系;根据所述对应关系获取与所述目标生产库对应的目标测试库;将所述数据库统计信息同步至所述目标测试库。上述同步SQL执行计划的方法和装置,可使目标测试库生成与目标生产库相同的SQL执行计划,且处理的数据量小,处理过程简单,能有效减轻数据库的数据处理压力。
技术领域
本发明涉及数据库技术领域,特别是涉及一种同步SQL执行计划的方法和装置。
背景技术
在数据库中,一个SQL(Structured Query Language,结构化查询语言)语句表示想要得到的数据,但是并没有表示如何获取数据,当服务器中的数据库接收到的SQL语句的时候,通过计算执行成本会选择具体如何获取数据,最终SQL语句被物理性执行以获取对应的数据的方法被称为执行计划。
SQL语句在正式的工作数据库执行前,通常需要在测试数据库中进行测试,对SQL语句的性能做出预判,避免在正式的工作数据库中产生故障。由于正式的工作数据库与测试数据库的数据量不一致,经常会导致SQL语句在测试数据库与正式的工作数据库中的执行计划不同,造成SQL语句在正式的工作数据库中执行时出现性能问题。在传统方式中,为了解决SQL语句在正式的工作数据库与测试数据库的执行计划不同的问题,常用的作法是保持正式的工作数据库与测试数据库的数据量一致,但是数据量大,导致处理过程复杂,给数据库造成较大的数据处理压力。
发明内容
基于此,有必要提供一种同步SQL执行计划的方法,处理的数据量小,处理过程简单,能有效减轻数据库的数据处理压力。
此外,还有必要提供一种同步SQL执行计划的装置,处理的数据量小,处理过程简单,能有效减轻数据库的数据处理压力。
一种同步SQL执行计划的方法,包括:
确定与SQL执行计划关联的数据项;
从目标生产库中提取所述数据项的数据库统计信息;
获取生产库与测试库的对应关系;
根据所述对应关系获取与所述目标生产库对应的目标测试库;
将所述数据库统计信息同步至所述目标测试库。
在其中一个实施例中,在所述从目标生产库中提取所述数据项的数据库统计信息的步骤之前,还包括:
获取待审计的用户列表;
获取与所述用户列表中的各个用户标识对应的目标生产库;
所述从目标生产库中提取所述数据项的数据库统计信息,包括:
分别从与所述各个用户标识对应的目标生产库中提取与各个用户标识对应的所述数据项的数据库统计信息。
在其中一个实施例中,在所述从目标生产库中提取所述数据项的数据库统计信息的步骤之后,还包括:
获取与所述各个用户标识对应的当前存储版本值;
根据所述当前存储版本值获取与所述各个用户标识对应的所述数据项的原数据库统计信息;
分别根据所述各个用户标识,判断与用户标识对应的数据库统计信息及原数据库统计信息是否一致;
当所述与用户标识对应的数据库统计信息及原数据库统计信息存在不一致时,则获取所述与用户标识对应的数据库统计信息及原数据库统计信息之间存在不一致的信息并进行存储,更新所述当前存储版本值。
在其中一个实施例中,所述将所述数据库统计信息同步至所述目标测试库,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611000840.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种告警信息的过滤方法及装置
- 下一篇:信息发送方法及装置