CN118170589A - 一种数据处理方法、计算机程序产品、设备及计算机介质 - Google Patents

一种数据处理方法、计算机程序产品、设备及计算机介质 Download PDF

Info

Publication number
CN118170589A
CN118170589A CN202410606452.8A CN202410606452A CN118170589A CN 118170589 A CN118170589 A CN 118170589A CN 202410606452 A CN202410606452 A CN 202410606452A CN 118170589 A CN118170589 A CN 118170589A
Authority
CN
China
Prior art keywords
data
version
information
state information
obtaining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202410606452.8A
Other languages
English (en)
Other versions
CN118170589B (zh
Inventor
白战豪
穆向东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Jinan data Technology Co ltd
Original Assignee
Inspur Jinan data Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Jinan data Technology Co ltd filed Critical Inspur Jinan data Technology Co ltd
Priority to CN202410606452.8A priority Critical patent/CN118170589B/zh
Publication of CN118170589A publication Critical patent/CN118170589A/zh
Application granted granted Critical
Publication of CN118170589B publication Critical patent/CN118170589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据处理方法、计算机程序产品、设备及计算机介质,涉及云备份技术领域,在云服务器上确定第一版本数据;在客户端上确定第二版本数据;确定第一版本数据和第二版本数据间的历史版本数据;在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组;解析出各个版本数据组的数据变化信息;对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息;根据数据差异信息进行数据备份或恢复。实现了根据数据在第一版本数据和第二版本数据间的所有版本中的变化过程进行数据备份或恢复,也即根据数据随版本变化的过程来对数据进行处理,与根据数据的变化结果进行备份或恢复方案相比,精确度更高。

Description

一种数据处理方法、计算机程序产品、设备及计算机介质
技术领域
本发明涉及云备份技术领域,更具体地说,涉及一种数据处理方法、计算机程序产品、电子设备及计算机可读存储介质。
背景技术
当前,用户可以将自身客户端中的数据通过云存储的方式备份在网络上面,比如备份在云服务器上,这样在需要恢复数据时,可以根据云服务器上存储的数据对客户端上的数据进行恢复。且在云备份过程中,可以确定两份数据间的差异,再根据差异信息进行数据备份或恢复。然而,根据两份数据间的差异进行数据备份或恢复的过程中,存在忽略数据变化过程的情况,导致云备份精确度差。
综上所述,如何提高云备份的精确度是目前本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种数据处理方法,其能在一定程度上解决如何提高云备份的精确度的技术问题。本发明还提供了一种计算机程序产品、电子设备及计算机介质。
第一方面,提供一种数据处理方法,包括:
在云服务器上确定第一版本数据;
在客户端上确定第二版本数据;
确定所述第一版本数据和所述第二版本数据间的历史版本数据;
在所述第一版本数据、所述历史版本数据和所述第二版本数据中,确定出所有相邻的版本数据组;
解析出各个所述版本数据组的数据变化信息;
对所有所述数据变化信息进行整合,得到所述第一版本数据和所述第二版本数据间的数据差异信息;
根据所述数据差异信息进行数据备份或恢复。
另一方面,解析出各个所述版本数据组的数据变化信息,包括:
对于每个所述版本数据组,获取所述版本数据组中第三版本数据的第一数据位图信息,获取所述版本数据组中第四版本数据的第二数据位图信息;
对所述第一数据位图信息和所述第二数据位图信息进行数据状态对比,得到所述数据变化信息;
其中,所述第一数据位图信息和所述第二数据位图信息用于记录数据的状态信息。
另一方面,数据的状态信息的类型包括数据不存在、数据存在、数据待删除、数据存在且从上次快照后未进行过写操作。
另一方面,对所述第一数据位图信息和所述第二数据位图信息进行数据状态对比,得到所述数据变化信息,包括:
对于每个数据,解析所述第一数据位图信息中记录的数据的第一状态信息,解析出所述第二数据位图信息中记录的数据的第二状态信息;
对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果;
将所述数据变化结果记录至所述数据变化信息中。
另一方面,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据不存在,若所述第二状态信息表征数据不存在,则得到表征不对数据进行处理的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的所述数据变化结果。
另一方面,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据存在,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征不对数据进行处理的所述数据变化结果。
另一方面,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据待删除,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的所述数据变化结果。
另一方面,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据存在且从上次快照后未进行过写操作,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且未进行过写操作,则得到表征不对数据进行处理的所述数据变化结果。
另一方面,解析数据位图信息中记录的数据的状态信息,包括:
读取数据位图信息中记录的数据的比特位;
对所述比特位进行解析,得到数据的状态信息。
另一方面,对所述比特位进行解析,得到数据的状态信息,包括:
若所述比特位为00,则确定数据的状态信息表征数据不存在;
若所述比特位为01,则确定数据的状态信息表征数据存在;
若所述比特位为10,则确定数据的状态信息表征数据待删除;
若所述比特位为11,则确定数据的状态信息表征数据存在且从上次快照后未进行过写操作。
另一方面,获取所述版本数据组中第三版本数据的第一数据位图信息,包括:
对所述版本数据组中的第三版本数据进行快照,得到所述第一数据位图信息;
获取所述版本数据组中第四版本数据的第二数据位图信息,包括:
对所述版本数据组中的第四版本数据进行快照,得到所述第二数据位图信息。
另一方面,对所有所述数据变化信息进行整合,得到所述第一版本数据和所述第二版本数据间的数据差异信息,包括:
对所有所述数据变化信息取并集,得到所述第一版本数据和所述第二版本数据间的数据差异信息。
第二方面,提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上任一所述数据处理方法的步骤。
第三方面,提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一所述数据处理方法的步骤。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述数据处理方法的步骤。
本发明提供的一种数据处理方法,在云服务器上确定第一版本数据;在客户端上确定第二版本数据;确定第一版本数据和第二版本数据间的历史版本数据;在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组;解析出各个版本数据组的数据变化信息;对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息;根据数据差异信息进行数据备份或恢复。本发明的有益效果是:在确定第一版本数据和第二版本数据之后,并非是直接对第一版本数据和第二版本数据进行差异分析,而是需确定出第一版本数据和第二版本数据间的所有相邻版本数据组,并分析出每个版本数据组的数据变化信息,以获知每两个版本间的数据差异信息,最后对所有数据变化信息进行整合后,便可以将第一版本数据和第二版本数据间出现的所有相邻版本间的数据变化信息统一成对应的数据差异信息,使得该数据差异信息可以反映数据随版本改动而发生的变化,后续根据数据差异信息进行数据备份或恢复的话,相当于根据数据在第一版本数据和第二版本数据间的所有版本中的变化过程进行数据备份或恢复,实现了根据数据随版本变化的过程来对数据进行备份或恢复,与仅仅根据数据的变化结果进行备份或恢复相比,精确度更高。本发明提供的一种计算机程序产品、电子设备及计算机可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的流程图;
图2为创建备份时位图的变化示意图;
图3为删除备份时位图的变化示意图;
图4为数据备份示意图;
图5为数据恢复示意图;
图6为本发明实施例提供的一种电子设备的结构示意图;
图7为本发明实施例提供的一种电子设备的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明实施例提供的一种数据处理方法的流程图。
本发明实施例提供的一种数据处理方法,可以包括以下步骤:
步骤S101:在云服务器上确定第一版本数据。
步骤S102:在客户端上确定第二版本数据。
实际应用中,当云服务器和客户端上存储的数据存在差异时,便需要进行备份或恢复,因此需在云服务器上确定第一版本数据,在客户端上确定第二版本数据,第一版本数据和第二版本数据的类型、结构、内容等可以根据应用场景来确定,比如第一版本数据和第二版本数据可以为软件的版本数据、服务器的版本数据等。
需要说明的是,具体应用场景中,可以根据用户需求等确定第一版本数据和第二版本数据,比如用户可以先在客户端上根据客户端功能确定当前的第二版本数据,再在云服务上确定保存的第二版本数据等。
步骤S103:确定第一版本数据和第二版本数据间的历史版本数据。
步骤S104:在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组。
实际应用中,数据由第一版本数据变化到第二版本数据,或由第二版本数据变化到第一版本数据的过程中,可能经历了多次版本变化,假设数据存在三个版本,第一版本数据为版本1数据,第二版本数据为版本3数据,则中间会经历版本2的变化,如果直接比较第一版本数据和第二版本数据来确定数据差异的话,只能得到版本1和版本3间的数据差异,无法得到版本1和版本2间的数据差异,也无法得到版本2和版本3间的数据差异,也就无法对数据在版本间的变化过程进行追溯、还原,为了避免此种情况,实现在数据备份或恢复的过程中可以对数据在版本间的变化过程进行追溯、还原,在得到第一版本数据和第二版本数据后,可以确定第一版本数据和第二版本数据间的历史版本数据,之后需在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组,也即将第一版本数据、历史版本数据和第二版本数据中每两个相邻的版本数据作为一个版本数据组。
需要说明的是,历史版本数据也即出现在第一版本数据和第二版本数据间的版本数据,历史版本数据可以根据出现在第一版本数据和第二版本数据间的版本数据确定,仍以第一版本数据为版本1数据,第二版本数据为版本3数据为例,则历史版本数据为版本2数据,相应的,若第二版本数据为版本4数据,则历史版本数据为版本2数据和版本3数据。此外,版本数据组指的是第一版本数据、历史版本数据和第二版本数据中的相邻版本数据,也即两个相邻版本数据会组成一个版本数据组,仍以第一版本数据为版本1数据,第二版本数据为版本3数据为例,则历史版本数据为版本2数据,相邻的版本1数据和版本2数据会成为一个版本数据组,相邻的版本2数据和版本3数据则会成为另一个版本数据组,不相邻的版本1数据和版本3数据则无法成为版本数据组。
步骤S105:解析出各个版本数据组的数据变化信息。
实际应用中,在得到各个版本数据组之后,由于版本数据组中的版本数据为相邻版本数据,所以版本数据组的两个版本数据间的数据变化信息便反映了相邻两个版本间的数据差异,所以对于每个版本数据组,可以解析出对应的数据变化信息,以确定数据在每两个相邻版本间的数据差异。
具体应用场景中,考虑到在数据备份和恢复过程中,需要明确数据的变化,而数据的变化可以通过数据状态的差异来确定,所以可以记录数据的状态信息,并通过数据状态信息间的差异来确定数据的变化信息,在此过程中,由于位图可以集中记录一组数据的状态,所以可以借助位图来明确数据的变化信息,也即在解析出各个版本数据组的数据变化信息的过程中,对于每个版本数据组,获取版本数据组中第三版本数据的第一数据位图信息,获取版本数据组中第四版本数据的第二数据位图信息;对第一数据位图信息和第二数据位图信息进行数据状态对比,得到数据变化信息;其中,第一数据位图信息和第二数据位图信息用于记录数据的状态信息。
由此描述可知,本发明通过位图记录对应版本数据中的数据状态信息,一方面,单个版本数据中的数据状态信息可以集中在一起进行存储,便于管理,另一方面,位图只需对数据状态信息进行记录,后续可以快速通过位图查询数据状态信息进行处理,可以提高数据变化信息的解析效率。
具体应用场景中,数据的状态信息的类型可以根据实际需要来确定,比如本发明考虑到数据在备份或恢复过程中会出现数据丢失、数据存在、数据被删除、数据未发生改变等,所以为了便于根据数据状态信息解析数据变化信息,可以设置数据的状态信息包括数据不存在、数据存在、数据待删除、数据存在且从上次快照后未进行过写操作等。
具体应用场景中,当数据在第一数据位图信息和第二数据位图信息中的状态不一致时,便意味着该数据发生了变化,需要在数据变化信息中进行相应记录,所以在对第一数据位图信息和第二数据位图信息进行数据状态对比,得到数据变化信息的过程中,对于每个数据,可以解析第一数据位图信息中记录的数据的第一状态信息,解析出第二数据位图信息中记录的数据的第二状态信息;对第一状态信息和第二状态信息进行对比,得到数据变化结果;将数据变化结果记录至数据变化信息中。
具体应用场景中,对第一状态信息和第二状态信息进行对比,得到数据变化结果的过程中,可以以某个状态信息为基准,将另一状态信息与该状态信息进行比较来得到数据变化结果,比如响应于第一状态信息表征数据不存在,若第二状态信息表征数据不存在,则得到表征不对数据进行处理的数据变化结果;若第二状态信息表征数据存在,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据待删除,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的数据变化结果。与之类似的,响应于第一状态信息表征数据存在,若第二状态信息表征数据不存在,则得到表征对数据进行删除的数据变化结果;若第二状态信息表征数据存在,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据待删除,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征不对数据进行处理的数据变化结果。
与之类似的,响应于第一状态信息表征数据待删除,若第二状态信息表征数据不存在,则得到表征对数据进行删除的数据变化结果;若第二状态信息表征数据存在,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据待删除,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的数据变化结果。与之类似的,响应于第一状态信息表征数据存在且从上次快照后未进行过写操作,若第二状态信息表征数据不存在,则得到表征对数据进行删除的数据变化结果;若第二状态信息表征数据存在,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据待删除,则得到表征对数据进行更新的数据变化结果;若第二状态信息表征数据存在且未进行过写操作,则得到表征不对数据进行处理的数据变化结果。
具体应用场景中,数据的状态信息可以通过数字来记录,比如可以通过比特位来记录,因此在解析数据位图信息中记录的数据的状态信息的过程中,可以读取数据位图信息中记录的数据的比特位;对比特位进行解析,得到数据的状态信息。具体的,考虑到本发明的数据状态信息有四类,可以采用两比特的比特位来表征数据状态信息,因此在对比特位进行解析,得到数据的状态信息的过程中,若比特位为00,则确定数据的状态信息表征数据不存在;若比特位为01,则确定数据的状态信息表征数据存在;若比特位为10,则确定数据的状态信息表征数据待删除;若比特位为11,则确定数据的状态信息表征数据存在且从上次快照后未进行过写操作。当然,也可以有其他记录数据状态信息的方式,本发明在此不做具体限定。
由此描述可知,本发明通过两比特的比特位来记录数据的状态信息,如此一来,不仅可以快速、方便的对数据的状态信息进行管理,比如进行存储、更改等,此外,还可以通过比特位间的比较来快速确定数据变化结果,此过程可以如表1所示。
表1 通过比特位对数据状态信息进行比较示意表
相应的,当创建备份时,位图的变化过程如图2所示,位图的第一位为01时,创建快照1,快照1的第一位为11,将原卷的该位置为11;若此时立即创建快照2,快照2的该位也为11,表明快照1和快照2之间的该对象未被修改过;之后向原卷的第一个对象写数据的话,则需将该位从11置为10。而当删除备份时,位图的变化过程如图3所示,原卷和快照1、快照2的第一个对象对应位分别为11、10、11;若此时删除快照1,检测到快照1的下一个快照的该位为11,则需将快照的第一位置为1;若再删除快照2,检测到为最后一个快照,同时原卷的第一个对象对应位为11,则需将原卷的该位置为10。
具体应用场景中,数据位图可以通过对相应版本数据进行快照得到,因此,在获取版本数据组中第三版本数据的第一数据位图信息的过程中,可以对版本数据组中的第三版本数据进行快照,得到第一数据位图信息;在获取版本数据组中第四版本数据的第二数据位图信息的过程中,可以对版本数据组中的第四版本数据进行快照,得到第二数据位图信息。
步骤S106:对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息。
步骤S107:根据数据差异信息进行数据备份或恢复。
实际应用中,在解析出各个版本数据组的数据变化信息,也即得到数据在每两个相邻版本间的变化信息之后,便可以对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息,以根据数据差异信息进行数据备份或恢复。具体的,假设第一版本数据的版本低于第二版本数据,则可以从第一版本数据开始,直至第二版本数据结束,依次将后一个版本数据与前一个版本数据间的数据变化信息进行整合,得到该数据差异信息,相应的,在进行数据备份或恢复的过程中,假设需将数据由第一版本数据变更为第二版本数据,则可以正序按照数据差异信息对数据进行变更,也即从数据差异信息的头部开始对数据进行变更,类似的,假设需将数据由第二版本数据变更为第一版本数据,则可以倒序按照数据差异信息对数据进行变更,也即从数据差异信息的尾部开始对数据进行变更。
具体应用场景中,在对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息的过程中,可以对所有数据变化信息取并集,以快速得到第一版本数据和第二版本数据间的数据差异信息。需要说明的是,每个数据的处理结果包括以下三种:不处理,所有对比结果均为不处理;删除,开始版本数据和最终版本数据状态均为0;更新,对比结果中有一个为更新,并且开始版本数据和最终版本数据状态不全为0。
本发明提供的一种数据处理方法,在云服务器上确定第一版本数据;在客户端上确定第二版本数据;确定第一版本数据和第二版本数据间的历史版本数据;在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组;解析出各个版本数据组的数据变化信息;对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息;根据数据差异信息进行数据备份或恢复。本发明的有益效果是:在确定第一版本数据和第二版本数据之后,并非是直接对第一版本数据和第二版本数据进行差异分析,而是需确定出第一版本数据和第二版本数据间的所有相邻版本数据组,并分析出每个版本数据组的数据变化信息,以获知每两个版本间的数据差异信息,最后对所有数据变化信息进行整合后,便可以将第一版本数据和第二版本数据间出现的所有相邻版本间的数据变化信息统一成对应的数据差异信息,使得该数据差异信息可以反映数据随版本改动而发生的变化,后续根据数据差异信息进行数据备份或恢复的话,相当于根据数据在第一版本数据和第二版本数据间的所有版本中的变化过程进行数据备份或恢复,实现了根据数据随版本变化的过程来对数据进行备份或恢复,与仅仅根据数据的变化结果进行备份或恢复相比,精确度更高。
在上述实施例基础上,考虑到云服务器上存在多个版本数据,且可能存在多个用户的多个版本数据,这会导致在云服务器上查找版本数据的过程繁琐,不易执行,为了避免此种情况,可以对云服务器上的云上数据组织进行设置,以便可以应用该云上数据组织形式快速在云服务器上确定版本数据等。
需要说明的是,云上数据组织的形式可以根据应用场景来确定,比如云上数据组织结构可以包括四层元数据,第一层元数据可以用于描述每个集群中每个存储池每个云卷的信息,其内容可以如表2所示;第二层元数据主要用于描述云卷的云备份信息,其内容可以如表3所示;第三层元数据用于描述云卷某一次云备份的所有对象数据的位图,其内容可以如表4所示;第四层元数据主要用于描述云卷某一次云备份实际上传的对象数据信息,其内容可以如表5所示。相应的,可以从云服务器上获取记录的云上数据组织,对云上数据组织进行解析来确定版本数据等。
表2第一层元数据结构表
表3第二层元数据结构表
表4第三层元数据结构表
表5第四层元数据结构表
由此描述可知,本发明借助云上数据组织的第一层元数据描述每个集群中每个存储池每个云卷的信息,借助云上数据组织的第二层元数据描述云卷的云备份信息,借助云上数据组织的第三层元数据描述云卷某一次云备份的所有对象数据的位图,借助云上数据组织的第四层元数据描述云卷某一次云备份实际上传的对象数据信息,如此一来,只需获取到云上数据组织,便可以快速确定每个集群中每个存储池每个云卷的信息、云卷的云备份信息、云卷某一次云备份的所有对象数据的位图、云卷某一次云备份实际上传的对象数据信息,而这些信息反映了版本数据的相应信息及其他内容,所以可以应用这些信息快速确定版本数据等信息,提高了云上服务器的数据查询效率和准确性。
为了便于理解本发明提供的数据处理方法,现假设需在分布式存储的数据库系统和公有云间进行数据备份或恢复,则过程可以如图4和图5所示。
其中,当需要进行增量备份时,备份服务定时,比如每5s扫描是否有备份任务添加,若扫描到备份任务,则创建备份快照,然后开始执行数据备份,步骤如下:
读取本地备份版本的快照元数据,获取云卷云上最新备份版本元数据,将云上和本地备份版本做匹配,比如判断云上最新备份版本名称和版本号,在本地是否有相同对应版本:
情况一:若云上备份版本和本地备份版本匹配,则更新云卷状态为备份中,获取对应云上备份版本至用户备份版本间的位图,根据本地各备份间位图,计算出需备份对象位图,也即将云上备份版本作为第一版本数据,将本地备份版本作为第二版本数据来按照本发明方案确定数据差异信息;根据备份对象位图,读取卷数据,云数据组织、数据组织与加密后,通过s3接口上传到云端;上传完成后更新本地云卷状态为就绪;
情况二:若云上备份版本和本地备份版本不匹配,则更新云卷状态为备份中;获取本地本次备份版本快照位图,根据备份版本快照位图,读取卷数据,进行元数据组织、数据组织与加密后,通过s3接口上传到云端;上传完成后更新本地云卷状态为就绪。
其中,当需要进行增量恢复时,数据库系统可以先对云卷创建一个临时快照,执行恢复命令行,将恢复任务写入元数据,相应的,备份任务定时,比如每5s扫描是否有任务添加,扫描到恢复任务时,若类型为增量备份的恢复,则读取本地备份版本的快照元数据和云上云卷备份版本元数据,对云上恢复备份版本与本地备份版本进行匹配:
情况一:若云上恢复备份版本和本地备份版本匹配,则更新原卷状态为恢复中,将云上备份版本作为第一版本数据,将本地备份版本作为第二版本数据来按照本发明方案确定数据差异信息,本地根据该数据差异信息直接执行原卷的恢复;
情况二:若本地备份版本匹配到云上的某个历史备份版本,则读取云上该版本后所有备份版本位图,将本地卷恢复到匹配的历史备份版本的快照版本;根据读取到的云上各备份版本的位图,计算出需恢复对象位图(每个对象对应的备份版本),此时相当于将云上备份版本作为第一版本数据,将历史备份版本作为第二版本数据来按照本发明方案确定数据差异信息;根据恢复对象位图读取云上对应备份版本的对象数据进行数据解析、解密等;更新本地云卷状态为恢复中,将解析过的数据写入本地云卷;
情况三:若未匹配到本地备份快照版本,则云上读取云上最新全量备份版本和本次恢复增量备份间位图;根据云上全量备份版本和本次恢复增量备份间位图,计算出恢复对象位图;根据恢复对象位图读取云上备份版本对应对象数据进行数据解析、解密等;更新本地云卷状态为恢复中,将解析过的数据写入本地云卷;恢复完成,更新云卷状态为就绪,删除临时快照。
基于上述实施例,本发明还提供了一种数据处理系统,可以包括:
第一确定模块,用于在云服务器上确定第一版本数据;
第二确定模块,用于在客户端上确定第二版本数据;
第三确定模块,用于确定第一版本数据和第二版本数据间的历史版本数据;
第四确定模块,用于在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组;
第一解析模块,用于解析出各个版本数据组的数据变化信息;
第一整合模块,用于对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息;
第一处理模块,用于根据数据差异信息进行数据备份或恢复。
本发明提供的一种数据处理系统,包括第一确定模块,用于在云服务器上确定第一版本数据;第二确定模块,用于在客户端上确定第二版本数据;第三确定模块,用于确定第一版本数据和第二版本数据间的历史版本数据;第四确定模块,用于在第一版本数据、历史版本数据和第二版本数据中,确定出所有相邻的版本数据组;第一解析模块,用于解析出各个版本数据组的数据变化信息;第一整合模块,用于对所有数据变化信息进行整合,得到第一版本数据和第二版本数据间的数据差异信息;第一处理模块,用于根据数据差异信息进行数据备份或恢复。本发明中,在确定第一版本数据和第二版本数据之后,并非是直接对第一版本数据和第二版本数据进行差异分析,而是需确定出第一版本数据和第二版本数据间的所有相邻版本数据组,并分析出每个版本数据组的数据变化信息,以获知每两个版本间的数据差异信息,最后对所有数据变化信息进行整合后,便可以将第一版本数据和第二版本数据间出现的所有相邻版本间的数据变化信息统一成对应的数据差异信息,使得该数据差异信息可以反映数据随版本改动而发生的变化,后续根据数据差异信息进行数据备份或恢复的话,相当于根据数据在第一版本数据和第二版本数据间的所有版本中的变化过程进行数据备份或恢复,实现了根据数据随版本变化的过程来对数据进行备份或恢复,与仅仅根据数据的变化结果进行备份或恢复相比,精确度更高。
本发明中提供的数据处理系统的相应描述可以参阅上述实施例,在此不再赘述。
本发明还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上任一实施例所描述的数据处理方法。
本发明还提供了一种电子设备及计算机可读存储介质,其均具有本发明实施例提供的一种数据处理方法具有的对应效果。请参阅图6,图6为本发明实施例提供的一种电子设备的结构示意图。
本发明实施例提供的一种电子设备,包括存储器201和处理器202,存储器201中存储有计算机程序,处理器202执行计算机程序时实现如上任一实施例所描述的数据处理方法。
请参阅图7,本发明实施例提供的另一种电子设备中还可以包括:与处理器202连接的输入端口203,用于传输外界输入的命令至处理器202;与处理器202连接的显示单元204,用于显示处理器202的处理结果至外界;与处理器202连接的通信模块205,用于实现电子设备与外界的通信。显示单元204可以为显示面板、激光扫描使显示器等;通信模块205所采用的通信方式包括但不局限于移动高清链接技术(Mobile High-Definition Link,MHL)、通用串行总线(Universal Serial Bus,USB)、高清多媒体接口(High-DefinitionMultimedia Interface,HDMI)、无线连接:无线保真技术(WIreless Fidelity,WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术。
本发明实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如上任一实施例所描述的数据处理方法。
本发明所涉及的计算机可读存储介质包括随机存储器(Random Access Memory,RAM)、内存、只读存储器(Read-Only Memory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、或技术领域内所公知的任意其它形式的存储介质。
本发明实施例提供的一种数据处理系统、计算机程序产品、电子设备及计算机可读存储介质中相关部分的说明请参见本发明实施例提供的一种数据处理方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (15)

1.一种数据处理方法,其特征在于,包括:
在云服务器上确定第一版本数据;
在客户端上确定第二版本数据;
确定所述第一版本数据和所述第二版本数据间的历史版本数据;
在所述第一版本数据、所述历史版本数据和所述第二版本数据中,确定出所有相邻的版本数据组;
解析出各个所述版本数据组的数据变化信息;
对所有所述数据变化信息进行整合,得到所述第一版本数据和所述第二版本数据间的数据差异信息;
根据所述数据差异信息进行数据备份或恢复。
2.根据权利要求1所述的数据处理方法,其特征在于,解析出各个所述版本数据组的数据变化信息,包括:
对于每个所述版本数据组,获取所述版本数据组中第三版本数据的第一数据位图信息,获取所述版本数据组中第四版本数据的第二数据位图信息;
对所述第一数据位图信息和所述第二数据位图信息进行数据状态对比,得到所述数据变化信息;
其中,所述第一数据位图信息和所述第二数据位图信息用于记录数据的状态信息。
3.根据权利要求2所述的数据处理方法,其特征在于,数据的状态信息的类型包括数据不存在、数据存在、数据待删除、数据存在且从上次快照后未进行过写操作。
4.根据权利要求3所述的数据处理方法,其特征在于,对所述第一数据位图信息和所述第二数据位图信息进行数据状态对比,得到所述数据变化信息,包括:
对于每个数据,解析所述第一数据位图信息中记录的数据的第一状态信息,解析出所述第二数据位图信息中记录的数据的第二状态信息;
对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果;
将所述数据变化结果记录至所述数据变化信息中。
5.根据权利要求4所述的数据处理方法,其特征在于,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据不存在,若所述第二状态信息表征数据不存在,则得到表征不对数据进行处理的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的所述数据变化结果。
6.根据权利要求4所述的数据处理方法,其特征在于,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据存在,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征不对数据进行处理的所述数据变化结果。
7.根据权利要求4所述的数据处理方法,其特征在于,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据待删除,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且从上次快照后未进行过写操作,则得到表征对数据进行更新的所述数据变化结果。
8.根据权利要求4所述的数据处理方法,其特征在于,对所述第一状态信息和所述第二状态信息进行对比,得到数据变化结果,包括:
响应于所述第一状态信息表征数据存在且从上次快照后未进行过写操作,若所述第二状态信息表征数据不存在,则得到表征对数据进行删除的所述数据变化结果;
若所述第二状态信息表征数据存在,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据待删除,则得到表征对数据进行更新的所述数据变化结果;
若所述第二状态信息表征数据存在且未进行过写操作,则得到表征不对数据进行处理的所述数据变化结果。
9.根据权利要求4所述的数据处理方法,其特征在于,解析数据位图信息中记录的数据的状态信息,包括:
读取数据位图信息中记录的数据的比特位;
对所述比特位进行解析,得到数据的状态信息。
10.根据权利要求9所述的数据处理方法,其特征在于,对所述比特位进行解析,得到数据的状态信息,包括:
若所述比特位为00,则确定数据的状态信息表征数据不存在;
若所述比特位为01,则确定数据的状态信息表征数据存在;
若所述比特位为10,则确定数据的状态信息表征数据待删除;
若所述比特位为11,则确定数据的状态信息表征数据存在且从上次快照后未进行过写操作。
11.根据权利要求2所述的数据处理方法,其特征在于,获取所述版本数据组中第三版本数据的第一数据位图信息,包括:
对所述版本数据组中的第三版本数据进行快照,得到所述第一数据位图信息;
获取所述版本数据组中第四版本数据的第二数据位图信息,包括:
对所述版本数据组中的第四版本数据进行快照,得到所述第二数据位图信息。
12.根据权利要求1所述的数据处理方法,其特征在于,对所有所述数据变化信息进行整合,得到所述第一版本数据和所述第二版本数据间的数据差异信息,包括:
对所有所述数据变化信息取并集,得到所述第一版本数据和所述第二版本数据间的数据差异信息。
13.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至12任一项所述数据处理方法的步骤。
14.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至12任一项所述数据处理方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至12任一项所述数据处理方法的步骤。
CN202410606452.8A 2024-05-16 2024-05-16 一种数据处理方法、计算机程序产品、设备及计算机介质 Active CN118170589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410606452.8A CN118170589B (zh) 2024-05-16 2024-05-16 一种数据处理方法、计算机程序产品、设备及计算机介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410606452.8A CN118170589B (zh) 2024-05-16 2024-05-16 一种数据处理方法、计算机程序产品、设备及计算机介质

Publications (2)

Publication Number Publication Date
CN118170589A true CN118170589A (zh) 2024-06-11
CN118170589B CN118170589B (zh) 2024-07-23

Family

ID=91360822

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410606452.8A Active CN118170589B (zh) 2024-05-16 2024-05-16 一种数据处理方法、计算机程序产品、设备及计算机介质

Country Status (1)

Country Link
CN (1) CN118170589B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844095A (zh) * 2016-12-27 2017-06-13 上海爱数信息技术股份有限公司 文件备份方法、系统及具有该系统的客户端
CN110188068A (zh) * 2019-05-16 2019-08-30 上海爱数信息技术股份有限公司 一种保证文件系统数据一致性的卷级备份方法及装置
CN110908996A (zh) * 2018-09-18 2020-03-24 北京京东尚科信息技术有限公司 一种数据处理的方法和装置
CN114077517A (zh) * 2020-08-13 2022-02-22 华为技术有限公司 数据处理的方法、设备及系统
CN115292094A (zh) * 2022-08-10 2022-11-04 广州鼎甲计算机科技有限公司 数据恢复处理方法、装置、设备、存储介质和程序产品
CN115328695A (zh) * 2022-07-14 2022-11-11 中电云数智科技有限公司 卷快照差异快速计算方法、差异状态机及计算机可读存储介质
CN115328889A (zh) * 2022-08-25 2022-11-11 杭州萤石软件有限公司 一种数据库升级方法和装置、系统
CN115562905A (zh) * 2022-07-15 2023-01-03 浪潮电子信息产业股份有限公司 一种备份方法、系统、装置及计算机可读存储介质
CN117421160A (zh) * 2023-11-01 2024-01-19 广州鼎甲计算机科技有限公司 数据备份方法、装置、计算机设备和存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844095A (zh) * 2016-12-27 2017-06-13 上海爱数信息技术股份有限公司 文件备份方法、系统及具有该系统的客户端
CN110908996A (zh) * 2018-09-18 2020-03-24 北京京东尚科信息技术有限公司 一种数据处理的方法和装置
CN110188068A (zh) * 2019-05-16 2019-08-30 上海爱数信息技术股份有限公司 一种保证文件系统数据一致性的卷级备份方法及装置
CN114077517A (zh) * 2020-08-13 2022-02-22 华为技术有限公司 数据处理的方法、设备及系统
CN115328695A (zh) * 2022-07-14 2022-11-11 中电云数智科技有限公司 卷快照差异快速计算方法、差异状态机及计算机可读存储介质
CN115562905A (zh) * 2022-07-15 2023-01-03 浪潮电子信息产业股份有限公司 一种备份方法、系统、装置及计算机可读存储介质
CN115292094A (zh) * 2022-08-10 2022-11-04 广州鼎甲计算机科技有限公司 数据恢复处理方法、装置、设备、存储介质和程序产品
CN115328889A (zh) * 2022-08-25 2022-11-11 杭州萤石软件有限公司 一种数据库升级方法和装置、系统
CN117421160A (zh) * 2023-11-01 2024-01-19 广州鼎甲计算机科技有限公司 数据备份方法、装置、计算机设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
W KIM 等: "Design of data backup on distributed memory system based on key-value store using hot/cold data management", PROCEEDINGS OF THE 2014 CONFERENCE ON RESEARCH IN ADAPTIVE AND CONVERGENT SYSTEMS, 31 December 2014 (2014-12-31) *
赵帮;何倩;王勇;姚琳琳;: "基于LZMA和多版本的网页防篡改备份恢复机制", 计算机应用, no. 07, 1 July 2012 (2012-07-01) *

Also Published As

Publication number Publication date
CN118170589B (zh) 2024-07-23

Similar Documents

Publication Publication Date Title
US10705919B2 (en) Data backup using metadata mapping
JP4741371B2 (ja) システム、サーバ装置及びスナップショットの形式変換方法
CN109542682B (zh) 一种数据备份方法、装置、设备和存储介质
CN110543386B (zh) 一种数据存储方法、装置、设备和存储介质
EP3862883B1 (en) Data backup method and apparatus, and system
US10108501B2 (en) Terminal backup and recovery method
CN102272751B (zh) 在数据库环境通过背景同步的数据完整性
CN114924914B (zh) 磁盘分区表信息备份、恢复方法及系统
CN115328704A (zh) 文件备份方法、文件恢复方法、装置、设备和存储介质
CN113448946A (zh) 数据迁移方法及装置、电子设备
CN112882859A (zh) 一种虚拟机合成备份方法及系统
CN118170589B (zh) 一种数据处理方法、计算机程序产品、设备及计算机介质
CN102346696B (zh) 一种文件恢复方法及装置
CN115509808B (zh) 数据备份方法、装置、计算机设备和存储介质
CN111753141B (zh) 一种数据管理方法及相关设备
CN114328007B (zh) 一种容器备份还原方法、装置及其介质
CN110750496A (zh) 一种文件拷贝方法、系统、设备及计算机可读存储介质
CN113625952B (zh) 一种对象存储方法、装置、设备及存储介质
CN112181248B (zh) 一种历史列表的操作方法和装置
CN114116723A (zh) 快照处理方法、装置及电子设备
AU2020250158B2 (en) Reducing number of queries on a relational database
CN109241011B (zh) 一种虚拟机文件处理方法及装置
CN113360095A (zh) 硬盘数据管理方法、装置、设备及介质
JP2006221394A (ja) データアクセス方法
CN109660611B (zh) 一种云备份的数据存储方法及存储系统的数据云备份方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant