一种基于代价的数据库预计算自治方法及装置制造方法及图纸

技术编号:39830609 阅读:9 留言:0更新日期:2023-12-29 16:11
本发明专利技术公开一种基于代价的数据库预计算自治方法及装置

【技术实现步骤摘要】
一种基于代价的数据库预计算自治方法及装置


[0001]本专利技术公开一种方法及装置
,
涉及数据库优化
,具体地说是一种基于代价的数据库预计算自治方法及装置


技术介绍

[0002]数据库系统中需要经常对数据进行预先计算并保存结果,以快速响应和支持业务决策

数据库管理员或数据库用户定义预计算并生成预计算表后,在原始数据表上的查询将被数据库内核根据预计算匹配规则改写为在预计算表上的查询

创建合适的预计算可以加速查询,但是创建或维护不合理的预计算反而导致数据库系统额外的存储和计算开销

在现有的数据库管理方式中,由于缺少对应用负载的全局特征分析而无法创建合适的预计算,不仅无法匹配用户负载来加速查询,冗余的预计算还造成额外开销


技术实现思路

[0003]本专利技术针对现有技术的问题,提供一种基于代价的数据库预计算自治方法及装置,基于代价推荐预计算自治建议,提升数据库查询效率

[0004]本专利技术提出的具体方案是:
[0005]本专利技术提供一种基于代价的数据库预计算自治方法,包括:
[0006]步骤1:抽取数据库历史负载访问模式的数据并进行数据分析,根据数据分析获取用户查询规律,根据查询规律生成候选预计算;
[0007]步骤2:使用代价模型对候选预计算的开销和收益进行估算,包括:
[0008]建立预计算收益模型,通过预计算收益模型计算使用预计算的查询代价与不使用预计算的查询代价的加速比,并进行数据库利用预计算查询过程中磁盘访问开销和
CPU
计算开销的估算,
[0009]建立预计算成本模型,预计算成本模型包括空间代价模型和预计算维护代价模型,通过空间代价模型根据原始表行数

预计算表聚合粒度和预计算聚合函数数量进行空间成本估算,通过预计算维护代价模型进行预计算维护过程中的磁盘访问开销和
CPU
计算开销的估算;
[0010]步骤3:根据估算结果对候选预计算进行排序和筛选,通过对比候选预计算和已有预计算,为用户提供预计算新建

修改和删除的推荐建议

[0011]进一步,所述的一种基于代价的数据库预计算自治方法中所述步骤1中抽取数据库历史负载访问模式的数据并进行数据分析,包括:
[0012]抽取未使用预计算的历史负载涉及的数据库



属性

聚合函数和聚合时间粒度的数据,对未使用预计算的数据进行分析;
[0013]抽取并统计已有的用户查询匹配预计算的数据库



属性

聚合函数和聚合时间粒度的数据,对已有预计算表的数据使用情况进行分析

[0014]进一步,所述的一种基于代价的数据库预计算自治方法中所述步骤3中对比候选
预计算和已有预计算,包括:
[0015]根据筛选结果与已有预计算对比,分析已有预计算匹配失效原因,输出预计算新建

修改和删除的自治建议,供用户选择执行

[0016]进一步,所述的一种基于代价的数据库预计算自治方法中发起预计算自治的流程,包括:
[0017]发起预计算自治的请求,进入预计算自治流程;
[0018]预计算自治推荐,开始基于代价的预计算自治,执行步骤1至步骤3;
[0019]执行推荐结果,根据预计算的自治建议,确认新建

修改

删除预计算的建议是否合理,查看预计算匹配失效原因,直接应用执行合理的自治建议,修改不合理的自治建议

[0020]本专利技术还提供一种基于代价的数据库预计算自治装置,包括负载分析模块

自治算法模块和预计算推荐模块,
[0021]负载分析模块抽取数据库历史负载访问模式的数据并进行数据分析,根据数据分析获取用户查询规律,根据查询规律生成候选预计算;
[0022]自治算法模块使用代价模型对候选预计算的开销和收益进行估算,包括:
[0023]建立预计算收益模型,通过预计算收益模型计算使用预计算的查询代价与不使用预计算的查询代价的加速比,并进行数据库利用预计算查询过程中磁盘访问开销和
CPU
计算开销的估算,
[0024]建立预计算成本模型,预计算成本模型包括空间代价模型和预计算维护代价模型,通过空间代价模型根据原始表行数

