CN115509824B - 数据备份方法、装置、设备及存储介质 - Google Patents
数据备份方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115509824B CN115509824B CN202211470671.5A CN202211470671A CN115509824B CN 115509824 B CN115509824 B CN 115509824B CN 202211470671 A CN202211470671 A CN 202211470671A CN 115509824 B CN115509824 B CN 115509824B
- Authority
- CN
- China
- Prior art keywords
- disk
- data
- virtual
- information
- determining
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据备份方法、装置、设备及存储介质。该方法包括:在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;根据磁盘信息和分区信息确定成员盘,并根据成员盘确定虚拟磁盘与成员盘的数据映射关系;获取待备份数据在虚拟磁盘上的虚拟位置;根据虚拟位置和数据映射关系确定待备份数据在成员盘上的目标位置;根据目标位置对待备份数据进行备份。由于本发明是根据待备份数据在虚拟磁盘上的虚拟位置和数据映射关系确定待备份数据在成员盘上的目标位置;根据目标位置对待备份数据进行备份。相对于现有的对虚拟磁盘上的全部数据进行备份的方式,本发明上述方式能够提高数据备份的效率,节省备份网络带宽。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据备份方法、装置、设备及存储介质。
背景技术
现有的备份还原系统在备份数据时,通常采用的备份方案是先做全量备份,做备份时会对待备份卷进行文件系统分析,获取卷中已使用数据的位置,再把这些已使用数据备份到备份服务器,后续再备份增量数据到备份服务器,上述备份方式存在以下缺陷:有些系统中的待备份卷是虚拟磁盘,该虚拟磁盘由多个物理磁盘经过复杂的规则创建出来的,比如linux 的lvm等,卷中已使用数据的位置无法转换成物理磁盘上的位置,这样就不能知道物理磁盘上的哪些区域是已使用数据,在这种情况下,通常采用的方式是进行全部数据的备份,其中包含了物理磁盘中未使用数据, 这样就造成了备份网络带宽和备份服务器存储空间的浪费,并使备份时间变长。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供了一种数据备份方法、装置、设备及存储介质,旨在解决现有技术对虚拟磁盘进行数据备份时,通过对物理磁盘进行全部数据的备份导致浪费备份网络带宽、备份效率低的技术问题。
为实现上述目的,本发明提供了一种数据备份方法,所述方法包括以下步骤:
在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;
根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;
获取待备份数据在所述虚拟磁盘上的虚拟位置;
根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;
根据所述目标位置对所述待备份数据进行备份。
可选地,所述根据所述磁盘信息和所述分区信息确定成员盘的步骤,包括:
根据所述磁盘信息和所述分区信息获取各个磁盘分区存储的元数据;
根据所述元数据确定成员盘。
可选地,所述根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系的步骤,包括:
根据所述元数据判断成员盘是否为磁盘分区;
若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息;
根据所述磁盘分区表信息对所述成员盘进行校验;
在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
可选地,所述获取待备份数据在所述虚拟磁盘上的虚拟位置的步骤,包括:
获取所述虚拟磁盘上的文件系统元数据;
根据所述文件系统元数据确定虚拟磁盘上的已分配空间位置;
将所述已分配空间位置作为所述待备份数据在所述虚拟磁盘上的虚拟位置。
可选地,所述根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置的步骤,包括:
在所述数据映射关系为条带映射时,获取数据映射信息;
根据所述数据映射信息确定成员盘数量和条带大小;
根据所述成员盘数量和所述条带大小确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
可选地,所述根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置的步骤,包括:
在所述数据映射关系为线性映射时,获取虚拟磁盘的分段信息;
根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
可选地,所述根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置的步骤,包括:
根据所述分段信息确定虚拟磁盘上各个段对应的待备份数据在所述成员盘上的位置信息;
根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置;
根据所述扇区位置确定目标位置。
此外,为实现上述目的,本发明还提供一种数据备份装置,所述装置包括:
获取模块,用于在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;
数据映射关系确定模块,用于根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;
虚拟位置获取模块,用于获取待备份数据在所述虚拟磁盘上的虚拟位置;
目标位置确定模块,用于根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;
备份模块,用于根据所述目标位置对所述待备份数据进行备份。
此外,为实现上述目的,本发明还提出一种数据备份设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据备份程序,所述数据备份程序配置为实现如上文所述的数据备份方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有数据备份程序,所述数据备份程序被处理器执行时实现如上文所述的数据备份方法的步骤。
本发明在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;获取待备份数据在所述虚拟磁盘上的虚拟位置;根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;根据所述目标位置对所述待备份数据进行备份。由于本发明是根据待备份数据在虚拟磁盘上的虚拟位置和数据映射关系确定待备份数据在成员盘上的目标位置;根据目标位置对待备份数据进行备份。相对于现有的数据备份时,对虚拟磁盘上的全部数据进行备份的方式,本发明上述方式能够提高数据备份的效率,节省备份网络带宽。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据备份设备的结构示意图;
图2为本发明数据备份方法第一实施例的流程示意图;
图3为本发明数据备份方法一实施例的虚拟磁盘到成员盘的映射关系示意图;
图4为本发明数据备份方法第二实施例的流程示意图;
图5为本发明数据备份方法第三实施例的流程示意图;
图6为本发明数据备份装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的数据备份设备结构示意图。
如图1所示,该数据备份设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对数据备份设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据备份程序。
在图1所示的数据备份设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明数据备份设备中的处理器1001、存储器1005可以设置在数据备份设备中,所述数据备份设备通过处理器1001调用存储器1005中存储的数据备份程序,并执行本发明实施例提供的数据备份方法。
基于上述数据备份设备,本发明实施例提供了一种数据备份方法,参照图2,图2为本发明数据备份方法第一实施例的流程示意图。
本实施例中,所述数据备份方法包括以下步骤:
步骤S10:在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息。
需要说明的是,本实施例的执行主体可以是一种具有数据处理、网络通信以及程序运行功能的计算服务设备,例如手机、平板电脑、个人电脑等,或者是一种能够实现上述功能的电子设备或数据备份程序。以下以所述数据备份程序为例,对本实施例及下述各实施例进行说明。
需要说明的是,所述数据备份请求可以是对虚拟磁盘上的已使用数据进行备份的命令。所述待备份系统可以是所述虚拟磁盘所处于的系统。所述磁盘信息可以是所述待备份系统上的磁盘数量、磁盘大小等信息。所述分区信息可以是所述待备份系统上的各个磁盘的分区信息。例如,待备份系统有两个磁盘A和B,磁盘A上分为分区1和分区2,磁盘B没有分区。
在具体实施中,数据备份程序在接收到基于虚拟磁盘的数据备份请求时,扫描待备份系统中的所有磁盘以及分区信息,磁盘类型可能是GPT的,也可能是MBR的,或者是其他的类型,可以根据磁盘类型去获取磁盘的分区信息。
步骤S20:根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
应理解的是,可参照图3,图3为本发明数据备份方法一实施例的虚拟磁盘到成员盘的映射关系示意图;虚拟磁盘结合物理磁盘的工作机制是由以下部分组成: 成员盘,磁盘组,虚拟盘。
成员盘:用于提供磁盘空间,数据将存储在这些空间中,是处于整个磁盘组的最底层,成员盘既可以是物理磁盘也可以是物理磁盘上的一个分区。
磁盘组: 将加入其中的所有成员盘管理起来,并且统一组成连续的虚拟磁盘空间,并且根据不同的映射类型建立虚拟盘到成员盘的映射关系。
虚拟盘: 通过磁盘组创建,磁盘组中的未分配空间可用于建立新的虚拟盘,文件系统就建立在虚拟盘上。
可参照图3,成员盘1对应虚拟盘A,假设虚拟盘B的空间为4G,可以是成员盘2对应虚拟盘的0-2G区域,成员盘3对应虚拟盘的2G-4G区域。
需要说明的是,所述数据映射关系可以包括:线性映射、条带映射、镜像映射和带校验机制的条带映射等其他数据映射关系:
线性映射: 虚拟盘按顺序依次映射到一个或多个成员盘。
条带映射: 虚拟盘按照条带大小依次映射到各个成员盘上。
镜像映射: 虚拟盘上按照1比1映射到多个成员盘上,各个成员盘和虚拟盘上的已使用区域位置相同。
带校验机制的条带映射: 虚拟盘按照条带大小依次映射到各个成员盘上,和条带映射的机制类似,但多用1个条带存储校验数据,成员盘数量必须是奇数。
在具体实施中,数据备份程序从所有成员盘初始化元数据。成员盘可能是磁盘也可能是磁盘分区,通过磁盘信息和获取的分区信息,扫描待备份系统中的所有磁盘及其分区,获取所有分区中的元数据,由于不同的解决方案,元数据存放的位置不同,所以需要读取多个位置,才能判断出是哪个解决方案类型,比如linux的lvm,元数据放在第二个扇区到4K之间的区域,比如linux 软raid,需要先从/ proc/mdstat中获取软raid的基本信息,其中包含有版本信息,不同的版本获取的位置也不同,比如0.9,1.0版本在磁盘尾部,1.1版本在磁盘开始,1.2在开始的4K偏移处,比如windows 动态盘,如果是mbr磁盘类型,元数据存放在6扇区开始的连续区域,磁盘尾部也有备份, 如果是GPT磁盘类型, 元数据存放在一个type guid为PARTITION_LDM_METADATA_GUID的gpt分区中。数据备份程序需要扫描待备份系统中的所有磁盘及其分区,获取所有分区中的元数据,根据所述元数据确定成员盘。通过所述元数据,能够重建磁盘组以及虚拟磁盘空间和所有成员盘。获取到所有分区即成员盘中的元数据后,因为每一个成员盘中的元数据都包含有该成员盘所属的磁盘组信息以及同组的其他成员盘信息和所有虚拟盘信息,以及虚拟盘和成员盘的映射类型和条带大小等信息,因此,可以根据所述成员盘上的元数据确定虚拟磁盘与所述成员盘的数据映射关系。
步骤S30:获取待备份数据在所述虚拟磁盘上的虚拟位置。
需要说明的是,所述待备份数据可以是所述虚拟磁盘上的已使用数据。所述获取待备份数据在所述虚拟磁盘上的虚拟位置可以是将所述虚拟磁盘上的已使用数据的存储位置作为所述待备份数据在所述虚拟磁盘上的虚拟位置。
进一步的,为了提高数据备份的效率,所述步骤S30可包括:获取所述虚拟磁盘上的文件系统元数据;根据所述文件系统元数据确定虚拟磁盘上的已分配空间位置;将所述已分配空间位置作为所述待备份数据在所述虚拟磁盘上的虚拟位置。
应理解的是,不同的系统有不同的文件系统,比如windows系统有fat和ntfs文件系统,比如linux有xfs、ext2、ext3、ext4、btrfs等文件系统,可以通过系统IoControl码、文件系统库,或者直接解析文件系统元数据等方法获取已分配空间和未分配空间等信息,进而获得虚拟磁盘上的已使用数据区域,即待备份数据在所述虚拟磁盘上的虚拟位置。
步骤S40:根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置。
需要说明的是,所述根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置可以是根据所述数据映射关系对应的映射方案确定所述虚拟位置对应的成员盘上的目标位置。具体可以是在所述数据映射关系为条带映射时,获取数据映射信息;根据所述数据映射信息确定成员盘数量和条带大小;根据所述成员盘数量和所述条带大小确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
应理解的是,条带映射:可以是虚拟磁盘按照条带大小依次映射到各个成员盘上,并且条带大小必须是2的n次方倍,比如16K,64K,512K等。比如条带大小为64K,虚拟磁盘由2个成员盘组成,那么映射方案可以是虚拟磁盘的第1个64K映射到成员盘1的第1个64K,虚拟磁盘的第2个64K映射到成员盘2的第1个64K,虚拟磁盘的第3个64K映射到成员盘1的第2个64K,虚拟磁盘的第4个64K映射到成员盘2的第2个64K,依此类推,按照这个规律计算,凡是奇数条带属于成员盘1,偶数条带属于成员盘2,如果从虚拟磁盘文件系统中获取到64K~128K区域被标识为已使用,由于这个区域是属于第二个条带,因此将被转换到基于成员盘2的0~64K。
需要说明的是,所述成员盘数量可以是所述虚拟磁盘对应的成员盘的个数。所述根据所述成员盘数量和所述条带大小确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置可以是参照上述实施例中的映射方案进行反推,本实施例在此不再赘述。
步骤S50:根据所述目标位置对所述待备份数据进行备份。
需要说明的是,所述根据所述目标位置对所述待备份数据进行备份可以是对所述目标位置处存储的数据进行备份即完成了对虚拟磁盘上已使用数据的备份。
本实施例在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;获取待备份数据在所述虚拟磁盘上的虚拟位置;根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;根据所述目标位置对所述待备份数据进行备份。由于本实施例是根据待备份数据在虚拟磁盘上的虚拟位置和数据映射关系确定待备份数据在成员盘上的目标位置;根据目标位置对待备份数据进行备份。相对于现有的数据备份时,对虚拟磁盘上的全部数据进行备份的方式,本实施例上述方式能够提高数据备份的效率,节省备份网络带宽。
参考图4,图4为本发明数据备份方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S40包括:
步骤S401:在所述数据映射关系为线性映射时,获取虚拟磁盘的分段信息。
需要说明的是,根据所述分段信息可以确定所述虚拟磁盘中各个扇区对应的成员盘,例如,虚拟磁盘大小为10000扇区,分成2个段,分别被映射到2个成员盘,其中第一段,0~2999扇区被映射到成员盘disk1,第二段,3000~9999扇区被映射到成员盘disk2的分区1,
步骤S402:根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
需要说明的是,所述根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置可以是根据所述分段信息确定虚拟磁盘上各个段对应的待备份数据在所述成员盘上的位置信息;根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置;根据所述扇区位置确定目标位置。
需要说明的是,所述位置信息可以是虚拟磁盘中的各个段的待备份数据对应的成员盘中的位置。所述成员盘的分区信息可以是在成员盘为物理磁盘中的一个分区时,成员盘对应的物理磁盘的起始位置信息。例如,物理磁盘1中扇区2000-3000的区域为成员盘。所述根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置可以是根据待备份数据在所述成员盘上的位置信息和所述成员盘的分区起始扇区确定待备份数据在所述成员盘上的扇区位置。具体可参照以下实例:
应理解的是,线性映射:可以是虚拟磁盘按顺序依次映射到一个或多个成员盘。比如某个虚拟磁盘大小为10000扇区,分成2个段,分别被映射到2个成员盘,其中0~2999段被映射到成员盘disk1,3000~9999段被映射到成员盘disk2的分区1,从虚拟磁盘文件系统中获取到20~70扇区,5000~5010扇区两个区域被标识为已使用,由于20~70扇区属于第一段0~2999,因此被映射到成员盘disk1中,又由于是直接映射到disk1,而不是分区,所以不用做调整,直接转换成到基于disk1的20~70区域,另一个已使用区域5000~5010扇区属于第二段3000~9999,减去第二段起始位置3000后,转换成了基于disk2的分区1中的2000~2010区域,由于是在分区中,还需要加上分区起始扇区(比如800),最终转换为基于disk2的2800~2810区域。
应理解的是,镜像映射可以是虚拟磁盘上按照1比1映射到多个成员盘上,各个成员盘和虚拟磁盘大小相同,数据相同,所以已使用区域位置也相同。比如某个虚拟磁盘大小为10000扇区,分别被映射到2个成员盘disk1和disk2,大小都为10000扇区,从虚拟磁盘文件系统中获取到100~200扇区被标识为已使用,转换到基于disk1和基于disk2的100~200扇区为已使用数据。
应理解的是,带校验机制的条带映射可以是虚拟磁盘按照条带大小依次映射到各个成员盘上,和条带映射的机制类似,但多用1个条带存储校验数据,所以成员盘数量必须是奇数。比如3个成员盘组成一个虚拟磁盘,其中两个成员盘存储数据,一个成员盘存储校验数据,比如条带大小为512K,那么映射关系是虚拟盘的第1个512K映射到成员盘disk1的第1个512K,虚拟盘的2个512K映射到成员盘disk2的第1个512K,这两个条带块的校验信息存储在成员盘disk3的第1个512K,虚拟磁盘的第3个512K映射到成员盘1的第2个512K,虚拟磁盘的第4个512K映射到成员盘2的第2个512K,这两个条带块的校验信息存储在成员盘3的第2个512K,依此类推。在具体转换映射关系时,如果第1个条带或者第2个条带为已使用数据,那么这一组的3个条带包括校验信息条带都应该被标识为已使用数据。例如:如果从虚拟盘文件系统中获取到512K~1024K区域被标识为已使用,由于这个区域是属于第二个条带,因此将被转换到基于disk2的0~512K,并且该组的3个条带都将被设置为已使用数据,即disk1的0~512K,disk2的0~512K,disk3的0~512K。可参照上述方式根据待备份数据在所述虚拟磁盘上的虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置,进而根据所述目标位置对所述待备份数据进行备份。
本实施例在所述数据映射关系为线性映射时,获取虚拟磁盘的分段信息;根据所述分段信息确定虚拟磁盘上各个段对应的待备份数据在所述成员盘上的位置信息;根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置;根据所述扇区位置确定目标位置。本实施例能够根据获取虚拟磁盘已使用区域,转换该已使用区域到基于成员盘的已使用区域的方法,识别出成员盘的已使用数据区域,实现了只备份成员盘的有效数据,相比传统解决方案相比,本实施例减少了备份数据量,节省了备份网络带宽和备份服务器存储空间,减小了备份时长。
参考图5,图5为本发明数据备份方法第三实施例的流程示意图。
基于上述各实施例,在本实施例中,所述根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系的步骤,包括:
步骤S201:根据所述元数据判断成员盘是否为磁盘分区。
需要说明的是,成员盘可以是一整个物理磁盘,也可以是一个物理磁盘中的一个分区,每一个成员盘中的元数据都包含有该成员盘所属的磁盘组信息以及同组的其他成员盘信息和所有虚拟盘信息,可根据所述元数据判断成员盘是否为磁盘分区。
步骤S202:若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息。
需要说明的是,所述磁盘分区表信息可以是所述成员盘对应的物理磁盘的分区信息,例如,物理磁盘的分区1为成员盘1,物理磁盘的分区2为成员盘2,物理磁盘的分区3为成员盘3,所述磁盘分区表信息可包括各个分区的标识、起始位置以及分区大小等信息。
步骤S203:根据所述磁盘分区表信息对所述成员盘进行校验。
需要说明的是,所述根据所述磁盘分区表信息对所述成员盘进行校验可以是根据所述磁盘分区表信息中各个分区的标识、起始位置以及分区大小对成员盘的分区标识、起始位置以及分区大小进行检验。例如,磁盘分区表信息中分区1的标识为disk1,起始位置为2000-3000。在成员盘中的元数据:标识为disk1,起始位置为2000-3000时,可判定校验通过,若成员盘中的起始位置为1000-3000,则判定校验失败。此时,初始化磁盘组以及虚拟磁盘空间和所有成员盘的过程失败,判定数据被人恶意篡改,终止备份流程。
步骤S204:在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
需要说明的是,所述根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系可以是根据所述成员盘中的元数据确定所述虚拟磁盘与所述成员盘的数据映射关系。
本实施例根据所述元数据判断成员盘是否为磁盘分区;若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息;根据所述磁盘分区表信息对所述成员盘进行校验;在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。本实施例通过成员盘所处的磁盘的磁盘分区表信息对所述成员盘进行校验;在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。避免由于数据被篡改导致的备份错误,提高了数据的安全性和备份效率。
参照图6,图6为本发明数据备份装置第一实施例的结构框图。
如图6所示,本发明实施例提出的数据备份装置包括:
获取模块10,用于在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;
数据映射关系确定模块20,用于根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;
虚拟位置获取模块30,用于获取待备份数据在所述虚拟磁盘上的虚拟位置;
目标位置确定模块40,用于根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;
备份模块50,用于根据所述目标位置对所述待备份数据进行备份。
本实施例在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;获取待备份数据在所述虚拟磁盘上的虚拟位置;根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;根据所述目标位置对所述待备份数据进行备份。由于本实施例是根据待备份数据在虚拟磁盘上的虚拟位置和数据映射关系确定待备份数据在成员盘上的目标位置;根据目标位置对待备份数据进行备份。相对于现有的数据备份时,对虚拟磁盘上的全部数据进行备份的方式,本实施例上述方式能够提高数据备份的效率,节省备份网络带宽。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的数据备份方法,此处不再赘述。
基于本发明上述数据备份装置第一实施例,提出本发明数据备份装置的第二实施例。
在本实施例中,所述数据映射关系确定模块20,还用于根据所述磁盘信息和所述分区信息获取各个磁盘分区存储的元数据;根据所述元数据确定成员盘。
进一步的,所述数据映射关系确定模块20,还用于根据所述元数据判断成员盘是否为磁盘分区;若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息;根据所述磁盘分区表信息对所述成员盘进行校验;在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
进一步的,所述虚拟位置获取模块30,还用于获取所述虚拟磁盘上的文件系统元数据;根据所述文件系统元数据确定虚拟磁盘上的已分配空间位置;将所述已分配空间位置作为所述待备份数据在所述虚拟磁盘上的虚拟位置。
进一步的,所述目标位置确定模块40,还用于在所述数据映射关系为条带映射时,获取数据映射信息;根据所述数据映射信息确定成员盘数量和条带大小;根据所述成员盘数量和所述条带大小确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
进一步的,所述目标位置确定模块40,还用于在所述数据映射关系为线性映射时,获取虚拟磁盘的分段信息;根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
进一步的,所述目标位置确定模块40,还用于根据所述分段信息确定虚拟磁盘上各个段对应的待备份数据在所述成员盘上的位置信息;根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置;根据所述扇区位置确定目标位置。
本发明数据备份装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有数据备份程序,所述数据备份程序被处理器执行时实现如上文所述的数据备份方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种数据备份方法,其特征在于,所述数据备份方法包括以下步骤:
在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;
根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;
获取待备份数据在所述虚拟磁盘上的虚拟位置;
根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;
根据所述目标位置对所述待备份数据进行备份;
所述根据所述磁盘信息和所述分区信息确定成员盘的步骤,包括:
根据所述磁盘信息和所述分区信息获取各个磁盘分区存储的元数据;根据所述元数据确定成员盘;
所述根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系的步骤,包括:
根据所述元数据判断成员盘是否为磁盘分区;
若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息;
根据所述磁盘分区表信息对所述成员盘进行校验;
在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
2.如权利要求1所述的数据备份方法,其特征在于,所述获取待备份数据在所述虚拟磁盘上的虚拟位置的步骤,包括:
获取所述虚拟磁盘上的文件系统元数据;
根据所述文件系统元数据确定虚拟磁盘上的已分配空间位置;
将所述已分配空间位置作为所述待备份数据在所述虚拟磁盘上的虚拟位置。
3.如权利要求1-2任一项所述的数据备份方法,其特征在于,所述根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置的步骤,包括:
在所述数据映射关系为条带映射时,获取数据映射信息;
根据所述数据映射信息确定成员盘数量和条带大小;
根据所述成员盘数量和所述条带大小确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
4.如权利要求1-2任一项所述的数据备份方法,其特征在于,所述根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置的步骤,包括:
在所述数据映射关系为线性映射时,获取虚拟磁盘的分段信息;
根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置。
5.如权利要求4所述的数据备份方法,其特征在于,所述根据所述分段信息确定所述虚拟位置上的所述待备份数据在所述成员盘上的目标位置的步骤,包括:
根据所述分段信息确定虚拟磁盘上各个段对应的待备份数据在所述成员盘上的位置信息;
根据所述位置信息和所述成员盘的分区信息确定待备份数据在所述成员盘上的扇区位置;
根据所述扇区位置确定目标位置。
6.一种数据备份装置,其特征在于,所述数据备份装置包括:
获取模块,用于在接收到基于虚拟磁盘的数据备份请求时,获取待备份系统的磁盘信息和分区信息;
数据映射关系确定模块,用于根据所述磁盘信息和所述分区信息确定成员盘,并根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系;
虚拟位置获取模块,用于获取待备份数据在所述虚拟磁盘上的虚拟位置;
目标位置确定模块,用于根据所述虚拟位置和所述数据映射关系确定所述待备份数据在所述成员盘上的目标位置;
备份模块,用于根据所述目标位置对所述待备份数据进行备份;
所述数据映射关系确定模块,还用于根据所述磁盘信息和所述分区信息获取各个磁盘分区存储的元数据;根据所述元数据确定成员盘;
所述数据映射关系确定模块,还用于根据所述元数据判断成员盘是否为磁盘分区;若所述成员盘为磁盘分区,则获取所述成员盘所处的磁盘的磁盘分区表信息;根据所述磁盘分区表信息对所述成员盘进行校验;在校验通过后,根据所述成员盘确定所述虚拟磁盘与所述成员盘的数据映射关系。
7.一种数据备份设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据备份程序,所述数据备份程序配置为实现如权利要求1至5中任一项所述的数据备份方法的步骤。
8.一种存储介质,其特征在于,所述存储介质上存储有数据备份程序,所述数据备份程序被处理器执行时实现如权利要求1至5任一项所述的数据备份方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211470671.5A CN115509824B (zh) | 2022-11-23 | 2022-11-23 | 数据备份方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211470671.5A CN115509824B (zh) | 2022-11-23 | 2022-11-23 | 数据备份方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115509824A CN115509824A (zh) | 2022-12-23 |
CN115509824B true CN115509824B (zh) | 2023-03-14 |
Family
ID=84514023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211470671.5A Active CN115509824B (zh) | 2022-11-23 | 2022-11-23 | 数据备份方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115509824B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112304B (zh) * | 2023-08-31 | 2024-02-20 | 成都傲梅科技有限公司 | 一种磁盘克隆方法与系统 |
CN117349086B (zh) * | 2023-12-04 | 2024-02-23 | 四川精容数安科技有限公司 | 一种Windows整机永久增量备份的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002229741A (ja) * | 2001-01-30 | 2002-08-16 | Fujitsu Ltd | 仮想ディスク制御システムおよび仮想ディスク制御プログラム |
CN101635638A (zh) * | 2008-07-25 | 2010-01-27 | 中兴通讯股份有限公司 | 一种容灾系统及其容灾方法 |
US8738871B1 (en) * | 2007-06-29 | 2014-05-27 | Symantec Corporation | Method and apparatus for mapping virtual drives |
CN104020961A (zh) * | 2014-05-15 | 2014-09-03 | 深圳市深信服电子科技有限公司 | 分布式数据存储方法、装置及系统 |
CN111625401A (zh) * | 2020-05-29 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 基于集群文件系统的数据备份方法、装置及可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8438349B2 (en) * | 2009-08-21 | 2013-05-07 | Symantec Corporation | Proxy backup of virtual disk image files on NAS devices |
CN110941515B (zh) * | 2019-12-04 | 2022-05-24 | 深圳市科力锐科技有限公司 | 主机备份重建方法、装置、服务器及存储介质 |
-
2022
- 2022-11-23 CN CN202211470671.5A patent/CN115509824B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002229741A (ja) * | 2001-01-30 | 2002-08-16 | Fujitsu Ltd | 仮想ディスク制御システムおよび仮想ディスク制御プログラム |
US8738871B1 (en) * | 2007-06-29 | 2014-05-27 | Symantec Corporation | Method and apparatus for mapping virtual drives |
CN101635638A (zh) * | 2008-07-25 | 2010-01-27 | 中兴通讯股份有限公司 | 一种容灾系统及其容灾方法 |
CN104020961A (zh) * | 2014-05-15 | 2014-09-03 | 深圳市深信服电子科技有限公司 | 分布式数据存储方法、装置及系统 |
CN111625401A (zh) * | 2020-05-29 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 基于集群文件系统的数据备份方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115509824A (zh) | 2022-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115509824B (zh) | 数据备份方法、装置、设备及存储介质 | |
CN110941515B (zh) | 主机备份重建方法、装置、服务器及存储介质 | |
CN1707432A (zh) | 确定环境变量在非易失性存储器中的位置 | |
US10678641B2 (en) | Techniques for optimizing metadata resiliency and performance | |
US11210022B2 (en) | Method, electronic device and computer readable storage medium of storage management | |
US6574705B1 (en) | Data processing system and method including a logical volume manager for storing logical volume data | |
US20230289068A1 (en) | Method and system for calculating strip stride by means of disk, terminal and storage medium | |
CN108475201B (zh) | 一种虚拟机启动过程中的数据获取方法和云计算系统 | |
CN109196458B (zh) | 存储系统可用容量计算方法及装置 | |
US9720818B2 (en) | Scalable, distributed, fault-tolerant test framework | |
CN109213429B (zh) | 存储管理方法和设备 | |
CN112000574A (zh) | 一种压力测试方法、装置、设备和存储介质 | |
US10089015B1 (en) | Per-drive memory resident zeroing maps for drive zeroing in a data storage system | |
US11003559B2 (en) | Underperforming drive handling in redundant arrays | |
CN112133357B (zh) | 一种eMMC的测试方法及装置 | |
US11287997B2 (en) | Method, electronic device and computer program product for managing disk array | |
US11163678B2 (en) | Managing storage space for metadata consistency checking | |
CN111540400B (zh) | 一种写放大系数测试方法、装置及电子设备和存储介质 | |
CN112817540A (zh) | 一种基于磁盘阵列扩展的数据块重分布方法及装置 | |
CN114020541B (zh) | 备份数据展示方法、装置、设备及存储介质 | |
CN113194161B (zh) | 一种服务器系统mmioh基地址的设置方法、装置 | |
Zoubek et al. | Generic RAID reassembly using block-level entropy | |
CN111399774B (zh) | 分布式存储系统下基于快照的数据处理方法和装置 | |
CN115017098A (zh) | 一种文件系统的管理方法及装置 | |
US20100251013A1 (en) | Method for processing bad block in redundant array of independent disks |
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 |