分布式关系型数据库的测试方法、装置、设备及介质与流程

文档序号:41025463发布日期:2025-02-21 19:42阅读:7来源:国知局
分布式关系型数据库的测试方法、装置、设备及介质与流程

本技术涉及水电站运行控制,特别是涉及一种分布式关系型数据库的测试方法、装置、设备及介质。


背景技术:

1、分布式关系型数据库能够支持高并发访问和大规模数据存储,已经在众多互联网行业得到了广泛应用。与传统的集中式数据库相比,分布式关系型数据库的架构更加复杂,数据一致性的保障也变得更加困难。

2、为了确保分布式关系型数据库的可靠性,需要对分布式关系型数据库进行测试,但是,数据一致性问题往往只会在某些极端场景下出现,需要使用故障注入工具注入故障数据后,再对分布式关系型数据库进行数据一致性分析,并且需要人工对出现数据一致性问题的数据进行修复,需要耗费大量的人力物力和测试时间。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种分布式关系型数据库的测试方法、装置、设备及介质,至少能够更高效地对分布式关系型数据库的数据一致性问题进行测试,并对出现数据一致性问题的数据进行修复,减少了测试时间和人力物力的消耗。

2、第一方面,本技术提供了一种分布式关系型数据库的测试方法,包括:基于预先训练好的目标测试故障生成模型,根据分布式关系型数据库的架构和数据流向,生成多个故障测试数据;针对每个故障测试数据,将该故障测试数据注入分布式关系型数据库,并基于一致性检测算法对分布式关系型数据库进行数据一致性问题监测;当分布式关系型数据库存在数据一致性问题时,停止多个故障测试数据的注入,并停止对分布式关系型数据库进行数据一致性问题监测;根据分布式关系型数据库出现的数据一致性问题,生成故障测试报告,并对分布式关系型数据库中出现数据一致性问题的数据进行修复。

3、在其中一个实施例中,通过以下步骤对测试故障生成模型进行训练:获取历史故障数据,历史故障数据包括多个故障数据;针对每个故障数据,确定该故障数据中与数据一致性问题相关的多个数据特征;针对每个故障数据,将该故障数据的数据一致性问题和与数据一致性问题相关的多个数据库特征输入测试故障生成模型,生成训练故障数据;针对每个训练故障数据,确定该训练故障数据的故障类型和该训练故障数据对应的应用场景,应用场景包括分布式关系型数据库的架构和数据流向;根据多个训练故障数据,对初始测试故障生成模型进行训练,直至测试故障生成模型所生成的故障数据在与多个故障数据对应的多个应用场景中能够导致数据一致性问题。

4、在其中一个实施例中,通过以下步骤对分布式关系型数据库进行数据一致性问题监测:获取分布式关系型数据库的多个事务日志,并判断每个事务日志中的事务的开始状态和结束状态是否一致;每隔预设的时间间隔生成一个数据库快照,并判断多个数据库快照之间是否存在数据一致性问题;根据多个分布式事务的多个执行路径中的多个节点,并判断多个节点间的数据是否存在数据一致性问题;判断分布式关系型数据库的多个一致性协议是否正确;若每个事务日志中的事务的开始状态和结束状态不一致;和/或;多个数据库快照之间存在数据一致性问题;和/或;多个节点间的数据存在数据一致性问题;和/或;分布式关系型数据库的多个一致性协议不正确,则确定分布式关系型数据库存在数据一致性问题。

5、在其中一个实施例中,通过以下步骤对分布式关系型数据库进行数据一致性问题监测:获取分布式关系型数据库的负载数据;根据分布式关系型数据库的负载数据,确定对分布式关系型数据库进行数据一致性问题监测的检测时间间隔;每隔检测时间间隔,对分布式关系型数据库进行数据一致性问题检测,数据一致性问题检测包括单节点一致性检测、多节点一致性检测以及全局一致性检测。

