自动化统计信息收集方法技术

技术编号:39493539 阅读:7 留言:0更新日期:2023-11-24 11:19
本申请提供一种自动化统计信息收集方法

【技术实现步骤摘要】
自动化统计信息收集方法、电子设备和存储介质


[0001]本申请涉及金融数据处理领域,具体而言,涉及一种自动化统计信息收集方法

电子设备和存储介质


技术介绍

[0002]数据库的统计信息是描述数据库中表

索引大小

规模

数据分布状况等的一类信息

通常,数据库的统计信息用于辅助
CBO(
查询优化器
)
计算各种可能“执行计划”的“代价”,进而选择“代价”最低的执行方案,因此,数据库的统计信息的有无以及准确性的高低会最终影响
CBO
做出最优的选择

[0003]目前,数据库的统计信息的收集方式主要为:基于数据库提供的
API
进行人工收集,这种人工收集方式不能实现自动收集,进而具有收集效率低的缺点

进一步地,人工收集方式容易遗漏部分信息,因此其还会导致信息不准确的问题

进一步地,人工收集方式无法对收集的信息进行分析并分析结果调整收集策略,因此其还具有灵活性低的缺点


技术实现思路

[0004]本申请实施例的目的在于提供一种自动化统计信息收集方法

电子设备和存储介质,用以实现自动收集数据库的统计信息

与现有技术相比,本申请具有高效

灵活

准确的优点

[0005]第一方面,本专利技术提供一种自动化统计信息收集方法,所述方法应用于自动化统计信息收集框架,其中,所述自动化统计信息收集框架包括策略中心

执行引擎和分析引擎,所述方法包括:
[0006]所述策略中心基于目标数据库中的存量数据表的类型确定收集频率;
[0007]所述策略中心向所述执行引擎发送数据收集指令,以使所述执行引擎基于执行参数和所述收集频率收集所述目标数据库的统计信息并保存所述目标数据库的统计信息,并将所述目标数据库的统计信息发送至所述分析引擎,使所述分析引擎分析所述目标数据库的统计信息并得到分析结果,并将所述数据收集指令的执行结果反馈至所述策略中心,其中,所述数据收集指令携带所述收集频率;
[0008]所述策略中心接收所述执行引擎发送的所述数据收集指令的执行结果;
[0009]所述策略中心接收所述分析引擎发送的所述分析结果,并基于所述分析结果调整所述收集频率或发起重新收集指令

[0010]在本申请第一方面中,所述策略中心能够基于目标数据库中的存量数据表的类型确定收集频率,进而能够向所述执行引擎发送数据收集指令,以使所述执行引擎基于执行参数和所述收集频率收集所述目标数据库的统计信息并保存所述目标数据库的统计信息,并将所述目标数据库的统计信息发送至所述分析引擎,使所述分析引擎分析所述目标数据库的统计信息并得到分析结果

进一步地,策略中心通过接收所述执行引擎发送的所述数据收集指令的执行结果,能够确定数据库的统计信息收集是否成功,最终实现自动收集数
据库的统计信息

同时,策略中心通过接收所述分析引擎发送的所述分析结果,并基于所述分析结果调整所述收集频率或发起重新收集指令

[0011]与现有技术相比,本申请实现了统计信息的自动收集,而不需要人工参与,因此不会受到人工精力等因素的影响,从而具有更高的收集效率

同时,本申请可降低人为遗漏

误操作导致的信息出错这一事件的发生概率,进而可提高统计信息的精确度

再一方面,本申请能够基于所述分析结果调整所述收集频率或发起重新收集指令,从而具有更高的灵活性

[0012]在可选的实施方式中,所述存量数据表的类型包括普通表类型

哈希表类型和分区表类型;
[0013]以及,所述基于目标数据库中的存量数据表的类型确定收集频率,包括:
[0014]当所述存量数据表的类型为普通表类型,所述收集频率为一天一次;
[0015]当所述存量数据表的类型为哈希表类型,所述收集频率为一周一次;
[0016]当所述存量数据表的类型为分区表类型,所述收集频率为一月一次

[0017]本可选的实施方式针对普通表,可设置一天一次的收集频率,针对哈希表表,可设置一周一次的收集频率,针对分区表,可设置收集频率为一月一次

