[发明专利]一种数据库全局性自动化优化预警装置及其处理方法有效

专利信息
申请号: 201310345363.4 申请日: 2013-08-08
公开(公告)号: CN103390066A 公开(公告)日: 2013-11-13
发明(设计)人: 程永新;宋辉;梁铭图 申请(专利权)人: 上海新炬网络技术有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 上海申汇专利代理有限公司 31001 代理人: 金碎平
地址: 200063 上海市普*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 数据库 全局性 自动化 优化 预警 装置 及其 处理 方法
【权利要求书】:

1.一种数据库全局性自动化优化预警装置,其特征在于,包括:

任务调配模块:用于设置索引监控任务,配置需要监控索引的业务表;

信息采集模块:用于定时连接到目标数据库,采集相应业务表的所有SQL、SQL的执行频次、调用的谓词信息,并记录到信息采集库;

结果分析模块:根据采集到的数据对所有SQL中各谓词的选择性、使用频次和组合进行统计分析,实时计算出目标数据库的索引方案,并记录到结果分析库。

2.如权利要求1所述的数据库全局性自动化优化预警装置,其特征在于,所述任务调配模块包括任务创建、任务取消、任务更新、任务删除和任务查询,所述任务调配模块通过一次执行或定时调度模块多次循环执行采集数据库信息。

3.如权利要求1所述的数据库全局性自动化优化预警装置,其特征在于,所述信息采集模块包括SQL过滤模块、谓词定位模块、谓词过滤模块、谓词拆分模块和频次采集模块;所述结果分析模块包括谓词分析模块和频次分析模块,所述结果分析模块根据业务表和字段的访问频次变化对索引进行新增、合并和/或删除,实时计算出目标数据库的索引方案。

4.一种数据库全局性自动化优化预警处理方法,其特征在于,包括如下步骤:

a)设置索引监控任务,配置需要监控索引的业务表;

b)定时连接到目标数据库,采集相应业务表的所有SQL、SQL的执行频次、调用的谓词信息;

c)根据采集到的数据实时更新目标数据库的索引方案。

5.如权利要求4所述的数据库全局性自动化优化预警处理方法,其特征在于,所述步骤b)中的采集过程如下:

b1)输入目标数据库中用户名/表名集合,以及采样的起止时间,采集的频率;

b2)根据输入用户名/表名集合从目标数据库中得到相关SQL;

b3)根据SQL_ID依次获取每条SQL语句中访问谓词字段和过滤谓词字段并汇总;

b4)根据业务表的统计信息计算出谓词的选择性;

b5)统计SQL的执行频率。

6.如权利要求5所述的数据库全局性自动化优化预警处理方法,其特征在于,

对于行数少于预设行数的业务表,不创建索引,直接跳过后续步骤。

7.如权利要求5所述的数据库全局性自动化优化预警处理方法,其特征在于,对于包含关键字“and”或“or”的谓词,将其左右分别拆为独立谓词,并递归拆分过程;对于无法使用索引的谓词字段在采集的时候进行过滤;对于包含函数的谓词,建立基于函数的索引。

8.如权利要求4所述的数据库全局性自动化优化预警处理方法,其特征在于,所述步骤c)包括如下过程:

c1)输入采集到的信息:用户名/表名、谓词、频次和选择性并进行统计;

c2)将同一SQL中且频次排名占总量前60%的谓词进行组合,对于存在相同或者部分相同谓词的SQL先判断是否创建复合索引,重复利用索引;

c3)如果不需要创建复合索引,则通过遍历排序评估索引利用率来决定字段顺序;

c4)如果单列索引代价低于复合索引,则进行单列索引分析,统计所有SQL中各谓词字段使用频次并以降序排列,算出各字段的频次;

c5)按谓词频次从高到低分析谓词,对选择性大于0.2的谓词创建B树索引或基于函数的B树索引;

c6)迭代分析谓词,直至结束,最后与现有的索引作差异对比,输出需要增加、删除和/或合并的索引。

9.如权利要求8所述的数据库全局性自动化优化预警处理方法,其特征在于,对选择性小于0.2的谓词,如果该谓词的调用频次占总量40%以上则建立位图索引,否则丢弃该谓词。

10.如权利要求8所述的数据库全局性自动化优化预警处理方法,其特征在于,多个谓词组合的选择性Selectivity计算如下:

Selectivity=1-(1-Dist1/Rows)×(1-Dist2/Rows)×(1-Dist3/Rows)×...(1-Distn/Rows);

多个谓词平均执行频次之和Exec_Freq计算如下:

Exec_Freq=SQL_Freq1+SQL_Freq2+SQL_Freq3+...SQL_Freqn

谓词的选择性和谓词频次的评估值V计算如下::

V=(Exec_Freq×10)2(1+log0.5Selectivity);]]>

如果谓词的选择性和谓词频次的评估值V大于预设阈值,则对谓词创建B树索引或基于函数的B树索引,其中,Rows为业务表的数据行数,Dist1、Dist2、Dist3、…Distn分别为各个谓词的取值数,SQL_Freq1、SQL_Freq2、SQL_Freq3、…SQL_Freqn分别为实用该谓词的各个SQL单位时间内平均执行频次。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海新炬网络技术有限公司,未经上海新炬网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310345363.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top