数据归档方法、装置、电子设备、介质和程序产品与流程

文档序号:35217016发布日期:2023-08-24 17:58阅读:21来源:国知局
数据归档方法、装置、电子设备、介质和程序产品与流程

本公开的实施例涉及计算机,具体涉及数据归档方法、装置、电子设备、介质和程序产品。


背景技术:

1、数据归档是对数据库中的历史数据进行数据归档,减少数据库中的数据量和提高数据库的运行性能。目前,在对数据进行归档时,通常采用的方式为:利用数据归档工具包,对单张表中的数据进行数据归档。

2、然而,发明人发现,当采用上述方式来归档数据,经常会存在如下技术问题:

3、对单张表中的数据进行数据归档,可能造成归档数据不完整,使得归档效率较低,进而造成归档资源消耗较大。

4、该背景技术部分中所公开的以上信息仅用于增强对本发明构思的背景的理解,并因此,其可包含并不形成本国的本领域普通技术人员已知的现有技术的信息。


技术实现思路

1、本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

2、本公开的一些实施例提出了数据归档方法、装置、电子设备、介质和程序产品,来解决以上背景技术部分提到的技术问题。

3、第一方面,本公开的一些实施例提供了一种数据归档方法,包括:执行主表归档任务信息对应主表归档任务,以生成主表待归档数据,其中,上述主表归档任务信息对应的主表与子表集存在字段关联关系;生成上述子表集中至少一个目标子表对应的至少一个子表归档任务信息,其中,上述至少一个目标子表是根据上述主表待归档数据对应属性字段得到的至少一个子表;对于归档任务信息集中每个归档任务信息,执行以下消费步骤:生成针对上述归档任务信息的归档消息组,其中,上述归档任务信息集包括:上述主表归档任务信息和上述至少一个子表归档任务信息;对上述归档消息组进行消息消费,得到消费结果组;根据所得到的消费结果组集,生成针对上述主表和上述至少一个目标子表的归档信息,其中,上述归档信息是表征上述主表待归档数据和对应至少一个子表待归档数据是否归档至目标数据库的信息。

4、可选地,上述生成针对上述归档任务信息的归档消息组,包括:上述生成针对上述归档任务信息的归档消息组,包括:响应于确定上述归档任务信息为子表归档任务信息,确定与上述归档任务信息对应的归档服务器;控制上述归档服务器,以执行上述归档任务信息对应子表归档任务,得到与上述子表归档任务信息对应的子表待归档数据;对上述子表待归档数据进行数据拆分,得到拆分后待归档数据集;对于上述拆分后待归档数据集中每个拆分后待归档数据,生成针对上述拆分后待归档数据的归档消息。

5、可选地,上述确定与上述归档任务信息对应的归档服务器,包括:确定上述归档任务信息对应的子表归档标识;响应于确定子表归档任务信息数量与归档服务器数量的比值为第一整数,确定上述子表归档标识对应的归档服务器,其中,上述子表归档任务信息数量是上述至少一个子表归档任务信息对应的数量,上述归档服务器数量是归档服务器集对应的数量。

6、可选地,在上述响应于确定子表归档任务信息数量与归档服务器数量的比值为第一整数,确定上述子表归档标识对应的归档服务器之后,上述方法还包括:响应于确定上述子表归档任务信息数量与上述归档服务器数量的比值不是整数,对上述比值进行取整处理,得到第二整数;将上述第二整数与上述归档服务器数量的乘积,确定为归档倍数任务信息数量;将上述子表归档任务信息数量与上述归档倍数任务信息数量的差值,确定为剩余任务信息数量;确定与上述剩余任务信息数量对应的子表归档任务信息集,作为剩余子表归档任务信息集;响应于确定上述子表归档标识位于上述剩余子表归档任务信息集对应归档标识集内,根据上述归档标识集和上述归档服务器集对应的归档服务器标识集,确定上述子表归档标识对应的归档服务器。

7、可选地,方法还包括:响应于确定上述归档信息是表征上述主表待归档数据和对应至少一个子表待归档数据归档至目标数据库的信息,对于上述消费结果组集中的每个消费结果,执行以下消息消费步骤:对上述消费结果对应的待归档数据进行数据校验,得到第一校验结果;获取针对上述消费结果的已归档数据;对上述已归档数据进行数据校验,得到第二校验结果;响应于确定上述第一校验结果和上述第二校验结果相同,生成针对上述待归档数据的删除消息;对上述删除消息进行消费,得到消息消费结果;根据所得到的消息消费结果组集,生成针对上述主表和上述至少一个目标子表的删除信息,其中,上述删除信息是表征上述主表待归档数据和上述子表待归档数据是否从源数据库中删除的信息。

