数据库管理方法、计算机设备、存储介质和程序产品与流程

专利2026-07-02  11


本技术涉及云计算,特别是涉及一种数据库管理方法、计算机设备、存储介质和程序产品。


背景技术:

1、随着云计算的不断发展,数据库技术呈现从传统集中式到分布式发展的趋势,当前阶段云数据库的发展主要还处于“db on cloud(云上数据库)”的阶段,也就是用户在创建数据库实例时,按照基于业务负载高峰,预先确定数据库实例的计算规格和存储规格等资源,这种数据库服务提供方式会存在如下问题:

2、1、用户无法精准地将业务负载与实例规格关联(或者业务负载完全没法评估),如果出现资源不足的情况,只能进行紧急规格变更,无法及时应对负载高峰,且在规格变更期间还会出现短暂的停服,用户体验会较差;

3、2、为了减少规格变更导致服务中断的频率,用户往往按照一定时间内的峰值申请相应资源,那么对应也会持续按照峰值资源计费,但是大部分业务处于峰值的时间很短,从而造成用户大部分时间为了不必要的资源在付出成本,最终导致用户使用成本上升。

4、因此,亟需提出一种能够提升数据库服务可靠性和连续性的数据库管理方法、计算机设备、存储介质和程序产品。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种能够提升数据库服务可靠性和连续性的数据库管理方法、装置、计算机设备和存储介质。

2、第一方面,提供一种数据库管理方法,所述方法包括:基于数据库的历史时序业务数据,确定历史业务量参数,所述历史业务量参数用于描述业务量发展规律;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力,所述实时参数信息用于描述数据库运行状态;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量,所述数据库服务实例用于提供数据库服务;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求。

3、可选的,基于数据库的历史时序业务数据,确定历史业务量参数包括:获取数据库的历史时序业务数据,并基于所述历史时序业务数据,确定历史时序业务数据的特征信息,所述特征信息至少包括时间特征和业务特征;基于所述历史时序业务数据的特征信息,构建历史业务量曲线;基于时间序列预测算法,对所述历史业务量曲线进行分解,得到业务量参数。

4、可选的,根据所述历史业务量参数,构建业务量预测模型包括:根据所述历史业务量参数,构建基于目标函数表示的业务量参数模型;对所述业务量参数模型进行拟合,以构建所述业务量预测模型。

5、可选的,所述历史业务量参数至少包括趋势分量、周期分量、节假日参数和残差分量,根据所述历史业务量参数,构建基于目标函数表示的业务量参数模型包括:

6、基于第一目标函数和所述趋势分量,构建趋势分量模型,所述第一目标函数包括:

7、;

8、其中,表示时刻的趋势分量,t表示时间,<mi>α</mi><mi>∈[0,1]</mi>,表示趋势参数,表示时刻的趋势分量;基于第二目标函数和所述周期分量,构建周期分量模型,所述第二目标函数包括:

9、;

10、其中,表示时刻的周期分量,<mi>k</mi><mi>∈[0,1]</mi>,表示周期长度,表示周期参数,表示时刻的趋势分量;基于第三目标函数和所述节假日参数,构建节假日参数模型,所述第三目标函数包括:

11、;

12、其中,表示t时刻的节假日参数,<mi>a</mi><mi>∈[0,10000]</mi>,表示受假期影响的系数;基于第四目标函数和所述残差分量,构建残差分量模型,所述第四目标函数包括:

13、;

14、其中,表示t时刻的残差分量,表示时刻的业务量预测值,表示时刻的节假日参数,表示时刻的周期分量。

15、可选的,对所述业务量参数模型进行拟合,以构建所述业务量预测模型包括:对所述第一目标函数、所述第二目标函数和所述第三目标函数进行乘积运算,并累加所述第四目标函数,以构建所述业务量预测模型,包括:

16、;

17、其中,表示t时刻的业务量预测值。

18、可选的,基于所述业务量预测模型,确定目标时间段内的业务量预测结果包括:设置时间周期;基于所述时间周期,确定当前时刻对应的目标时间段;基于所述业务量预测模型,获取目标时间段中的至少一个业务量预测值,以生成目标时间段内的业务量预测结果。

19、可选的,所述方法还包括基于所述业务量预测结果,确定是否需要对数据库进行扩缩容,包括:获取当前时刻的数据库服务实例数量,以及基于所述当前时刻的数据库服务实例数量确定的业务承载量;响应于检测到所述业务承载量和所述业务量预测值之间的差值大于第一预设阈值时,确定需要对数据库进行扩容;响应于检测到所述业务承载量和所述业务量预测值之间的差值小于第二预设阈值时,确定需要对数据库进行缩容。

20、可选的,基于数据库是否需要进行扩缩容的确定结果,确定数据库服务实例的第一扩缩容数量包括:响应于检测到所述数据库需要进行扩缩容时,基于所述业务承载量和所述业务量预测值之间的差值绝对值,以及每个数据库服务实例的业务承载量,确定所述数据库服务实例的第一扩缩容数量。