6、在其中一个实施例中,通过以下步骤对出现数据一致性问题的分布式关系型数据库数据进行修复:确定分布式关系型数据库数据所出现的数据一致性问题的问题等级;根据与问题等级对应的故障恢复机制对分布式关系型数据库数据进行数据一致性问题修复。

7、在其中一个实施例中,方法还包括:当分布式关系型数据库存在数据一致性问题时,获取故障测试数据和故障测试报告;根据故障测试数据和故障测试报告,生成至少一个故障数据;基于至少一个故障数据对目标测试故障生成模型进行训练,以对目标测试故障生成模型进行更新。

8、第二方面,本技术还提供了一种分布式关系型数据库的测试装置,包括故障测试数据生成模块、数据一致性问题监测模块、故障测试停止模块及数据修复模块,故障测试数据生成模块,用于基于预先训练好的目标测试故障生成模型,根据分布式关系型数据库的架构和数据流向,生成多个故障测试数据;数据一致性问题监测模块,用于针对每个故障测试数据,将该故障测试数据注入分布式关系型数据库,并基于一致性检测算法对分布式关系型数据库进行数据一致性问题监测;故障测试停止模块,用于当分布式关系型数据库存在数据一致性问题时,停止多个故障测试数据的注入,并停止对分布式关系型数据库进行数据一致性问题监测;数据修复模块,用于根据分布式关系型数据库出现的数据一致性问题,生成故障测试报告,并对分布式关系型数据库中出现数据一致性问题的数据进行修复。

9、第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:

10、基于预先训练好的目标测试故障生成模型,根据分布式关系型数据库的架构和数据流向,生成多个故障测试数据;

11、针对每个故障测试数据,将该故障测试数据注入分布式关系型数据库,并基于一致性检测算法对分布式关系型数据库进行数据一致性问题监测;

12、当分布式关系型数据库存在数据一致性问题时,停止多个故障测试数据的注入,并停止对分布式关系型数据库进行数据一致性问题监测;

13、根据分布式关系型数据库出现的数据一致性问题,生成故障测试报告,并对分布式关系型数据库中出现数据一致性问题的数据进行修复。

14、第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

15、基于预先训练好的目标测试故障生成模型,根据分布式关系型数据库的架构和数据流向,生成多个故障测试数据;

16、针对每个故障测试数据,将该故障测试数据注入分布式关系型数据库,并基于一致性检测算法对分布式关系型数据库进行数据一致性问题监测;

17、当分布式关系型数据库存在数据一致性问题时,停止多个故障测试数据的注入,并停止对分布式关系型数据库进行数据一致性问题监测;

18、根据分布式关系型数据库出现的数据一致性问题,生成故障测试报告,并对分布式关系型数据库中出现数据一致性问题的数据进行修复。

19、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

20、基于预先训练好的目标测试故障生成模型,根据分布式关系型数据库的架构和数据流向,生成多个故障测试数据;

21、针对每个故障测试数据,将该故障测试数据注入分布式关系型数据库,并基于一致性检测算法对分布式关系型数据库进行数据一致性问题监测;

22、当分布式关系型数据库存在数据一致性问题时,停止多个故障测试数据的注入,并停止对分布式关系型数据库进行数据一致性问题监测;

23、根据分布式关系型数据库出现的数据一致性问题,生成故障测试报告,并对分布式关系型数据库中出现数据一致性问题的数据进行修复。

24、上述分布式关系型数据库的测试方法、装置、设备及介质,通过预先训练好的目标测试故障生成模型,自动生成故障数据;基于一致性检测算法,对分布式关系型数据库进行数据一致性问题监测;在出现数据一致性问题时,能够自动生成故障测试报告,并对出现数据一致性问题的数据进行修复,既能够更高效地对分布式关系型数据库的数据一致性问题进行测试,并对出现数据一致性问题的数据进行修复,又减少了测试时间和人力物力的消耗。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1