CN119311471A - 一种数据备份方法及装置 - Google Patents
一种数据备份方法及装置 Download PDFInfo
- Publication number
- CN119311471A CN119311471A CN202411340381.8A CN202411340381A CN119311471A CN 119311471 A CN119311471 A CN 119311471A CN 202411340381 A CN202411340381 A CN 202411340381A CN 119311471 A CN119311471 A CN 119311471A
- Authority
- CN
- China
- Prior art keywords
- data
- backup
- logical volume
- target server
- kernel
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据备份方法及装置,属于计算机存储技术领域。包括:安装内核态驱动程序,启动用户态备份应用程序,获取目标服务器的逻辑卷信息,并将其发送至内核态驱动程序,在目标服务器内核中注册与逻辑卷信息一致的块设备,在目标服务器内核中分配块设备请求队列,并将目标服务器中的逻辑卷请求队列绑定至块设备请求队列,接收逻辑卷bitmap信息,根据逻辑卷bitmap信息确定变化数据,并将变化数据进行转存,通过块设备接收备份的数据读取请求;判断数据读取请求是否涉及变化数据,若是,则将转存的数据返回至用户态备份应用程序,否则,将磁盘数据返回至用户态备份应用程序,将得到的返回数据存储至存储介质。
Description
技术领域
本发明属于计算机存储技术领域,尤其涉及一种数据备份方法及装置。
背景技术
数据备份是容灾的基础,为了防止系统出现故障等原因导致数据的丢失,将主机上的数据进行备份是必不可少的操作。常用的一种数据备份方法就是利用快照对系统进行备份,当需要恢复时,使用备份好的快照进行系统恢复。
进行数据备份可以确保数据的安全性、可用性和连续性,防止因意外事件导致的数据丢失或损坏,它是信息管理中不可或缺的一部分,尤其在企业和个人用户处理重要数据时,数据备份使得企业能够在灾难或突发事件后快速恢复数据和业务流程,保障业务的连续性和运营效率,数据备份为企业和个人提供一种长期的数据保护方案,确保数据的可用性、完整性和持续性。
目前,通常使用快照进行数据备份,但是在备份过程中需要额外的存储空间对快照进行存储保存,当需要备份的服务器数据量很大时,创建快照的时间会变长,快照所占用的空间也会变大,在快照创建过程中,如果有数据发生变化时,快照无法将这部分数据进行存储,这可能导致在进行数据恢复时产生数据的丢失,对数据备份造成了极大的威胁。
发明内容
鉴于以上现有技术的不足,发明的目的在于提供一种数据备份方法及装置,可以解决快照占用存储空间大,有效应对数据备份过程中变化数据的备份,缩短备份过程中生成数据时间长,及时处理生产数据可能丢失的问题,提升了数据备份过程中的安全性。
本发明的第一方面,提出了一种数据备份方法,方法包括:
S1,在需要备份的目标服务器上安装内核态驱动程序;
S2,启动目标服务器上的用户态备份应用程序,获取目标服务器的逻辑卷信息,并将逻辑卷信息发送至内核态驱动程序;
S3,通过内核态驱动程序在目标服务器内核中注册与逻辑卷信息一致的块设备;
S4,在目标服务器内核中分配块设备请求队列,并将目标服务器中的逻辑卷请求队列绑定至块设备请求队列;
S5,接收并记录用户态备份应用程序获取到的逻辑卷bitmap信息;
S6,根据逻辑卷bitmap信息确定变化数据,并将变化数据进行转存;
S7,通过块设备接收用户态备份应用程序的关于备份的数据读取请求;
S8,判断数据读取请求是否涉及变化数据,若是,则将转存的数据返回至用户态备份应用程序,否则,将磁盘数据返回至用户态备份应用程序;
S9,将得到的返回数据存储至存储介质。
进一步地,内核态驱动程序具体为snapshotdriver.ko。
进一步地,逻辑卷信息包括扇区范围和容量。
进一步地,获取目标服务器的逻辑卷信息,具体为:
通过文件系统层获取目标服务器的逻辑卷信息。
进一步地,S6具体包括:
S601,记录备份开始时刻的逻辑卷bitmap信息;
S602,获取实时逻辑卷bitmap信息;
S603,比对实时逻辑卷bitmap信息和备份开始时刻的逻辑卷bitmap信息,输出变化数据;
S604,对变化数据进行转存。
进一步地,在S9之后还包括:
在目标服务器内核中删除块设备。
本发明的第二方面,提出了一种数据备份装置,用于实现第一方面任一项的数据备份装置,装置包括:
安装模块,用于在需要备份的目标服务器上安装内核态驱动程序;
获取模块,用于启动目标服务器上的用户态备份应用程序,获取目标服务器的逻辑卷信息,并将逻辑卷信息发送至内核态驱动程序;
注册模块,用于通过内核态驱动程序在目标服务器内核中注册与逻辑卷信息一致的块设备;
分配模块,用于在目标服务器内核中分配块设备请求队列,并将目标服务器中的逻辑卷请求队列绑定至块设备请求队列;
第一接收模块,用于接收并记录用户态备份应用程序获取到的逻辑卷bitmap信息;
转存模块,用于根据逻辑卷bitmap信息确定变化数据,并将变化数据进行转存;
第二接收模块,用于通过块设备接收用户态备份应用程序的关于备份的数据读取请求;
判断模块,用于判断数据读取请求是否涉及变化数据,若是,则将转存的数据返回至用户态备份应用程序,否则,将磁盘数据返回至用户态备份应用程序;
存储模块,用于将得到的返回数据存储至存储介质。
进一步地,内核态驱动程序具体为snapshotdriver.ko。
进一步地,逻辑卷信息包括扇区范围和容量。
进一步地,获取目标服务器的逻辑卷信息,具体为:
通过文件系统层获取目标服务器的逻辑卷信息。
进一步地,转存模块具体用于:
记录备份开始时刻的逻辑卷bitmap信息;
获取实时逻辑卷bitmap信息;
比对实时逻辑卷bitmap信息和备份开始时刻的逻辑卷bitmap信息,输出变化数据;
对变化数据进行转存。
进一步地,还包括:
删除模块,用于在目标服务器内核中删除块设备。
本发明的第三方面,提出了一种数据备份系统,包括:存储器和一个或多个处理器。
存储器中存储有一个或多个应用程序,一个或多个应用程序适于由一个或多个处理器执行以实现第一方面的数据备份装置。
本发明的第四方面,提出了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序能够被处理器加载和执行以第一方面的数据备份装置。
本发明有益效果如下:
在本发明实施例中,在使用备份软件对服务器进行备份时,不再对服务器进行快照创建,引入一个内核态驱动程序来完成快照的工作,由驱动程序获取备份启动时刻的服务器数据,同时,驱动程序可以根据逻辑卷bitmap信息实时监测在备份过程中目标服务器数据的变化情况,当备份结束后,内核态驱动程序仍然在内核中运行,下次备份程序运行时,可以选择只对服务器做增量备份,这时驱动程序就会将这部分变化数据返回给备份软件进行存储,在备份过程中,利用驱动程序,在内核注册新块设备,将原有逻辑卷的请求队列绑定到新的块设备上,逻辑卷上的所有I/O请求将由块设备接管,当逻辑卷上发生数据的I/O请求时,请求先到达块设备,块设备会依据备份软件业务逻辑从转存数据或者磁盘数据中返回至备份软件,完成数据备份,从而解决快照占用空间大,创建快照时间长的问题,在降低占用空间的同时提升备份速度,而且可以有效监测备份过程中的变化数据,实现完整的数据备份,避免数据丢失,提升数据安全。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据备份方法的流程示意图;
图2是本发明实施例提供的一种数据备份装置的结构示意图;
图3是本发明实施例提供的一种数据备份系统的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。应该理解,这些描述只是示例性的,并非用于限定本发明的范围。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明公开的概念。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的方法和系统的例子。
本发明提出了一种数据备份方法及装置,为解决现有的数据备份往往依赖快照技术,从而导致快照占用存储空间大,生成时间长,生产数据可能丢失的问题,无法适应数据备份过程中数据变化等问题。
方法实施例
参照图1,示出了本发明实施例提供的一种数据备份方法的流程示意图。
本发明实施例提供的一种数据备份方法,方法包括:
具体地,该方法包括步骤S1至步骤S9:
S1,在需要备份的目标服务器上安装内核态驱动程序。
其中,目标服务器指的是需要进行数据备份的计算机或服务器,它是数据存储和处理的中心,备份操作旨在保护其上的重要数据。
内核态驱动程序是在操作系统内核中运行的程序,负责与硬件进行直接交互,内核态驱动程序可以执行较低级别的操作,比如直接访问硬件资源,从而提高系统性能和响应速度。
需要说明的是,在需要备份的目标服务器上安装内核态驱动程序,提供对底层硬件的直接访问,提高备份过程的效率和性能,允许实时监控和管理逻辑卷,从而增强系统的整体可靠性。
在一种可能的实施方式中,内核态驱动程序具体为snapshotdriver.ko。
其中,snapshotdriver.ko是一个用于实现快照功能的内核态驱动程序,允许操作系统在特定时间点捕获数据状态,以便进行高效的数据备份和恢复。
需要说明的是,通过内核态驱动,简化了用户态应用程序与硬件的交互,提高了系统管理的便利性。
S2,启动目标服务器上的用户态备份应用程序,获取目标服务器的逻辑卷信息,并将逻辑卷信息发送至内核态驱动程序。
其中,用户态备份应用程序是运行在用户态的程序,负责发起和管理备份操作,与内核态相比,用户态具有更高的安全性,但也受到更多的限制,用户态备份应用程序与操作系统的核心部分分离,主要负责数据的收集和备份请求的处理,逻辑卷信息是指关于逻辑卷的元数据,包括扇区范围和容量,逻辑卷是虚拟化的存储单位,允许灵活的存储管理,逻辑卷信息有助于备份程序识别和定位需要备份的数据。
需要说明的是,启动用户态备份应用程序,获取逻辑卷信息能够快速识别和获取系统状态,有助于制定精准的备份策略,确保备份过程中的数据一致性,减少潜在的数据丢失风险。
在一种可能的实施方式中,获取目标服务器的逻辑卷信息,具体为通过文件系统层获取目标服务器的逻辑卷信息。
其中,文件系统层是操作系统中用于管理和存储文件的结构和逻辑,它负责组织和管理磁盘上的数据,使得用户和应用程序可以方便地读取和写入文件,通过文件系统层可以访问到逻辑卷的相关元数据,如大小、位置和状态等,这使得备份应用程序能够准确地识别和处理需要备份的逻辑卷。
S3,通过内核态驱动程序在目标服务器内核中注册与逻辑卷信息一致的块设备。
其中,块设备是一种数据存储设备,数据以固定大小的块(通常是512字节或更大)进行读取和写入,常见的块设备包括硬盘驱动器和固态硬盘(SSD),它们允许随机访问,适合高效的数据处理,实现逻辑卷和块设备之间的紧密关联,提高数据访问速度。
S4,在目标服务器内核中分配块设备请求队列,并将目标服务器中的逻辑卷请求队列绑定至块设备请求队列。
其中,块设备请求队列是用于管理对块设备的读写请求的队列,它在内核中存储待处理的I/O请求,确保请求按顺序或优先级被处理,从而提高系统性能和效率,逻辑卷请求队列是针对逻辑卷的特定I/O请求的队列,逻辑卷请求队列包含所有针对逻辑卷的读写操作请求,它在备份过程中用于组织和调度I/O请求。
需要说明的是,通过分配块设备请求队列并绑定逻辑卷请求队列,有效提升数据读写的效率,优化I/O性能,减少延迟,允许更高效的并发处理,提高系统的响应能力。
S5,接收并记录用户态备份应用程序获取到的逻辑卷bitmap信息。
其中,bitmap信息是位图信息,用于表示一组数据项的状态,在逻辑卷的上下文中,bitmap信息表示逻辑卷中每个数据块是否被修改或使用,每个位的状态通常用于指示相应数据块是否需要备份。
需要说明的是,通过记录逻辑卷bitmap信息变化,确保数据备份的完整性和一致性,提供对备份状态的实时监控,有助于及时发现潜在问题。
S6,根据逻辑卷bitmap信息确定变化数据,并将变化数据进行转存。
其中,变化数据指的是自上次备份以来,逻辑卷中被修改、添加或删除的数据,通过识别这些变化,备份过程可以更高效地进行,仅转存必要的数据。
具体地,根据逻辑卷bitmap信息确定变化数据减少备份时间,降低对系统性能的影响,减少存储需求,提高备份效率,提升用户体验。
在一种可能的实施方式中,S6具体包括:
S601,记录备份开始时刻的逻辑卷bitmap信息。
其中,备份开始时刻的逻辑卷bitmap信息是指在备份操作开始时,记录下的逻辑卷的状态。
S602,获取实时逻辑卷bitmap信息。
其中,实时逻辑卷bitmap信息是指在备份操作进行过程中,动态获取的逻辑卷状态信息。
S603,比对实时逻辑卷bitmap信息和备份开始时刻的逻辑卷bitmap信息,输出变化数据。
S604,对变化数据进行转存。
需要说明的是,通过系统化地记录和比较逻辑卷的bitmap信息,能够高效地识别和转存变化数据,减少备份时的资源消耗,此外,通过持续监控和实时获取数据状态,确保了备份的一致性和可靠性,使得恢复过程更加顺畅和准确,这种增量备份策略在提高系统性能的同时,也降低了存储需求,优化了整体数据管理。
S7,通过块设备接收用户态备份应用程序的关于备份的数据读取请求。
其中,数据读取请求是指用户态备份应用程序向块设备发出的请求,要求读取特定的数据块,数据读取请求可以是对备份数据或其他数据的访问。
具体地,通过块设备接收数据读取请求确保备份过程中的数据读取请求被及时处理,避免数据瓶颈,提高系统的并行处理能力,增强整体性能。
S8,判断数据读取请求是否涉及变化数据,若是,则将转存的数据返回至用户态备份应用程序,否则,将磁盘数据返回至用户态备份应用程序。
其中,磁盘数据是指存储在块设备上的原始数据,这些数据可能是未经过转存的状态,通过判断数据读取请求是否涉及变化数据优化数据访问效率,提高备份过程的灵活性,确保用户态应用程序的高效运行。
S9,将得到的返回数据存储至存储介质。
其中,返回数据是指在处理数据读取请求后,从块设备获取到的数据,也可以是转存的变化数据或原始磁盘数据,存储介质是指用于保存数据的设备或介质,例如硬盘、固态硬盘或云存储,它用于长期保存备份数据,以便将来进行恢复。
需要说明的是,通过将返回的数据写入存储介质确保备份数据的持久性和可靠性,防止数据丢失,为后续的数据恢复提供可靠的依据,增强系统的灾难恢复能力。
在一种可能的实施方式中,S9之后还包括:
在目标服务器内核中删除块设备。
需要说明的是,删除块设备可以释放系统资源,降低内存和处理器的负担,确保其他操作可以更高效地进行,简化内核配置,使得系统更易于管理和操作,特别是在进行后续备份或数据恢复时,有助于提升系统性能、安全性和管理效率。
具体地,首先,在需要备份的服务器上安装内核态驱动程序;然后,在需要备份的服务器上启动运行用户态备份应用程序;之后使用备份应用程序获取需要备份的服务器上逻辑卷的信息,包括卷所占用的扇区范围与大小等信息;并通过备份应用程序将逻辑卷信息通知给驱动程序,驱动程序依据逻辑卷信息在内核注册一个新的块设备,块设备的扇区范围与大小同逻辑卷的扇区范围与大小一致;接着,备份应用程序获取逻辑卷上的bitmap信息,并将逻辑卷的bitmap信息通知给驱动程序,驱动程序记录bitmap信息;在备份过程中,驱动程序向内核申请为块设备分配一个请求队列,并将原有逻辑卷的请求队列绑定到新的块设备上,此时,所有对原逻辑卷的I/O请求都会被新的块设备接管,当在备份过程中,原有卷有数据发生变化时,块设备接收到变化的I/0请求,并对变化的磁盘数据块的数据进行转存或者直接将I/0请求下发到磁盘上;当备份应用程序开始读取数据进行数据备份时,直接读取新的块设备,驱动程序接收到读数据I/O请求后,依据传递的bitmap信息,判断I/O请求是直接下发到磁盘上并将磁盘数据返回给上层应用,还是从转存数据中将转存的数据返回给上层应用;备份应用程序接收到驱动返回的备份数据后,将备份数据写入到备份存储中,完成数据备份过程。
举例来说,整个流程依次为:在需要进行数据备份的主机上安装备份驱动程序snapshotdriver.ko;在需要进行数据备份的主机上启动备份应用程序backupapp;备份应用程序backupapp获取主机上卷/dev/sda1扇区以及大小信息;备份应用程序backupapp将卷信息发送给备份驱动程序snapshotdriver.ko;备份驱动程序snapshotdriver.ko收到卷信息后,依据卷信息在注册新的块设备/dev/snapshotdev;备份应用程序backupapp获取卷/dev/sda1的bitmap信息,发送给备份驱动程序snapshotdriver.ko;备份驱动程序为新块设备申请一个请求队列,并将原有逻辑卷的请求队列绑定到新块设备的请求队列上;备份应用程序backupapp访问块设备/dev/snapshotdev读取备份数据;备份驱动程序snapshotdriver.ko收到备份应用程序backup的I/O请求后,将磁盘的块数据返回给应用程序backupapp;备份应用程序backupapp接收到磁盘数据后,将数据存储到存储介质中。
在实际使用过程中,该数据备份方法通过安装内核态驱动程序、启动用户态备份应用程序,获取逻辑卷信息、通过内核态驱动程序注册块设备,利用块设备接收数据读取请求,整个过程根据记录的初始和实时bitmap信息,确保数据一致性和准确性,增强数据恢复的可靠性,此外,模块化设计简化了管理,释放资源提高系统性能,同时降低了安全风险,从而提供了安全、可靠的数据管理解决方案。在整个备份过程中,没有创建物理快照,只是由驱动程序在内核中注册了一个块设备,当备份结束后,这个块设备从内核中移除,这里所用的时间与空间大小远远小于创建快照时所使用的时间和空间大小,同时还可以监测备份过程中的数据变化情况。
本发明有益效果如下:
在使用备份软件对服务器进行备份时,不再对服务器进行快照创建,引入一个内核态驱动程序来完成快照的工作,由驱动程序获取备份启动时刻的服务器数据,同时,驱动程序可以根据逻辑卷bitmap信息实时监测在备份过程中目标服务器数据的变化情况,当备份结束后,内核态驱动程序仍然在内核中运行,下次备份程序运行时,可以选择只对服务器做增量备份,这时驱动程序就会将这部分变化数据返回给备份软件进行存储,在备份过程中,利用驱动程序,在内核注册新块设备,将原有逻辑卷的请求队列绑定到新的块设备上,逻辑卷上的所有I/O请求将由块设备接管,当逻辑卷上发生数据的I/O请求时,请求先到达块设备,块设备会依据备份软件业务逻辑从转存数据或者磁盘数据中返回至备份软件,完成数据备份,从而解决快照占用空间大,创建快照时间长的问题,在降低占用空间的同时提升备份速度,而且可以有效监测备份过程中的变化数据,实现完整的数据备份,避免数据丢失,提升数据安全。
装置实施例
参考说明书附图2,示出了本发明实施例提供的一种数据备份装置的结构示意图。
本发明的另一个具体实施例,公开了一种数据备份装置,用于实现方法实施例中任一项的数据备份装置,数据备份装置20包括:
安装模块201,用于在需要备份的目标服务器上安装内核态驱动程序;
获取模块202,用于启动目标服务器上的用户态备份应用程序,获取目标服务器的逻辑卷信息,并将逻辑卷信息发送至内核态驱动程序;
注册模块203,用于通过内核态驱动程序在目标服务器内核中注册与逻辑卷信息一致的块设备;
分配模块204,用于在目标服务器内核中分配块设备请求队列,并将目标服务器中的逻辑卷请求队列绑定至块设备请求队列;
第一接收模块205,用于接收并记录用户态备份应用程序获取到的逻辑卷bitmap信息;
转存模块206,用于根据逻辑卷bitmap信息确定变化数据,并将变化数据进行转存;
第二接收模块207,用于通过块设备接收用户态备份应用程序的关于备份的数据读取请求;
判断模块208,用于判断数据读取请求是否涉及变化数据,若是,则将转存的数据返回至用户态备份应用程序,否则,将磁盘数据返回至用户态备份应用程序;
存储模块209,用于将得到的返回数据存储至存储介质。
在一种可能的实施方式中,内核态驱动程序具体为snapshotdriver.ko。
在一种可能的实施方式中,逻辑卷信息包括扇区范围和容量。
在一种可能的实施方式中,获取目标服务器的逻辑卷信息,具体为:
通过文件系统层获取目标服务器的逻辑卷信息。
在一种可能的实施方式中,转存模块具体用于:
记录备份开始时刻的逻辑卷bitmap信息;
获取实时逻辑卷bitmap信息;
比对实时逻辑卷bitmap信息和备份开始时刻的逻辑卷bitmap信息,输出变化数据;
对变化数据进行转存。
在一种可能的实施方式中,还包括:
删除模块,用于在目标服务器内核中删除块设备。
本发明实施例提供的装置能够实现上述方法实施例中的各个流程及步骤,并且能够获得相同或相似的技术效果,为避免重复,本发明不再赘述。
本发明有益效果如下:
在本发明实施例中,首先在需要备份的目标服务器上安装内核态驱动程序,提高备份过程的效率和性能,然后接着启动用户态备份应用程序,获取逻辑卷信息,确保备份过程中的数据一致性,减少潜在的数据丢失风险,通过在内核态驱动程序中注册块设备实现逻辑卷和块设备之间的紧密关联,提高数据访问速度,根据分配块设备请求队列并绑定逻辑卷请求队列,提升数据读写的效率,优化I/O性能,减少延迟,接着接收并记录逻辑卷bitmap信息,通过记录变化,确保数据备份的完整性和一致性,根据逻辑卷bitmap信息确定变化数据,减少备份时间,降低对系统性能的影响,提升用户体验,通过块设备接收数据读取请求,提高系统的并行处理能力,增强整体性能,通过判断数据读取请求是否涉及变化数据,提高备份过程的灵活性,确保用户态应用程序的高效运行,最后将返回数据存储至存储介质,确保备份数据的持久性和可靠性,防止数据丢失。
系统实施例
参考说明书附图3,示出了本发明实施例提供的一种数据备份系统的结构示意图。
本发明提出一种数据备份系统30,包括:存储器303和一个或多个处理器301。
存储器303中存储有一个或多个应用程序,一个或多个应用程序适于由一个或多个处理器301执行以实现方法实施例的数据备份装置。
数据备份系统30包括:处理器301和存储器303。其中,处理器301和存储器303相连,如通过总线302相连。
该数据备份系统30的结构并不构成对本发明实施例的限定。
处理器301可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器301也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线302可包括一通路,在上述组件之间传送信息。总线302可以是PCI总线或EISA总线等。总线302可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器303可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
计算机可读存储介质实施例
本发明提出一种计算机可读存储介质,其上存储有计算机程序,该计算机程序能够被处理器加载和执行以第一方面所述的数据备份装置。
本发明申请人结合说明书附图对本发明的实施示例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施示例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。
最后应说明的是,以上实施例仅用以说明本发明实施例的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种数据备份方法,其特征在于,所述数据备份方法包括:
S1,在需要备份的目标服务器上安装内核态驱动程序;
S2,启动所述目标服务器上的用户态备份应用程序,获取所述目标服务器的逻辑卷信息,并将所述逻辑卷信息发送至所述内核态驱动程序;
S3,通过所述内核态驱动程序在目标服务器内核中注册与所述逻辑卷信息一致的块设备;
S4,在所述目标服务器内核中分配块设备请求队列,并将所述目标服务器中的逻辑卷请求队列绑定至所述块设备请求队列;
S5,接收并记录所述用户态备份应用程序获取到的逻辑卷bitmap信息;
S6,根据所述逻辑卷bitmap信息确定变化数据,并将所述变化数据进行转存;
S7,通过所述块设备接收所述用户态备份应用程序的关于备份的数据读取请求;
S8,判断所述数据读取请求是否涉及所述变化数据,若是,则将转存的数据返回至所述用户态备份应用程序,否则,将磁盘数据返回至所述用户态备份应用程序;
S9,将得到的返回数据存储至存储介质。
2.根据权利要求1所述的数据备份方法,其特征在于,所述内核态驱动程序具体为snapshotdriver.ko。
3.根据权利要求1所述的数据备份方法,其特征在于,所述逻辑卷信息包括扇区范围和容量。
4.根据权利要求1所述的数据备份方法,其特征在于,所述获取所述目标服务器的逻辑卷信息,具体为:
通过文件系统层获取所述目标服务器的逻辑卷信息。
5.根据权利要求1所述的数据备份方法,其特征在于,所述S6具体包括:
S601,记录备份开始时刻的逻辑卷bitmap信息;
S602,获取实时逻辑卷bitmap信息;
S603,比对所述实时逻辑卷bitmap信息和所述备份开始时刻的逻辑卷bitmap信息,输出所述变化数据;
S604,对所述变化数据进行转存。
6.根据权利要求1所述的数据备份方法,其特征在于,在所述S9之后还包括:
在所述目标服务器内核中删除所述块设备。
7.一种数据备份装置,其特征在于,所述数据备份装置包括:
安装模块,用于在需要备份的目标服务器上安装内核态驱动程序;
获取模块,用于启动所述目标服务器上的用户态备份应用程序,获取所述目标服务器的逻辑卷信息,并将所述逻辑卷信息发送至所述内核态驱动程序;
注册模块,用于通过所述内核态驱动程序在目标服务器内核中注册与所述逻辑卷信息一致的块设备;
分配模块,用于在所述目标服务器内核中分配块设备请求队列,并将所述目标服务器中的逻辑卷请求队列绑定至所述块设备请求队列;
第一接收模块,用于接收并记录所述用户态备份应用程序获取到的逻辑卷bitmap信息;
转存模块,用于根据所述逻辑卷bitmap信息确定变化数据,并将所述变化数据进行转存;
第二接收模块,用于通过所述块设备接收所述用户态备份应用程序的关于备份的数据读取请求;
判断模块,用于判断所述数据读取请求是否涉及所述变化数据,若是,则将转存的数据返回至所述用户态备份应用程序,否则,将磁盘数据返回至所述用户态备份应用程序;
存储模块,用于将得到的返回数据存储至存储介质。
8.根据权利要求7所述的数据备份装置,其特征在于,所述内核态驱动程序具体为snapshotdriver.ko。
9.根据权利要求7所述的数据备份装置,其特征在于,所述逻辑卷信息包括扇区范围和容量。
10.根据权利要求7所述的数据备份装置,其特征在于,所述获取所述目标服务器的逻辑卷信息,具体为:
通过文件系统层获取所述目标服务器的逻辑卷信息。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411340381.8A CN119311471A (zh) | 2024-09-25 | 2024-09-25 | 一种数据备份方法及装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411340381.8A CN119311471A (zh) | 2024-09-25 | 2024-09-25 | 一种数据备份方法及装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN119311471A true CN119311471A (zh) | 2025-01-14 |
Family
ID=94190488
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202411340381.8A Pending CN119311471A (zh) | 2024-09-25 | 2024-09-25 | 一种数据备份方法及装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN119311471A (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120256206A (zh) * | 2025-06-04 | 2025-07-04 | 济南浪潮数据技术有限公司 | 虚拟机数据的备份方法、存储介质及电子设备 |
| CN120768748A (zh) * | 2025-08-22 | 2025-10-10 | 济南浪潮数据技术有限公司 | 基于内核态和用户态的故障检测方法、设备、介质及产品 |
-
2024
- 2024-09-25 CN CN202411340381.8A patent/CN119311471A/zh active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120256206A (zh) * | 2025-06-04 | 2025-07-04 | 济南浪潮数据技术有限公司 | 虚拟机数据的备份方法、存储介质及电子设备 |
| CN120768748A (zh) * | 2025-08-22 | 2025-10-10 | 济南浪潮数据技术有限公司 | 基于内核态和用户态的故障检测方法、设备、介质及产品 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11409705B2 (en) | Log-structured storage device format | |
| US8959305B1 (en) | Space reclamation with virtually provisioned devices | |
| US9940067B2 (en) | Performing a data write on a storage device | |
| US9336132B1 (en) | Method and system for implementing a distributed operations log | |
| CN119311471A (zh) | 一种数据备份方法及装置 | |
| US8856591B2 (en) | System and method for data disaster recovery | |
| EP2333653A1 (en) | Information backup/restoring apparatus and information backup/restoring system | |
| CN111913663A (zh) | 存储卷在线迁移的方法、装置和存储卷在线迁移的系统 | |
| CN108475201B (zh) | 一种虚拟机启动过程中的数据获取方法和云计算系统 | |
| US11099735B1 (en) | Facilitating the recovery of full HCI clusters | |
| US10467044B2 (en) | Transaction processing method and apparatus, and computer system | |
| US9940152B2 (en) | Methods and systems for integrating a volume shadow copy service (VSS) requester and/or a VSS provider with virtual volumes (VVOLS) | |
| RU2008141158A (ru) | Создание согласованных с приложениями резервных копий виртуальных машин уровня хоста | |
| US8479046B1 (en) | Systems, methods, and computer readable media for tracking pool storage space reservations | |
| CN111913664B (zh) | 一种数据写入方法及装置 | |
| US8019953B2 (en) | Method for providing atomicity for host write input/outputs (I/Os) in a continuous data protection (CDP)-enabled volume using intent log | |
| US20190042355A1 (en) | Raid write request handling without prior storage to journaling drive | |
| JP2017531892A (ja) | ブロックレベル記憶デバイスのスナップショットを実行するための改善された装置および方法 | |
| KR102277731B1 (ko) | 스토리지 시스템의 구동 방법 및 스토리지 컨트롤러 | |
| WO2021046693A1 (zh) | 存储系统中数据处理方法、装置以及存储系统 | |
| TW200417859A (en) | Storage system and method with snapshot backup function | |
| CN118605916A (zh) | 基于存储器读写的嵌入式系统升级方法和装置 | |
| US11573729B2 (en) | Storage device and storage control method | |
| CN116431388A (zh) | 分布式文件系统的数据恢复方法及应用 | |
| JP2010152781A (ja) | バックアップサーバ装置、バックアップ/リストアプログラム、およびバックアップ/リストア方法 |
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 |