8、可选地,上述对上述消费结果对应的待归档数据进行数据校验,得到第一校验结果,包括:根据预设多项式,对上述待归档数据进行拼接,得到拼接后待归档数据;对上述拼接后待归档数据进行校验,得到第一校验结果。

9、可选地,上述根据所得到的消费结果组集,生成针对上述主表和上述至少一个目标子表的归档信息,包括:响应于确定上述消费结果组集中存在表征归档失败的消费结果,确定表征归档失败的至少一个消费结果;对于上述至少一个消费结果中的每个消费结果,根据上述消费结果对应的归档消息,执行以下重新消费步骤:确定上述归档消息对应的已执行次数;对上述消费结果对应的归档消息重新进行消费,得到重新消费结果;响应于确定上述重新消费结果表征归档成功,结束上述重新消费步骤;响应于确定上述重新消费结果表征归档失败,并且已执行次数大于等于预设执行次数,结束上述重新消费步骤,以及将上述归档消息发送至监控终端;响应于确定上述重新消费结果表征归档失败,并且已执行次数小于上述预设执行次数,再次执行上述重新消费步骤。

10、可选地,上述执行主表归档任务信息对应主表归档任务,以生成主表待归档数据,包括:生成与上述主表归档任务信息对应的主表归档语句;确定与上述主表归档任务信息对应的归档服务器;控制上述归档服务器,以对上述主表归档语句进行解析,得到主表待归档数据。

11、第二方面,本公开的一些实施例提供了一种数据归档装置,包括:第一执行单元,被配置成执行主表归档任务信息对应主表归档任务,以生成主表待归档数据,其中,上述主表归档任务信息对应的主表与子表集存在字段关联关系;第一生成单元,被配置成生成上述子表集中至少一个目标子表对应的至少一个子表归档任务信息,其中,上述至少一个目标子表是根据上述主表待归档数据对应属性字段得到的至少一个子表;第二执行单元,被配置成对于归档任务信息集中每个归档任务信息,执行以下消费步骤:生成针对上述归档任务信息的归档消息组,其中,上述归档任务信息集包括:上述主表归档任务信息和上述至少一个子表归档任务信息;对上述归档消息组进行消息消费,得到消费结果组;第二生成单元,被配置成根据所得到的消费结果组集,生成针对上述主表和上述至少一个目标子表的归档信息,其中,上述归档信息是表征上述主表待归档数据和对应至少一个子表待归档数据是否归档至目标数据库的信息。

12、可选地,执行单元可以进一步被配置成:响应于确定上述归档任务信息为子表归档任务信息,确定与上述归档任务信息对应的归档服务器;控制上述归档服务器,以执行上述归档任务信息对应子表归档任务,得到与上述子表归档任务信息对应的子表待归档数据;对上述子表待归档数据进行数据拆分,得到拆分后待归档数据集;对于上述拆分后待归档数据集中每个拆分后待归档数据,生成针对上述拆分后待归档数据的归档消息。

13、可选地,执行单元进一步被配置成:确定上述归档任务信息对应的子表归档标识;响应于确定子表归档任务信息数量与归档服务器数量的比值为第一整数,确定上述子表归档标识对应的归档服务器,其中,上述子表归档任务信息数量是上述至少一个子表归档任务信息对应的数量,上述归档服务器数量是归档服务器集对应的数量。

14、可选地,执行单元可以进一步被配置成:响应于确定上述子表归档任务信息数量与上述归档服务器数量的比值不是整数,对上述比值进行取整处理,得到第二整数;将上述第二整数与上述归档服务器数量的乘积,确定为归档倍数任务信息数量;将上述子表归档任务信息数量与上述归档倍数任务信息数量的差值,确定为剩余任务信息数量;确定与上述剩余任务信息数量对应的子表归档任务信息集,作为剩余子表归档任务信息集;响应于确定上述子表归档标识位于上述剩余子表归档任务信息集对应归档标识集内,根据上述归档标识集和上述归档服务器集对应的归档服务器标识集,确定上述子表归档标识对应的归档服务器。