21、可选的,基于数据库的实时参数信息,确定数据库的业务承载压力包括:获取实时参数信息,并对所述实时参数信息进行归一化处理,所述实时参数信息包括以下至少一项:数据库服务实例的资源使用率、请求响应时延和等待队列长度;利用第一目标拟合函数,拟合归一化处理后的所述实时参数信息,得到第一目标拟合值,所述第一目标拟合函数包括:

22、;

23、其中,表示第一目标拟合值,、、均表示权系数,表示数据库服务实例的资源使用率,b表示请求响应时延,c表示等待队列长度;基于所述第一目标拟合值,确定数据库的业务承载压力。

24、可选的,基于所述第一目标拟合值,确定数据库的业务承载压力包括:基于所述第一目标拟合值和数据库的业务承载压力的第一映射关系,确定所述第一目标拟合值对应的数据库的业务承载压力。

25、可选的,基于所述数据库的业务承载压力,确定是否需要对数据库进行扩缩容,包括:响应于检测到所述数据库的业务承载压力大于第三预设阈值时,确定需要对数据库进行扩容;响应于检测到所述数据库的业务承载压力小于第四预设阈值时,确定需要对数据库进行缩容。

26、可选的,响应于检测到所述数据库需要进行扩缩容时,计算确定数据库服务实例的第二扩缩容数量,包括:获取实时参数信息对应的伸缩阈值,所述实时参数信息至少包括资源使用率、请求响应时延,所述资源使用率至少包括中央处理器使用率、内存使用率;利用第二目标拟合函数,计算确定第二目标拟合值,并定义所述第二目标拟合值为所述数据库服务实例的第二扩缩容数量。

27、可选的,所述第二目标拟合函数包括:

28、;

29、其中,表示第二目标拟合值,、、均表示权系数,表示中央处理器使用率,表示中央处理器伸缩阈值,表示内存使用率,表示内存伸缩阈值,表示请求响应时延,表示请求响应时延伸缩阈值,t表示时间。

30、可选的,基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量包括:获取基于所述业务量预测结果确定的第一扩缩容数量,以及基于所述数据库的业务承载压力确定的第二扩缩容数量;响应于检测到当前时刻处于第一目标时间段内时,确定所述第一扩缩容数量为第二目标时间段内的数据库服务实例的目标扩缩容数量,所述第一目标时间段为已根据所述业务量预测结果进行扩缩容的时间段,第二目标时间段为未进行扩缩容的未来时间段;基于第二扩缩容数量,确定当前时刻的数据库服务实例的目标扩缩容数量。

31、可选的,基于第二扩缩容数量,确定当前时刻的数据库服务实例的目标扩缩容数量包括:响应于检测到当前时刻需要进行扩容时,将所述第二扩缩容数量定义为当前时刻的数据库服务实例的目标扩缩容数量;响应于检测到当前时刻需要进行缩容时,获取第三目标时间段内扩缩容量的目标值,所述第三目标时间段为已进行扩缩容的时间段的前一时间段;响应于检测到所述目标值小于第五预设阈值时,将所述第二扩缩容数量定义为当前时刻的数据库服务实例的目标扩缩容数量。

32、可选的,所述目标值的计算方法包括:获取所述第三目标时间段内多个时间节点对应的扩缩容数量,并按照由远及近的时间顺序对所述扩缩容数量进行排序;利用第三目标拟合函数对所述多个时间节点对应的扩缩容数量进行拟合,以得到所述目标值,其中,第三目标拟合函数包括:

33、;

34、其中,表示目标值,表示第个时间节点对应的扩缩容数量,表示每个扩缩容量对应的权系数,n越大,权系数越大,n表示时间节点个数。

35、可选的,基于所述目标扩缩容数量,对所述数据库进行扩缩容包括:检测当前时间数据库是否处于扩缩容冷却周期内;若未处于扩缩容冷却周期内,则基于所述目标扩缩容数量,对所述数据库进行扩缩容。

36、可选的,在响应数据库分发请求之前,所述方法还包括:获取数据库分发请求携带的标识信息;基于所述标识信息,确定数据库分发请求发起端与目标数据库服务实例的历史连接记录;响应于检测到存在历史连接记录且目标数据库服务实例依然存在时,将所述数据库分发请求转发至所述目标数据库服务实例;响应于检测到不存在历史连接记录和/或目标数据库服务实例不存在时,根据每个数据库服务实例的业务承载压力,确定用于转发数据库分发请求的数据库服务实例。

37、可选的,在响应数据库分发请求时,所述方法还包括:获取数据库分发请求的相关信息,所述相关信息至少包括请求到达时间、请求转发时间和请求返回时间;基于所述相关信息,计算确定请求响应时延。

38、可选的,所述方法还包括:若在预设时间范围内未检测到数据库分发请求,则将所述数据库服务实例数量缩容至预设值。

39、第二方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:基于数据库的历史时序业务数据,确定历史业务量参数,所述历史业务量参数用于描述业务量发展规律;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力,所述实时参数信息用于描述数据库运行状态;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量,所述数据库服务实例用于提供数据库服务;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求。

