数据备份方法及装置的制造方法

文档序号:10724753阅读:387来源:国知局
数据备份方法及装置的制造方法
【专利摘要】本发明提供数据备份方法及装置,应用于包括生产服务器、及备份服务器的server?free备份场景。当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块是按照预设大小划分所述存储卷得到的。对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。本发明降低了对生产服务器性能的影响,并能减少所需备份的数据量和时间。
【专利说明】
数据备份方法及装置
技术领域
[0001 ]本发明涉及计算机数据备份领域,特别是涉及数据备份方法及装置。【背景技术】
[0002]存储区域网络(Storage Area Network,简称SAN)米用光纤通道(Fibre Channel, 简称FC)技术,通过光纤通道交换机(Fibre Channel Switch,简称FC Switch)连接存储阵列(Storage Array)和服务器主机,建立专用于数据存储的区域网络。SAN经过十多年历史的发展,已经相当成熟,成为业界的事实标准。随着SAN设备的广泛普及,越来越多特定的数据管理应用和相应硬件的解决方案在SAN基础设施中使用。
[0003]在信息技术和数据管理领域,备份技术是指:将文件系统、数据库或其它生产服务器所应用的数据加以复制并保存到特定的介质服务管理的存储中,生产服务器一旦发生灾难或错误操作时,从备份的介质服务的存储中的可以进行数据恢复,使生产服务器恢复正常运行。
[0004]传统的备份方式有一个很大的缺陷,即需要占用服务器的资源与网络带宽,尤其在进行异地备份的时候,网络带宽显得极其珍贵。在应用服务器启动备份策略时,就会在生产服务器争用资源,从而影响应用系统的正常使用。为此不少系统管理员为了减少系统备份带来的负面影响,选择在应用服务器不繁忙的时候对应用服务器的数据进行备份,但其灵活性就大打折扣了,特别对于一些备份频率要求较高的用户来说,可操作性极低。
[0005]在此背景下,针对SAN存储解决方案,出现了 Server-Free(无服务器)的备份方式, 这种备份方式不需要占用应用服务器的资源。公布号为CN105446831A的专利申请提出了 “一种结合SAN的Server-Free备份方法”,解决了目前主流的两种Server-Free备份方案的缺陷,然而,其方法仍然存在问题,即每个时间点都是一个克隆卷的全量备份,随着时间点的增加或者备份目标的增加,备份服务器的存储空间将捉襟见肘,此外,每次备份都进行全量备份导致备份任务将花费大量的时间在备份重复的数据,十分浪费资源。
【发明内容】

[0006]鉴于以上所述现有技术的缺点,本发明的目的在于提供数据备份方法及装置,用于解决现有技术中备份重复、浪费资源的问题。
[0007]为实现上述目的及其他相关目的,本发明提供一种数据备份方法,应用于包括生产服务器及备份服务器的server-free备份场景,所述方法包括:当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块是按照预设大小划分所述存储卷得到的;对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。
[0008]于本发明一实施例中,所述与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置,包括:根据预设规则将各所述快照表示成各对应的二进制字符串,所述预设规则包括:以“〇”表示数据块没有发生变化,以“1”表示数据块发生了变化,将“〇”、及“r按照各数据块的顺序对应排列以生成二进制字符串。
[0009]于本发明一实施例中,对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份,包括:当所述备份需求为增量备份时,获取备份基准点与备份终点间各次备份时生成的各存储快照;将各所述存储快照的二进制字符串作逻辑或运算以得到最终发生变化的数据块的位置。
[0010]于本发明一实施例中,所述对存储卷进行快照是在静默状态下完成的。
[0011]为实现上述目的及其他相关目的,本发明提供一种数据备份装置,应用于包括生产服务器及备份服务器的server-free备份场景,所述装置包括:快照模块,用于当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块是按照预设大小划分所述存储卷得到的;备份模块,用于对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。
[0012]为实现上述目的及其他相关目的,本发明提供一种服务器,包括:如上所述的数据备份装置。
[0013]为实现上述目的及其他相关目的,本发明提供一种数据备份方法,应用于server-free 备份场景中与生产服务器通信连接的备份服务器 ,所述方法包括:当检测到备份指令时,对需要备份的存储卷进行快照;接收由所述生产服务器发送的发生变化的数据块位置, 并对所述数据块进行备份,以供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇14]为实现上述目的及其他相关目的,本发明提供一种数据备份装置,应用于server-free 备份场景中与生产服务器通信连接的备份服务器,所述装置包括:快照模块,用于当检测到备份指令时,对需要备份的存储卷进行快照;备份模块,用于接收由所述生产服务器发送的发生变化的数据块位置,并对所述数据块进行备份,以供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分所述存储卷得到的。
[0015]为实现上述目的及其他相关目的,本发明提供一种备份服务器,包括:如上所述的数据备份装置。
[0016]为实现上述目的及其他相关目的,本发明提供一种数据备份方法,应用于server-free 备份场景中与备份服务器通信连接的生产服务器 ,所述方法包括:接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快照,并进行比对;从所述比对中得到发生变化的数据块的位置并发送至所述备份服务器;其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇17]为实现上述目的及其他相关目的,本发明提供一种数据备份装置,应用于server-free 备份场景中与备份服务器通信连接的生产服务器 ,所述装置包括:比对模块 ,用于接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快照,并进行比对;发送模块, 用于从所述比对中得到发生变化的数据块的位置并发送至所述备份服务器;其中,所述数据块是按照预设大小划分所述存储卷得到的。
[0018]为实现上述目的及其他相关目的,本发明提供一种生产服务器,包括:如上所述的数据备份装置。
[0019]为实现上述目的及其他相关目的,本发明提供一种数据备份系统,包括:如上所述的备份服务器、及如上所述的生产服务器中的一种或多种。
[0020]如上所述,本发明的数据备份方法及装置,通过监控块存储设备的I/O变化,记录固定大小块的变化位置,结合存储快照进行快照间的增量数据备份。最终生成一种节省时间和空间、支持增量数据备份的server-free的备份方案,降低对生产服务器性能的影响以及减少所需备份的数据量和时间。【附图说明】[0〇21 ]图1显示为现有技术的常规server-free备份场景图。[〇〇22]图2显示为本发明一实施例的数据备份方法流程图。[〇〇23]图3显示为本发明一实施例的数据块变化统计图。[〇〇24]图4显示为本发明又一实施例的数据块变化统计图。[〇〇25]图5显示为本发明一实施例的数据备份装置模块图。[〇〇26]图6显示为本发明一实施例的备份服务器上的数据备份装置模块图。[〇〇27]图7显示为本发明一实施例的生产服务器上的数据备份装置模块图。[〇〇28]图8显示为本发明一实施例的数据备份系统结构图。[〇〇29]元件标号说明[〇〇3〇]500数据备份装置[〇〇31]501快照模块[〇〇32]502备份模块[〇〇33]600数据备份装置[〇〇34]601快照模块
[0035]602备份模块[〇〇36]700数据备份装置
[0037]701比对模块
[0038]702发送模块[〇〇39]F2生产服务器
[0040]F3备份服务器[0041 ]S201 ?S202 步骤【具体实施方式】[〇〇42]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。[〇〇43]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0044]目前VMware(虚拟化解决方案的领导厂商)推动的VMware soft defined storage 项目Virtual volumes(简称vvol)在各个主流存储厂商广泛推广。VMware定义了一套VASA (全称:vSphere APIs for Storage Awareness)的北向接口,主流厂商要想融合进VMware 这一虚拟化解决方案,就需要实现一套与该北向接口对应的南向接口。目前,从VMware官网来看大部分主流厂商都实现了这一套南向接口,这套南向接口基于https协议(安全的超文本传输协议),其中一个接口的功能就是提供了获取存储卷前后快照变化数据块的位图,利用存储提供的这个功能,我们利用快照的增量位图来获取快照对应时间点的卷的增量块数据。但是,这些接口依然不能全面覆盖其他非主流的或者正在使用且不能升级到拥有该功能的存储中。本申请结合存储的相关特性,以及I/O驱动层面的数据变化统计,创造性的提出一种server-free的备份方法,以下将做详细说明。
[0045]图1显示了一种从用户环境中抽象出来的最简单的备份场景,说明了生产服务器和备份服务器之间的关系,其中,存储卷可以存储于与生产服务器通信连接的外部存储设备中,还可以存储于备份服务器的存储服务中。生产服务器环境装有数据保护厂商产品的客户端,通过私有协议和备份服务器交互对生产服务器进行数据保护,而生产服务上挂载了存储介质提供的卷。
[0046]请参阅图2,结合上述场景,本发明提出数据备份方法,应用于包括生产服务器及备份服务器的server-free备份场景,其中,生产环境服务器环境设置有备份代理模块及1/ 〇驱动模块,具体包括如下步骤:
[0047]步骤S201:当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块是按照预设大小划分所述存储卷得到的,例如:创建备份任务时由用户设定将被监控的卷进行划分,比如,以512byte、4M、64M等数据量大小来划分,举个例子,如果被监控的卷大小为50G,我们用64M作为一个块来进行划分,这样该卷就被划分成800个数据块。优选的,所述对存储卷进行快照是在静默状态下完成的。[〇〇48]步骤S202:对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。
[0049]例如,当备份任务启动时,应用服务器通过其备份代理调用应用的一致性接口,让应用进入静默状态,这里调用一致性接口的目的在于让应用把内存中保留的旧数据刷新至磁盘,而让新产生的数据缓存至内存,从而保证恢复出来的时间点的磁盘数据能让应用正常运行。应用服务器随之通过其备份代理通知备份服务器,对备份服务器监控的存储在存储介质上的存储卷进行快照处理。当要进行全量备份时,应用服务器进一步通知存储介质, 将该快照克隆出一个新卷,并挂载至备份服务器,从而完成一次全量备份,为了节约存储资源,全量备份完毕后删除克隆的新卷。应用服务器通过其备份代理调用应用的一致性接口来释放静默状态。按照备份的要求,例如:按时间间隔进行一次备份、按产生的数据量进行一次备份等,当再次启动备份任务时,按照上述步骤得到另一次快照,由应用服务器上的备份代理来分析两次快照的数据块的位置的变化,并将变化的位置信息传递给备份服务器, 由备份服务器对变化了位置的数据块进行备份。
[0050]特别的,步骤S201中,所述与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置,可以为:通过监控存储设备的1/0变化,优选的,仅监控1/0的wri te操作,来判断各个数据块是否发生变化,再对各个数据块赋予标记符,并对应比较快照间的各个数据块的标记符,从而得出发生了变化的数据块的位置。例如:以“〇”表示数据块没有发生变化,以“1”表示数据块发生了变化,按此规则对I/O端口监控的各个数据块进行标记,再将“0”、及“1”按照各数据块的顺序对应排列以生成二进制字符串。如图3所示,每个数据块大小为64M,括号里的数字表示对数据块变化的统计结果,这里,统计了某个快照点卷设备〇到256M数据变化的情况为1001,意味着第一个64M和第四个64M的数据块是有变化的。接下来我们可以把这串二进制字符串转换成十六进制9,这样可以压缩前面所转换的二进制数据。若压缩后的字符是〇,那么后续解析时自动补位成〇〇〇〇,代表连续4个64M的数据块没有发生变化。
[0051]当要进行增量备份时,选取备份基准点(如最近一次的全量备份)与备份终点之间各次备份时生成的各存储快照,将各所述存储快照的二进制字符串作逻辑或运算以得到最终发生变化的数据块的位置,由备份服务器对变化了位置的数据块进行备份。如图4所示, 快照点1的数据块变化的二进制表示为11001001,快照点2的数据块变化的二进制表示为 10010100,快照点3的数据块变化的二进制表示为10010000。当我们以快照点1为基准参照, 对快照点2的克隆卷进行增量备份,那么我们要备份的数据就只需解析快照点2的数据块变化,S卩10010100。当我们以快照点1为基准参照,对快照点3的克隆卷进行增量备份,那么我们需将快照点2的数据块变化的二进制表示和快照点3的数据块变化的二进制表示进行逻辑或运算(I I),即1〇〇1〇1〇〇| |1〇〇1〇〇〇〇=1〇〇1〇1〇〇,此时,我们要备份的数据块为第1、4、6 个。[〇〇52]需要说明的是,上述通过监控存储设备的1/0变化是通过如下方式实现的:[〇〇53](一)Linux驱动层1/0实现原理:
[0054]1.linux驱动实现采用netlink通信方式处理用户态应用监控程序与内核态驱动的通信;[0055 ]2.待1 i nux驱动加载后,初始化ne 11 i nk来监听用户态的消息;
[0056]3.当备份任务启动后,将用户配置所要保护的数据卷以及镜像卷信息传递给驱动模块并将它保存在内存中,再将数据卷设备的块1/0请求队列的make_request_fn所指向的内核默认的函数指针保留至内存,重新将make_request_fn指向我们实现的1/0处理函数指针,与此同时,我们将1/0的写操作缓存至一个队列中;[〇〇57]4.逐个处理队列中的1/0写操作,记录数据被修改的起始位置及数据块的大小。[〇〇58](二)windows驱动层1/0实现原理:[〇〇59] 在windows内核中,IRQ(I/0 request package:输入输出请求包)是一种重要的与输入输出有关的数据结构。当用户态应用程序与底层驱动通信时,应用程序会发出1/0请求,操作系统会将1/0请求转换为相应的IRQ数据,不同的IRQ会根据类型传递到不同的派遣函数(dispatch funct1n)。[0〇6〇] 客户端程序与驱动层之间的通信可以使用DeviceloControl方法传递,扩展自定义控制码。
[0061] 程序处理流程如上述linux驱动,在1/0过滤及分发上细节有点区别。当备份任务启动备份数据卷时,通过修改数据卷设备对应的注册表信息,将该设备加载过滤驱动。在驱动入口处将IRQ_MJ_SCSI对应的分发处理函数指向自己实现的过滤函数的函数指针。
[0062]与上述实施例原理相似的是,本发明提供一种数据备份装置500,应用于包括生产服务器、备份服务器的server-free备份场景,由于上述技术特征可以应用于本装置实施例,因而不再重复赘述。所述装置500包括:快照模块501、备份模块502。当检测到备份指令时快照模块501对需要备份的存储卷进行快照,以供与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置,其中,所述数据块是按照预设大小划分所述存储卷得到的,与先前备份所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置,包括:根据预设规则将各所述快照表示成各对应的二进制字符串,所述预设规则包括:以“0”表示数据块没有发生变化,以“1”表示数据块发生了变化,将“0”、及“1”按照各数据块的顺序对应排列以生成二进制字符串。备份模块502对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务,当所述备份需求为增量备份时,获取备份基准点与备份终点间各次备份时生成的各存储快照;将各所述存储快照的二进制字符串作或运算以得到最终发生变化的数据块的位置。优选的,所述对存储卷进行快照是在静默状态下完成的。[〇〇63]与上述实施例原理相似的是,本发明提供一种服务器F1,包括如上所述的数据备份装置500,也即通过该服务器完成如上所述的数据备份方法,实现数据备份功能。[〇〇64]与上述实施例原理相似的是,本发明提供另一种数据备份方法S300,应用于 server-free备份场景中与生产服务器通信连接的备份服务器,所述方法包括:
[0065]S301:当检测到备份指令时,对需要备份的存储卷进行快照,优选的,所述对存储卷进行快照是在静默状态下完成的;[〇〇66]S302:接收由所述生产服务器发送的发生变化的数据块位置,并对所述数据块进行备份,以供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇67]请参阅图6,与上述实施例原理相似的是,本发明提供另一种数据备份装置600,应用于server-free备份场景中与生产服务器通信连接的备份服务器,所述装置600包括:快照模块601,用于当检测到备份指令时,对需要备份的存储卷进行快照,优选的,所述对存储卷进行快照是在静默状态下完成的;备份模块602,用于接收由所述生产服务器发送的发生变化的数据块位置,并对所述数据块进行备份,以供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇68]与上述实施例原理相似的是,本发明提供一种备份服务器F2,包括:如上所述的数据备份装置600。[〇〇69]与上述实施例原理相似的是,本发明提供再一种数据备份方法S400,应用于 server-free备份场景中与备份服务器通信连接的生产服务器,所述方法包括:
[0070]S401:接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快照,并进行比对;
[0071]S402:从所述比对中得到发生变化的数据块的位置并发送至所述备份服务器;其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇72]请参阅图7,与上述实施例原理相似的是,本发明提供再一种数据备份装置700,应用于server-free备份场景中与备份服务器通信连接的生产服务器,所述装置700包括:比对模块701,用于接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快照,并进行比对;发送模块702,用于从所述比对中得到发生变化的数据块的位置并发送至所述备份服务器;其中,所述数据块是按照预设大小划分所述存储卷得到的。[〇〇73]与上述实施例原理相似的是,本发明提供一种生产服务器F3,包括:如上所述的数据备份装置700。
[0074]如图8所示,与上述实施例原理相似的是,本发明提供一种数据备份系统,包括:如上所述的备份服务器F2、及如上所述的生产服务器F3,二者通信相连。
[0075]综上所述,本发明的数据备份方法及系统,有效克服了现有技术中的种种缺点而具高度产业利用价值。[〇〇76]上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
【主权项】
1.一种数据备份方法,其特征在于,应用于包括生产服务器、及备份服务器的server-free 备份场景 ,所述方法包括:当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份所述存储卷时 产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块是按照预设大 小划分所述存储卷得到的;对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。2.根据权利要求1所述的数据备份方法,其特征在于,所述与先前备份所述存储卷时产 生的快照进行比对,从而得到发生变化的数据块的位置,包括:根据预设规则将各所述快照表示成各对应的二进制字符串,所述预设规则包括:以“〇” 表示数据块没有发生变化,以“1”表示数据块发生了变化,将“〇”、及“1”按照各数据块的顺 序对应排列以生成二进制字符串。3.根据权利要求2所述的数据备份方法,其特征在于,对所述发生变化的数据块进行备 份,以供按照备份需求完成相应备份,包括:当所述备份需求为增量备份时,获取备份基准点与备份终点间各次备份时生成的各存 储快照;将各所述存储快照的二进制字符串作逻辑或运算以得到最终发生变化的数据块的位置。4.根据权利要求1所述的数据备份方法,其特征在于,所述对存储卷进行快照是在静默 状态下完成的。5.—种数据备份装置,其特征在于,应用于包括生产服务器、及备份服务器的server-free 备份场景 ,所述装置包括:快照模块,用于当检测到备份指令时,对需要备份的存储卷进行快照,以供与先前备份 所述存储卷时产生的快照进行比对,从而得到发生变化的数据块的位置;其中,所述数据块 是按照预设大小划分所述存储卷得到的;备份模块,用于对所述发生变化的数据块进行备份,以供按照备份需求完成相应备份任务。6.—种服务器,其特征在于,包括:如权利要求5所述的数据备份装置。7.—种数据备份方法,其特征在于,应用于server-free备份场景中与生产服务器通信 连接的备份服务器,所述方法包括:当检测到备份指令时,对需要备份的存储卷进行快照;接收由所述生产服务器发送的发生变化的数据块位置,并对所述数据块进行备份,以 供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分所述存储卷得 到的。8.—种数据备份装置,其特征在于,应用于server-free备份场景中与生产服务器通信 连接的备份服务器,所述装置包括:快照模块,用于当检测到备份指令时,对需要备份的存储卷进行快照;备份模块,用于接收由所述生产服务器发送的发生变化的数据块位置,并对所述数据 块进行备份,以供按照备份需求完成相应备份任务,其中,所述数据块是按照预设大小划分 所述存储卷得到的。9.一种备份服务器,其特征在于,包括:如权利要求8所述的数据备份装置。10.—种数据备份方法,其特征在于,应用于server-free备份场景中与备份服务器通 信连接的生产服务器,所述方法包括:接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快照,并进行比对;从所述比对中得到发生变化的数据块的位置并发送至所述备份服务器;其中,所述数 据块是按照预设大小划分所述存储卷得到的。11.一种数据备份装置,其特征在于,应用于server-free备份场景中与备份服务器通 信连接的生产服务器,所述装置包括:比对模块,用于接收所述备份服务器发送的对需要备份的存储卷所做的至少一次快 照,并进行比对;发送模块,用于从所述比对中得到发生变化的数据块的位置并发送至所述备份服务 器;其中,所述数据块是按照预设大小划分所述存储卷得到的。12.—种生产服务器,其特征在于,包括:如权利要求11所述的数据备份装置。13.—种数据备份系统,其特征在于,包括:如权利要求9所述的备份服务器、及如权利 要求12所述的生产服务器。
【文档编号】G06F11/14GK106095622SQ201610457416
【公开日】2016年11月9日
【申请日】2016年6月22日
【发明人】王俊
【申请人】上海爱数信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1