15、可选地,数据归档装置还包括:第三执行单元和第三生成单元。其中,第三执行单元被配置成:响应于确定上述归档信息是表征上述主表待归档数据和对应至少一个子表待归档数据归档至目标数据库的信息,对于上述消费结果组集中的每个消费结果,执行以下消息消费步骤:对上述消费结果对应的待归档数据进行数据校验,得到第一校验结果;获取针对上述消费结果的已归档数据;对上述已归档数据进行数据校验,得到第二校验结果;响应于确定上述第一校验结果和上述第二校验结果相同,生成针对上述待归档数据的删除消息;对上述删除消息进行消费,得到消息消费结果。第三生成单元被配置成:根据所得到的消息消费结果组集,生成针对上述主表和上述至少一个目标子表的删除信息,其中,上述删除信息是表征上述主表待归档数据和上述子表待归档数据是否从源数据库中删除的信息。

16、可选地,第三执行单元进一步被配置成:根据预设多项式,对上述待归档数据进行拼接,得到拼接后待归档数据;对上述拼接后待归档数据进行校验,得到第一校验结果。

17、可选地,第二生成单元进一步被配置成:响应于确定上述消费结果组集中存在表征归档失败的消费结果,确定表征归档失败的至少一个消费结果;对于上述至少一个消费结果中的每个消费结果,根据上述消费结果对应的归档消息,执行以下重新消费步骤:确定上述归档消息对应的已执行次数;对上述消费结果对应的归档消息重新进行消费,得到重新消费结果;响应于确定上述重新消费结果表征归档成功,结束上述重新消费步骤;响应于确定上述重新消费结果表征归档失败,并且已执行次数大于等于预设执行次数,结束上述重新消费步骤,以及将上述归档消息发送至监控终端;响应于确定上述重新消费结果表征归档失败,并且已执行次数小于上述预设执行次数,再次执行上述重新消费步骤。

18、可选地,第一执行单元进一步被配置成:生成与上述主表归档任务信息对应的主表归档语句;确定与上述主表归档任务信息对应的归档服务器;控制上述归档服务器,以对上述主表归档语句进行解析,得到主表待归档数据。

19、第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。

20、第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如第一方面中任一实现方式描述的方法。

21、第五方面,本公开的一些实施例提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述第一方面中任一实现方式所描述的方法。

22、本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的数据归档方法,利用消息的生成和消费,对主表和多个子表进行数据归档,从而提高了归档的完整性和归档的效率。具体来说,造成数据库运行性能较低和资源消耗较大,归档效率较低和归档时间较长的原因在于:对单张表中的数据进行数据归档,可能造成归档数据不完整,使得归档效率较低,进而造成归档资源消耗较大。基于此,本公开的一些实施例的数据归档方法,首先,执行主表归档任务信息对应主表归档任务,以生成主表待归档数据,其中,上述主表归档任务信息对应的主表与子表集存在字段关联关系。在这里,得到的主表待归档数据和字段关联关系可以用于后续确定至少一个目标子表。其次,生成上述子表集中至少一个目标子表对应的至少一个子表归档任务信息,其中,上述至少一个目标子表是根据上述主表待归档数据对应属性字段得到的至少一个子表。在这里,得到的至少一个目标子表可以确定子表中归档数据的数据归档范围,然后,对于归档任务信息集中每个归档任务信息,执行以下消费步骤:第一步,生成针对上述归档任务信息的归档消息组,其中,上述归档任务信息集包括:上述主表归档任务信息和上述至少一个子表归档任务信息。在这里,通过归档任务信息与至少一个归档消息之间的映射关系,以使得后续消费至少一个归档消息,可以有效地提高归档效率和降低数据库归档负载。第二步,对上述归档消息组进行消息消费,得到消费结果组。在这里,通过消费结果组可以了解数据归档情况,通过对表征归档失败的消费结果进行重新归档,保证归档数据的完整性。最后,根据所得到的消费结果组集,生成针对上述主表和上述至少一个目标子表的归档信息,其中,上述归档信息是表征上述主表待归档数据和对应至少一个子表待归档数据是否归档至目标数据库的信息。在这里,对主表和对应的至少一个目标子表的数据进行数据归档,可以提高归档数据的完整性。由此,可以利用消息的生成和消费,对主表和多个子表中的数据进行数据归档,从而提高数据归档的完整性和归档效率。

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