一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据库变更风险评估方法及装置与流程

2021-10-24 12:15:00 来源:中国专利 TAG:人工智能 变更 装置 风险评估 数据库


1.本发明涉及人工智能领域,具体涉及一种数据库变更风险评估方法及装置。


背景技术:

2.随着金融互联网行业的发展,银行业务系统功能逐步增多,目前,银行业务系统生产运行环境有数以万计的应用数据库表。与此同时,金融业务需求变化以及业务系统变更也越来越频繁,而系统版本投产时,带来的业务相关数据库表结构变更的频次也逐步变高,如删表字段、修改索引等。当在全行生产运行环境中,不停机投产数据库表结构变更操作时,可能会由于锁表而阻塞读写请求,用户访问银行业务系统功能会持续受到影响。应用数据库表量大,监控难度变大,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战,因此需要在测试环境,针对各应用系统以及他们对应各数据库表投产时的数据变更时间进行准确评估,规避投产风险。


技术实现要素:

3.针对应用数据库表量大,监控难度变大,但是现有技术缺少相应的评估技术,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战的问题,本发明提供一种数据库变更风险评估方法及装置,通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。
4.为解决上述技术问题,本发明提供以下技术方案:
5.本发明第一方面实施例提供一种数据库变更风险评估方法,包括:
6.在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性;
7.根据所述变更属性获取生产运行系统各应用数据库的指标数据;
8.将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
9.在优选的实施例中,所述当期变更属性包括:变更表名、变更字段名以及数据库表变更类型;相对应地,所述在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性,包括:
10.在测试环境对数据库版本包进行解析,得到各应用系统的变更表名、变更字段名以及数据库表变更类型。
11.在优选的实施例中,所述在测试环境对数据库版本包进行解析,得到各应用系统的变更表名、变更字段名以及数据库表变更类型,包括:
12.对所述数据库版本包进行反编译,得到原始变更数据库模式定义语言语句;
13.提取所述原始变更数据库模式定义语言语句中的变更表名和变更字段名;
14.通过正则表达式对所述原始变更数据库模式定义语言语句进行解析,得到数据库表变更类型。
15.在优选的实施例中,所述指标数据包括:生产数据容量、表记录条数以及索引容量信息;相对应地,所述根据所述变更属性获取生产运行系统各应用数据库的指标数据,包括:
16.根据所述变更表名、变更字段名以及数据库表变更类型获取生产运行系统各应用数据库的对应表名的生产数据容量、表记录条数、索引容量信息。
17.在优选的实施例中,还包括:建立所述评估模型。
18.在优选的实施例中,所述评估模型包括:数据量与变更时长的相关曲线,以及字段长度与变更时长的相关曲线;
19.所述建立所述评估模型,包括:
20.在测试环境使用和生产相同的固定测试环境;
21.构建初始表;
22.构建数据库存储过程和函数,批量插入初始数据;
23.新建相同表结构表,所述相同表结构表为数据量相同并且字段长不同的表;
24.以相同表结构表为基础,执行所有变更类型的数据库模式定义语言语句,记录变更时长;
25.根据所有变更类型对应的变更时长生成数据量与变更时长的相关曲线,以及生成字段长度与变更时长的相关曲线。
26.在优选的实施例中,所述初始表包括非分区表、分区表以及分区表。
27.在优选的实施例中,所述初始数据为对应每次场景的行长字节数以及测试时使用固定字符。
28.本发明第二方面实施例提供一种数据库变更风险评估装置,包括:
29.解析模块,测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性;
30.获取模块,根据所述变更属性获取生产运行系统各应用数据库的指标数据;
31.评估模块,将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
32.第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的数据库变更风险评估方法。
33.第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的数据库变更风险评估方法。
34.由上述技术方案可知,本发明提供一种数据库变更风险评估方法及装置,首先在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性;之后根据所述变更属性获取生产运行系统各应用数据库的指标数据;最后将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系,可以看出本发明通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据,进一步的,可以精准定位投产期间可能引发超时问题的变更
内容,实现在生产环境实施版本变更前的风险评估和预警,避免数据库变更投产不确定性的风险隐患。
附图说明
35.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1是本发明实施例中的数据库变更风险评估装置的结构示意图。
37.图2是本发明实施例中的版本解析模块的单元结构图。
38.图3是本发明实施例中的风险评估模块的单元结构图。
39.图4是本发明实施例中的风险管理模块的单元结构图。
40.图5是本发明实施例中的数据库变更风险评估场景的流程图。
41.图6是本发明实施例中的数据库变更风险评估方法的流程示意图。
42.图7是本发明实施例中的数据库变更风险评估装置的结构示意图。
43.图8是本发明实施例中的电子设备的结构示意图。
具体实施方式
44.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
45.需要说明的是,本发明公开的一种数据库变更风险评估方法及装置可用于金融领域,也可用于除金融领域之外的任意领域,本发明公开的一种数据库变更风险评估方法及装置的应用领域不做限定。
46.应用数据库表量大,监控难度变大,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战,因此需要在测试环境,针对各应用系统以及他们对应各数据库表投产时的数据变更时间进行准确评估,规避投产风险。
47.针对目前技术方案存在的各种漏洞和问题,为了预防数据库表结构在生产环境变更风险隐患,我们提出一种在测试环境,提前评估数据库投产变更风险的方法。通过数据库投产版本解析、生产数据库监控,实现数据库变更类型、生产应用表数据量等信息的实时采集和获取;通过变更风险评估模型,对采集的数据变更指标信息进行分析预测,实现在投产前针对所有应用数据库版本变更时长进行评估;通过测试环境模拟生产运行环境后,执行风险变更进行场景复现,实现测试环境数据库变更时长的准确评估;通过风险评估管理系统构建,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。本发明还可将风险报告自动推送给业务测试进行主动风险预警,并通知生产运维人员做好风险应对防范措施,极大的避免数据库变更投产不确定性的风险隐患。
48.本发明提供一种用于实现本发明一个或多个实施例中提供一种数据库变更风险
评估方法及装置,具体的,包括:在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性;根据所述变更属性获取生产运行系统各应用数据库的指标数据;将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。本发明通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据,进一步的,可以精准定位投产期间可能引发超时问题的变更内容,实现在生产环境实施版本变更前的风险评估和预警,避免数据库变更投产不确定性的风险隐患。
49.可以理解的是,本发明的数据库变更风险评估装置可以是服务器或者移动终端,例如可以包括智能手机、平板电子设备、便携式计算机、台式电脑、个人数字助理(pda)、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
50.上述的数据库变更风险评估装置具有通信模块,可以与被评估数据库对应的服务器进行通信连接,实现与所述被评估数据库对应的服务器的数据传输。
51.上述数据库变更风险评估装置与被评估数据库对应的服务器之间可以使用任何合适的网络协议进行通信,包括在本发明提交日尚未开发出的网络协议。所述网络协议例如可以包括tcp/ip协议、udp/ip协议、http协议、https协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的rpc协议(remote procedure call protocol,远程过程调用协议)、rest协议(representational state transfer,表述性状态转移协议)等。
52.本发明提供一种数据库变更风险评估方法及装置,通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据,进一步的,可以精准定位投产期间可能引发超时问题的变更内容,实现在生产环境实施版本变更前的风险评估和预警,避免数据库变更投产不确定性的风险隐患。
53.具体通过下述多个实施例及应用实例分别进行说明。
54.为了解决应用数据库表量大,监控难度变大,但是现有技术缺少相应的评估技术,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战的问题,本发明提供一种数据库变更风险评估方法的实施例,参见图6,具体包含有如下内容:
55.步骤s101:在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性。
56.具体的,所述当期变更属性包括:变更表名、变更字段名以及数据库表变更类型;相对应地,步骤s101,也即所述在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性,包括:
57.在测试环境对数据库版本包进行解析,得到各应用系统的变更表名、变更字段名以及数据库表变更类型。
58.步骤s102:根据所述变更属性获取生产运行系统各应用数据库的指标数据。
59.具体的,所述指标数据包括:生产数据容量、表记录条数以及索引容量信息;相对应地,步骤s102,也即所述根据所述变更属性获取生产运行系统各应用数据库的指标数据,包括:
60.根据所述变更表名、变更字段名以及数据库表变更类型获取生产运行系统各应用数据库的对应表名的生产数据容量、表记录条数、索引容量信息。
61.步骤s103:将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
62.由上述技术方案可知,本发明提供的一种数据库变更风险评估方法,通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。
63.为了提供一种评估模型的具体实现方式,在本发明的一个或多个实施例中,还包括:建立评估模型的步骤,当然可以理解的是,评估模型在本发明中可以在线或离线建立,也即本发明可以预先建立评估模型,也可以根据需要实时建立,在此不作赘述。
64.下面对本发明的评估模型的建立进行详细说明。
65.在一些实施例中,所述评估模型包括:数据量与变更时长的相关曲线,以及字段长度与变更时长的相关曲线;事实上,根据前述的所述当期变更属性包括:变更表名、变更字段名以及数据库表变更类型,计算机可以根据变更表、变更字段等信息确定生产数据量、字段长度等信息。
66.该实施例中,所述建立所述评估模型,包括:
67.在测试环境使用和生产相同的固定测试环境;
68.构建初始表;
69.构建数据库存储过程和函数,批量插入初始数据;
70.新建相同表结构表,所述相同表结构表为数据量相同并且字段长不同的表;
71.以相同表结构表为基础,执行所有变更类型的数据库模式定义语言语句,记录变更时长;
72.根据所有变更类型对应的变更时长生成数据量与变更时长的相关曲线,以及生成字段长度与变更时长的相关曲线。
73.举例而言,在测试环境对非分区表、列、索引、主键、外键以及分区表不同ddl变更场景进行测试并记录变更时长,产出变更时长评估模型。下面我们给出具体的构建方法和原理。
74.1)在测试环境使用和生产相同的固定测试环境,主要包括mysql版本号、操作系统,编写python脚本进行造数及测试
75.2)构建初始表,包括非分区表、分区表(hash)、分区表(range)等多种类型。
76.3)构建mysql存储过程和函数,批量插入初始数据:为对应每次场景的行长字节数,测试时使用固定字符。例如如果场景的行长为300,则每行插入300个固定字符,如果场景是行长为700,则每行插入700个固定字符。
77.4)新建相同表结构表,而记录数为1至50000000的表。
78.5)新建相同表结构表、数据量相同,而字段长不同的表。
79.6)以这些表为基础,执行全部变更类型的ddl语句,记录变更时长。
80.7)分别获得在20余种变更类型中,数据量与变更时长的相关曲线、字段长度与变更时长的相关曲线。
81.本领域技术人员可以理解的是,所述初始表包括非分区表、分区表以及分区表。
82.下面结合计算机模块对本发明的具体实施例进行详细说明。
83.如图1所示,该发明的一个实施例的评估系统包括版本解析模块1、数据采集模块2、风险评估模块3、测试模拟模块4、风险管理模块5。
84.进一步的,通过版本解析模块1在测试环境对版本包进行解析得到各应用系统当期变更ddl、变更表名、变更字段、变更类型,并上送至数据收集模块2,数据采集模块2根据版本解析模块1上送的变更表、变更字段等信息确定生产数据量、字段长度等信息,并上送至风险评估模块3。风险评估模块根据数据采集模2块上送的信息,评估数据库ddl生产环境的执行时长,并与当期版本号、变更ddl、表名等信息一同上送至测试模拟模块4进行处理。测试模拟模块4模拟生产环境,并通过执行表变更得到数据库变更准确时长,最后将信息上送至风险管理模块5。风险管理模块5根据变更时长、变更时长等信息形成风险评估报告,发送各应用负责人以及投产支持人员,并支持对历史数据库变更信息的有效管理和可视化查询,为后期数据库变更提供参考依据。
85.表1为常见的mysql数据库中ddl变更类型。不同的ddl变更类型,在不同的表数据量、表字段长等影响因素下,数据库变更时间耗时有着极大的不同。本发明中针对所有的ddl变更类型、相同的表结构下不同的数据量或字段长度进行评估模型测试。
86.表1