[0018]在可选的实施方式中,所述方法还包括:
[0019]所述执行引擎基于当前系统时间识别银行核心系统的运行阶段;
[0020]当所述银行核心系统的运行阶段为业务高峰期时,所述执行引擎将串行作业方式确定为所述执行参数;
[0021]当所述银行核心系统的运行阶段为业务平峰期时,所述执行引擎将并行作业方式确定为所述执行参数

[0022]在本可选的实施方式中,执行引擎能够基于当前系统时间识别银行核心系统的运行阶段,进而当所述银行核心系统的运行阶段为业务高峰期时,所述执行引擎将串行作业方式确定为所述执行参数,而在所述银行核心系统的运行阶段为业务平峰期时,所述执行引擎将并行作业方式确定为所述执行参数,这样一来,就能够在业务高峰期时,避免获取统计信息的过程占用过多的银行核心系统的硬件资源,又能够在业务平峰期时,充分利用银行核心系统的硬件资源

[0023]在可选的实施方式中,所述方法还包括:
[0024]当所述银行核心系统的运行阶段为业务稳定期时,所述执行引擎备份所述目标数据库的统计信息

[0025]在本可选的实施方式中,执行引擎能够在业务稳定期时,备份所述目标数据库的统计信息,从而确保信息备份的可靠性

[0026]在可选的实施方式中,所述目标数据库的统计信息包括
redo
日志;
[0027]以及,所述分析引擎分析所述目标数据库的统计信息并得到分析结果,包括:
[0028]基于所述
redo
日志判断是否存在针对所述目标数据库的大批量刷数操作,如果存在针对所述目标数据库的大批量刷数操作,则将发生大批量刷数操作的数据表的信息作为所述分析结果

[0029]在本可选的实施方式,分析引擎基于所述
redo
日志判断是否存在针对所述目标数据库的大批量刷数操作,如果存在针对所述目标数据库的大批量刷数操作,则将发生大批
量刷数操作的数据表的信息作为所述分析结果

[0030]在可选的实施方式中,所述分析引擎分析所述目标数据库的统计信息并得到分析结果,还包括:
[0031]基于所述
redo
日志判断是否存在新增业务数据表,如果存在新增业务数据表,则将所述新增业务数据表的信息作为所述分析结果

[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种自动化统计信息收集方法,其特征在于,所述方法应用于自动化统计信息收集框架,其中,所述自动化统计信息收集框架包括策略中心

执行引擎和分析引擎,所述方法包括:所述策略中心基于目标数据库中的存量数据表的类型确定收集频率;所述策略中心向所述执行引擎发送数据收集指令,以使所述执行引擎基于执行参数和所述收集频率收集所述目标数据库的统计信息并保存所述目标数据库的统计信息,并将所述目标数据库的统计信息发送至所述分析引擎,使所述分析引擎分析所述目标数据库的统计信息并得到分析结果,并将所述数据收集指令的执行结果反馈至所述策略中心,其中,所述数据收集指令携带所述收集频率;所述策略中心接收所述执行引擎发送的所述数据收集指令的执行结果;所述策略中心接收所述分析引擎发送的所述分析结果,并基于所述分析结果调整所述收集频率或发起重新收集指令
。2.
如权利要求1所述的方法,其特征在于,所述存量数据表的类型包括普通表类型

哈希表类型和分区表类型;以及,所述基于目标数据库中的存量数据表的类型确定收集频率,包括:当所述存量数据表的类型为普通表类型,所述收集频率为一天一次;当所述存量数据表的类型为哈希表类型,所述收集频率为一周一次;当所述存量数据表的类型为分区表类型,所述收集频率为一月一次
。3.
如权利要求1所述的方法,其特征在于,所述方法还包括:所述执行引擎基于当前系统时间识别银行核心系统的运行阶段;当所述银行核心系统的运行阶段为业务高峰期时,所述执行引擎将串行作业方式确定为所述执行参数;当所述银行核心系统的运行阶段为业务平峰期时,所述执行引擎将并行作业方式确定为所述执行参数
。4.
如权利要求3所述的方法,其特征在于,所述方法还包括:当所述银行核心系统的运行阶段为业务稳定期时,所述执行引擎备份所述目标数据库的统计信息
。5.
如权利要求1所述的方法,其特征在于,所述目标数据库的统计信息包括
redo
...

【专利技术属性】
技术研发人员:翁俊生
申请(专利权)人:平安银行股份有限公司
类型:发明
国别省市:

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

1