预计算表聚合粒度和预计算聚合函数数量进行空间成本估算,通过预计算维护代价模型进行预计算维护过程中的磁盘访问开销和
CPU
计算开销的估算,
[0025]预计算推荐模块根据估算结果对候选预计算进行排序和筛选,通过对比候选预计算和已有预计算,为用户提供预计算新建

修改和删除的推荐建议

[0026]进一步,所述的一种基于代价的数据库预计算自治装置中所述负载分析模块中抽取数据库历史负载访问模式的数据并进行数据分析,包括:
[0027]抽取未使用预计算的历史负载涉及的数据库



属性

聚合函数和聚合时间粒度的数据,对未使用预计算的数据进行分析;
[0028]抽取并统计已有的用户查询匹配预计算的数据库



属性

聚合函数和聚合时间粒度的数据,对已有预计算表的数据使用情况进行分析

[0029]进一步,所述的一种基于代价的数据库预计算自治装置中所述预计算推荐模块中对比候选预计算和已有预计算,包括:
[0030]根据筛选结果与已有预计算对比,分析已有预计算匹配失效原因,输出预计算新建

修改和删除的自治建议,供用户选择执行

[0031]进一步,所述的一种基于代价的数据库预计算自治装置中还包括管理模块,管理模块发起预计算自治的流程,包括:
[0032]发起预计算自治的请求,进入预计算自治流程;
[0033]预计算自治推荐,开始基于代价的预计算自治,执行步骤1至步骤3;
[0034]执行推荐结果,根据预计算的自治建议,确认新建

修改

删除预计算的建议是否合理,查看预计算匹配失效原因,直接应用执行合理的自治建议,修改不合理的自治建议

[0035]本专利技术的有益之处是:
[0036]本专利技术提供一种基于代价的数据库预计算自治方法,与现有技术相比的优点在于:
[0037](1)
分析负载数据中出现频率高

消耗资源大的查询作为优化对象,设计基于代价的算法,为用户推荐查询性能提升大

额外维护成本低的预计算创建建本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于代价的数据库预计算自治方法,其特征是包括:步骤1:抽取数据库历史负载访问模式的数据并进行数据分析,根据数据分析获取用户查询规律,根据查询规律生成候选预计算;步骤2:使用代价模型对候选预计算的开销和收益进行估算,包括:建立预计算收益模型,通过预计算收益模型计算使用预计算的查询代价与不使用预计算的查询代价的加速比,并进行数据库利用预计算查询过程中磁盘访问开销和
CPU
计算开销的估算,建立预计算成本模型,预计算成本模型包括空间代价模型和预计算维护代价模型,通过空间代价模型根据原始表行数

预计算表聚合粒度和预计算聚合函数数量进行空间成本估算,通过预计算维护代价模型进行预计算维护过程中的磁盘访问开销和
CPU
计算开销的估算;步骤3:根据估算结果对候选预计算进行排序和筛选,通过对比候选预计算和已有预计算,为用户提供预计算新建

修改和删除的推荐建议
。2.
根据权利要求1所述的一种基于代价的数据库预计算自治方法,其特征是所述步骤1中抽取数据库历史负载访问模式的数据并进行数据分析,包括:抽取未使用预计算的历史负载涉及的数据库



属性

聚合函数和聚合时间粒度的数据,对未使用预计算的数据进行分析;抽取并统计已有的用户查询匹配预计算的数据库



属性

聚合函数和聚合时间粒度的数据,对已有预计算表的数据使用情况进行分析
。3.
根据权利要求1所述的一种基于代价的数据库预计算自治方法,其特征是所述步骤3中对比候选预计算和已有预计算,包括:根据筛选结果与已有预计算对比,分析已有预计算匹配失效原因,输出预计算新建

修改和删除的自治建议,供用户选择执行
。4.
根据权利要求1所述的一种基于代价的数据库预计算自治方法,其特征是发起预计算自治的流程,包括:发起预计算自治的请求,进入预计算自治流程;预计算自治推荐,开始基于代价的预计算自治,执行步骤1至步骤3;执行推荐结果,根据预计算的自治建议,确认新建

修改

删除预计算的建议是否合理,查看预计算匹配失效原因,直接应用执行合理的自治建议,修改不合理的自治建议
。5.
一种基于代价的数据库预计算自治装置,其特征是包括负载分析...

【专利技术属性】
技术研发人员:孙路明冷友方赵衎衎容兴兴魏可伟张晖
申请(专利权)人:上海沄熹科技有限公司
类型:发明
国别省市:

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

1