mysql数据库中ddl变更类型表
[0087][0088]
图2为本发明版本解析模块1的单元结构图,如图2所示版本解析模块1包括ddl语句解析生成单元31、变更表名解析单元32,其中:ddl语句解析生成单元31:实现根据开发中心提供的编译后数据库版本包,进行反编译,获取原始变更ddl语句,上送至变更表名解析单元32进行处理。变更表名解析32:用于提取开发版本包中变更的表名、变更类型、变更字段以及应用名信息,即ddl语句解析生产单元31得到的ddl语句,提取语句中的变更表名、变更字段名,并通过正则表达式针对ddl语句进行解析,获取数据库ddl变更类型。并将解析得到的以上信息附带应用名、ddl语句标注后上送至信息采集模块2进行处理。
[0089]
信息采集模块2:通过连接生产运行系统,并对生产运行系统进行监控,后通过navicate等工具获取生产运行系统各应用数据库表容量等实时指标,监控频率为1天/次。获取的数据库表的实时指标包括表记录数(条)、数据容量(mb)、索引容量(mb)等。获取各应用表的实时指标后,结合版本解析模块1得到的表名、表字段名字,获取对应表名的生产数
据容量、表记录条数、索引容量信息。并将如上信息与版本解析模块1上送到信息采集模块2中的数据库变更类型等信息打包后上送至风险评估模块3进行处理。
[0090]
图3为本发明风险评估模块3的单元结构图,如图3所示,风险评估模块3包括风险评估模型构建单元41、执行风险评估单元42,其中:
[0091]
变更评估模型构建单元41:在测试环境对非分区表、列、索引、主键、外键以及分区表不同ddl变更场景进行测试并记录变更时长,产出变更时长评估模型。下面我们给出具体的构建方法和原理。
[0092]
1)在测试环境使用和生产相同的固定测试环境,主要包括mysql版本号、操作系统,编写python脚本进行造数及测试
[0093]
2)构建初始表,包括非分区表、分区表(hash)、分区表(range)等多种类型。
[0094]
3)构建mysql存储过程和函数,批量插入初始数据:为对应每次场景的行长字节数,测试时使用固定字符。例如如果场景的行长为300,则每行插入300个固定字符,如果场景是行长为700,则每行插入700个固定字符。
[0095]
4)新建相同表结构表,而记录数为1至50000000的表。
[0096]
5)新建相同表结构表、数据量相同,而字段长不同的表。
[0097]
6)以这些表为基础,执行全部变更类型的ddl语句,记录变更时长。
[0098]
7)分别获得在20余种变更类型中,数据量与变更时长的相关曲线、字段长度与变更时长的相关曲线。
[0099]
综上,总结不同类型ddl场景、在不同数据量、字段长度等因素影响下,数据库变更时间的耗时的相关性曲线,为后续ddl变更时长评估构建一个通用的评估模型。
[0100]
执行风险评估单元42:用于应用风险评估模型构建单元31得到的风险评估模型对数据采集模块2上送的数据变更表名、字段长度、数据量信息进行处理,输出变更评估时长,当评估变更时长超过设定值(例如5s,此值由测试人员和生产一同评估),则附注信息采集模块2传递信息并上送至测试模拟模块4进行处理。同样地,当变更时长小于设定值,则直接送至风险管理模块5进行管理。
[0101]
测试模拟模块4:执行风险评估单元42上送的表名,构建生产相同表结构并同步生产数据量,执行变更ddl,确定准备的变更执行时长,并将时长信息与执行风险评估单元42上送的数据一同上送风险管理模块5。
[0102]
图4为本发明风险管理模块5的单元结构图,如图4所示,风险管理模块5包括风险问题定位单元51、风险ddl管理单元52,其中:
[0103]
风险问题定位单元51:依据测试模拟模块4中上送的大表、热表ddl变更信息,形成风险评估报告和风险预警,并自动推送给生产变更实施人员与应用测试人员。测试报告中应包含变更时间、变更版本号、变更时长、风险预警级别等信息。不同的风险级别按照优先级大小,使用不同的颜色、图标或者文字进行标注。
[0104]
风险ddl管理单元52:针对存在变更超时风险的ddl,以及无风险的ddl进行管理,并提供可视化展示,支持按表名、按版本号、按风险等级进行查询,为后续的ddl变更提供参考。
[0105]
图5为本发明一种数据库变更风险评估方法的流程图,版本解析模块1通过解析变更版本包,获取ddl、表名、变更类型、变更字段等信息,并与数据采集模块2中获取的生产数
据量、变更字段长度信息,一同上送至风险变更评估模块3。风险变更评估模块3中的实施变更评估单元32对数据采集模块2上送的信息进行评估,输出变更时长。若变更时长>设定值,则将所有信息上送至测试模拟模块4。测试模拟模块通过同步生产环境,并执行此变更从而得到生产变更执行时长,与所有信息一同上送至风险管理模块;若变更时间<小于设定值,则不经过测试模拟模块4,直接同所有信息上送至风险管理模块。最后,风险管理模块5形成风险评估报告和风险预警,并自动推送给生产变更实施人员与应用测试人员。
[0106]
本发明一种数据库变更风险评估方法,建立了数据库版本解析、关联生产数据信息、变更风险评估和预警的通用方法,为系统数据库测试和生产变更实施人员提供了数据库变更风险管理、风险评估和风险预警,实现在生产环境实施版本变更前,数据库版本变更时长的准确评估,规避投产时的变更风险,提高系统的可靠性和稳定性。
[0107]
1、本发明实现了风险评估指标信息的实时采集:通过执行版本包自动解析,获取变更表名、字段名等指标信息,并实时采集变更表的生产数据量、字段长度等信息,输入评估模型,提高变更风险评估的准确度。
[0108]
2、本发明实现了风险的提前预警:本发明提前构建评估模型,通过评估指标信息输入,执行评估模型,可精准定位到超时ddl变更。在变更投产前发掘潜在变更风险,并向变更执行人和测试人员发出预警和风险,可降低因生产变更超时问题引发的紧急安全隐患,使生产系统变更更加稳健、可靠。
[0109]
3、本发明提供的风险管理系统,支持按表名、按版本号、按风险等级进行数据库历史变更记录查询,为后续ddl变更提供参考,提高投产工作的整体质量。
[0110]
为了解决应用数据库表量大,监控难度变大,但是现有技术缺少相应的评估技术,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战的问题,在本发明的一个或多个实施例中,本发明提供一种数据库变更风险评估方法装置,如图7所示,包括:
[0111]
解析模块11,在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性;
[0112]
获取模块12,根据所述变更属性获取生产运行系统各应用数据库的指标数据;
[0113]
评估模块13,将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
[0114]
由上述技术方案可知,本发明提供的一种数据库变更风险评估方法装置,该装置通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。
[0115]
基于相同的发明构思,在优选的实施例中,所述当期变更属性包括:变更表名、变更字段名以及数据库表变更类型;相对应地,所述解析模块具体用于:
[0116]
在测试环境对数据库版本包进行解析,得到各应用系统的变更表名、变更字段名以及数据库表变更类型。
[0117]
基于相同的发明构思,在优选的实施例中,所述解析模块,包括:
[0118]
反编译单元,对所述数据库版本包进行反编译,得到原始变更数据库模式定义语言语句;
[0119]
提取单元,提取所述原始变更数据库模式定义语言语句中的变更表名和变更字段名;
[0120]
解析单元,通过正则表达式对所述原始变更数据库模式定义语言语句进行解析,得到数据库表变更类型。
[0121]
基于相同的发明构思,在优选的实施例中,所述指标数据包括:生产数据容量、表记录条数以及索引容量信息;相对应地,所述获取模块具体用于:
[0122]
根据所述变更表名、变更字段名以及数据库表变更类型获取生产运行系统各应用数据库的对应表名的生产数据容量、表记录条数、索引容量信息。
[0123]
基于相同的发明构思,在优选的实施例中,还包括模型建立模块,建立所述评估模型。
[0124]
基于相同的发明构思,在优选的实施例中,所述评估模型包括:数据量与变更时长的相关曲线,以及字段长度与变更时长的相关曲线;
[0125]
所述模型建立模块,包括:
[0126]
固定测试环境单元,在测试环境使用和生产相同的固定测试环境;
[0127]
初始表构建单元,构建初始表;
[0128]
批量插入单元,构建数据库存储过程和函数,批量插入初始数据;
[0129]
结构表构建单元,新建相同表结构表,所述相同表结构表为数据量相同并且字段长不同的表;
[0130]
记录单元,以相同表结构表为基础,执行所有变更类型的数据库模式定义语言语句,记录变更时长;
[0131]
生成单元,根据所有变更类型对应的变更时长生成数据量与变更时长的相关曲线,以及生成字段长度与变更时长的相关曲线。
[0132]
基于相同的发明构思,在优选的实施例中,所述初始表包括非分区表、分区表以及分区表。
[0133]
基于相同的发明构思,在优选的实施例中,所述初始数据为对应每次场景的行长字节数以及测试时使用固定字符。
[0134]
从硬件层面来说,为了解决应用数据库表量大,监控难度变大,但是现有技术缺少相应的评估技术,若功能投产前未评估数据库表结构变更影响,尤其当涉及到大表、热表时变更时间过长,在投产时将会严重影响系统用户使用,系统的稳定性和可用性受到了极大的挑战的问题,本发明提供一种用于实现所述数据库变更风险评估方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
[0135]
图8为本发明实施例的电子设备9600的装置构成的示意框图。如图8所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图8是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
[0136]
在一实施例中,数据库变更风险评估方法功能可以被集成到中央处理器中。
[0137]
其中,中央处理器可以被配置为进行如下控制:
[0138]
步骤s101:在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性。
[0139]
步骤s102:根据所述变更属性获取生产运行系统各应用数据库的指标数据。
[0140]
步骤s103:将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
[0141]
由上述技术方案可知,本发明提供的一种电子设备,通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。
[0142]
在另一个实施方式中,服务器可以与中央处理器9100分开配置,例如可以将服务器为与中央处理器9100连接的芯片,通过中央处理器的控制来实现数据库变更风险评估方法功能。
[0143]
如图8所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图8中所示的所有部件;此外,电子设备9600还可以包括图8中没有示出的部件,可以参考现有技术。
[0144]
如图8所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
[0145]
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
[0146]
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为lcd显示器,但并不限于此。
[0147]
该存储器9140可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为eprom等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
[0148]
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
[0149]
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
[0150]
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适
的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
[0151]
本发明的实施例还提供能够实现上述实施例中的数据库变更风险评估方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的数据库变更风险评估方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
[0152]
步骤s101:在测试环境对数据库版本包进行解析,得到各应用系统的当期变更属性。
[0153]
本发明中,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
[0154]
步骤s102:根据所述变更属性获取生产运行系统各应用数据库的指标数据。
[0155]
步骤s103:将所述指标数据输入至预设的评估模型,得到数据库变更风险评估结果,所述评估模型包括数据库变更属性与耗时相关性的关联关系。
[0156]
由上述技术方案可知,本发明提供的计算机存储介质,通过预设的评估模型,结合测试环境下解析得到的当期变更属性得到数据库变更风险评估结果,实现对历史数据库变更信息的有效管理和可视化查询,为后续变更提供参考和依据。
[0157]
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0158]
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0159]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0160]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0161]
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例
的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