40、第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:基于数据库的历史时序业务数据,确定历史业务量参数,所述历史业务量参数用于描述业务量发展规律;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力,所述实时参数信息用于描述数据库运行状态;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量,所述数据库服务实例用于提供数据库服务;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求。

41、第四方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现以下步骤:基于数据库的历史时序业务数据,确定历史业务量参数,所述历史业务量参数用于描述业务量发展规律;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力,所述实时参数信息用于描述数据库运行状态;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量,所述数据库服务实例用于提供数据库服务;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求。

42、上述数据库管理方法、计算机设备、存储介质和程序产品,所述方法包括:基于数据库的历史时序业务数据,确定历史业务量参数,所述历史业务量参数用于描述业务量发展规律;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力,所述实时参数信息用于描述数据库运行状态;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量,所述数据库服务实例用于提供数据库服务;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求,本技术可以对未来时间段进行扩缩容预测,并提前进行扩缩容,降低冷启动时延,基于此,结合实时业务承载压力,对扩缩容结果进行修正,以进一步满足业务性能要求,降低了数据库服务提供的成本,提高了数据库服务的性能和可用性。


技术特征:

1.一种数据库管理方法,其特征在于,所述方法包括:

2.根据权利要求1所述的数据库管理方法,其特征在于,基于数据库的历史时序业务数据,确定历史业务量参数包括:

3.根据权利要求1所述的数据库管理方法,其特征在于,根据所述历史业务量参数,构建业务量预测模型包括:

4.根据权利要求3所述的数据库管理方法,其特征在于,所述历史业务量参数至少包括趋势分量、周期分量、节假日参数和残差分量,根据所述历史业务量参数,构建基于目标函数表示的业务量参数模型包括:

5.根据权利要求4所述的数据库管理方法,其特征在于,对所述业务量参数模型进行拟合,以构建所述业务量预测模型包括:

6.根据权利要求1所述的数据库管理方法,其特征在于,基于所述业务量预测模型,确定目标时间段内的业务量预测结果包括:

7.根据权利要求5或6所述的数据库管理方法,其特征在于,所述方法还包括基于所述业务量预测结果,确定是否需要对数据库进行扩缩容,包括:

8.根据权利要求7所述的数据库管理方法,其特征在于,基于数据库是否需要进行扩缩容的确定结果,确定数据库服务实例的第一扩缩容数量包括:

9.根据权利要求1所述的数据库管理方法,其特征在于,基于数据库的实时参数信息,确定数据库的业务承载压力包括:

10.根据权利要求9所述的数据库管理方法,其特征在于,基于所述第一目标拟合值,确定数据库的业务承载压力包括:

11.根据权利要求9或10所述的数据库管理方法,其特征在于,基于所述数据库的业务承载压力,确定是否需要对数据库进行扩缩容,包括:

12.根据权利要求11所述的数据库管理方法,其特征在于,响应于检测到所述数据库需要进行扩缩容时,计算确定数据库服务实例的第二扩缩容数量,包括:

13.根据权利要求12所述的数据库管理方法,其特征在于,所述第二目标拟合函数包括:

14.根据权利要求1所述的数据库管理方法,其特征在于,基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量包括:

15.根据权利要求14所述的数据库管理方法,其特征在于,基于第二扩缩容数量,确定当前时刻的数据库服务实例的目标扩缩容数量包括:

16.根据权利要求15所述的数据库管理方法,其特征在于,所述目标值的计算方法包括:

17.根据权利要求1所述的数据库管理方法,其特征在于,基于所述目标扩缩容数量,对所述数据库进行扩缩容包括:

18.根据权利要求1所述的数据库管理方法,其特征在于,在响应数据库分发请求之前,所述方法还包括:

19.根据权利要求1所述的数据库管理方法,其特征在于,在响应数据库分发请求时,所述方法还包括:

20.根据权利要求1所述的数据库管理方法,其特征在于,所述方法还包括:

21.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至20中任一项所述的方法。

22.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至20中任一项所述的方法。

23.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-20任一项所述的方法。


技术总结
本申请涉及一种数据库管理方法、计算机设备、存储介质和程序产品,所属领域为云计算技术领域,所述方法包括:基于数据库的历史时序业务数据,确定历史业务量参数;根据所述历史业务量参数,构建业务量预测模型,并基于所述业务量预测模型,确定目标时间段内的业务量预测结果;基于数据库的实时参数信息,确定数据库的业务承载压力;基于所述业务量预测结果和/或所述数据库的业务承载压力,确定数据库服务实例对应的目标扩缩容数量;基于所述目标扩缩容数量,对所述数据库进行扩缩容,以响应数据库分发请求。本申请可以降低冷启动时延,以及降低了数据库服务提供的成本,提高了数据库服务的性能和可用性。

技术研发人员:张东,吴栋,亓开元,逄立业,黄伟
受保护的技术使用者:济南浪潮数据技术有限公司
技术研发日:
技术公布日:2024/6/26
转载请注明原文地址:https://doc.8miu.com/read-1830905.html

最新回复(0)