本发明涉及计算机技术领域,特别涉及一种数据备份方法;还涉及一种数据备份装置、设备以及计算机可读存储介质。
背景技术:
在存储系统中,两个容量相同的卷之间可以建立复制关系,通过相互间的数据复制进行数据备份,以达到容灾的目的。在实际应用中,存在需要保证数据顺序的远程备份应用场景。在此应用场景下,目前所采用的方式为当前设备接收主机下发的数据后将数据写入当前设备的卷中,进而将写入当前设备的卷中的数据传输至目标设备的卷,并在数据写入目标设备的卷之后响应主机。由于远程备份的两个设备相距较远,尤其当带宽速率较低时,数据备份的时间较长,从而导致迟迟不能响应主机,从而严重影响了主机业务。
有鉴于此,如何提供一种数据备份方案,在不影响主机业务的同时,实现数据的远程备份,并保障数据顺序是本领域技术人员亟待解决的技术问题。
技术实现要素:
本发明的目的是提供一种数据备份方法,在不影响主机业务的同时,实现数据的远程备份,并保障数据顺序;本发明的另一目的是提供一种数据备份装置、设备以及计算机可读存储介质,均具有上述技术效果。
为解决上述技术问题,本发明提供了一种数据备份方法,包括:
接收主机发送的数据后将所述数据依次写入源卷与内存;
当所述数据写入所述内存后向所述主机发送反馈信息;
根据所述数据写入所述内存的时间,将所述数据依序传送至远端设备的内存,以使所述远端设备将写入其内存的数据写入目标卷。
可选的,还包括:
判断所述内存的使用率是否达到预设阈值;
若达到所述预设阈值,则将所述内存中的所述数据下刷至磁盘;
当所述数据下刷完成后删除所述内存中的所述数据。
可选的,还包括:
当所述磁盘的占用容量达到设定值时,进行预警。
可选的,还包括:
根据预设周期释放所述磁盘的磁盘空间。
为解决上述技术问题,本发明还提供了一种数据备份装置,包括:
写入模块,用于接收主机发送的数据后将所述数据依次写入源卷与内存;
反馈模块,用于当所述数据写入所述内存后向所述主机发送反馈信息;
传送模块,用于根据所述数据写入所述内存的时间,将所述数据依序传送至远端设备的内存,以使所述远端设备将写入所述内存的数据写入目标卷。
可选的,还包括:
判断模块,用于判断所述内存的使用率是否达到预设阈值;
下刷模块,用于若达到所述预设阈值,则将所述内存中的所述数据下刷至磁盘;
删除模块,用于当所述数据下刷完成后删除所述内存中的所述数据。
可选的,还包括:
当所述磁盘的占用容量达到设定值时,进行预警。
可选的,还包括:
根据预设周期释放所述磁盘的磁盘空间。
为解决上述技术问题,本发明还提供了一种数据备份设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的数据备份方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的数据备份方法的步骤。
本发明所提供的数据备份方法,包括接收主机发送的数据后将所述数据依次写入源卷与内存中;当所述数据写入所述内存后向所述主机发送反馈信息;根据所述数据写入所述内存的时间,将所述数据依序传送至远端设备的内存,以使所述远端设备将写入其内存的所述数据写入目标卷。
可见,本发明所提供的数据备份方法,当前设备接收主机发送的数据后,先后分别将数据写入源卷与内存,并在数据写入当前设备的内存中后即向主机发送反馈信息,从而即使受带宽速率等因素影响,延长了数据备份时间,也可实现及时响应主机的目的,对主机业务不造成影响。另外,在数据写入当前设备的内存后,根据数据写入内存的时间先后,依照先后顺序依次将数据传输至远端设备的内存,进而远端设备将写入其内存的数据进一步写入目标卷,实现数据顺序备份。该数据备份方法在不影响主机业务的同时,可有效实现数据的远程备份,并保障数据顺序。
本发明所提供的数据备份装置、设备以及计算机可读存储介质,均具有上述技术效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种数据备份方法的流程示意图;
图2为本发明实施例所提供的另一种数据备份方法的流程示意图;
图3为本发明实施例所提的一种数据备份流程示意图;
图4为本发明实施例所提供的一种数据备份装置的示意图;
图5为本发明实施例所提供的一种数据备份设备的示意图。
具体实施方式
本发明的核心是提供一种数据备份方法,在不影响主机业务的同时,实现数据的远程备份,并保障数据顺序;本发明的另一核心是提供一种数据备份装置、设备以及计算机可读存储介质,均具有上述技术效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种数据备份方法的流程示意图;参考图1,该数据备份方法包括:
s101:接收主机发送的数据后将数据依次写入源卷与内存中;
具体的,在进行数据备份的两个设备中各分配一块包含内存的缓存区,当其中一个设备即当前设备,接收到主机发送的数据后,首先将此数据写入源卷,即当前设备中的卷,然后再将数据写入当前设备的内存中,以后续将此内存中的数据传送至远端设备,进行数据备份。
s102:当数据写入内存后向主机发送反馈信息;
具体的,本步骤旨在及时响应主机,确保主机业务正常实现。具体而言,当数据写入当前设备的内存后,当前设备即可立即向主机发送反馈信息,以响应主机,而无需等待数据在远程设备中备份后才响应主机,从而即使数据备份时间过长,也不会对主机业务造成影响。
s103:根据数据写入内存的时间,将数据依序传送至远端设备的内存,以使远端设备将写入其内存的数据写入目标卷。
具体的,当数据写入当前设备的内存后,后台程序根据数据写入内存的时间先后,依序将数据传送至远端设备的缓存区的内存中,即先写入当前设备的内存中的数据先传送至远端设备的内存中,后写入当前设备的内存中的数据后传送至远端设备的内存中。进而,远端设备的内存写入数据后,远端设备进一步将数据写入目标卷,所谓目标卷即远端设备中的卷,从而完成数据的顺序备份。
其中,对于向主机发送反馈信息与将内存中的数据发送至远端设备的执行顺序,本发明不做唯一限定,可以根据实际需要进行差异性设置。例如,可以在将内存中的数据发送至远端设备前向主机发送反馈信息,也可以在向主机发送反馈信息的同时将内存中的数据发送至远端设备,即二者同步执行。
综上所述,本发明所提供的数据备份方法,当前设备接收主机发送的数据后,先后分别将数据写入源卷与内存,并在数据写入当前设备的内存中后向主机发送反馈信息,从而即使受带宽速率等因素影响,延长了数据备份时间,也可实现及时响应主机的目的,对主机业务不造成影响。另外,在数据写入当前设备的内存后,根据数据写入内存的时间先后,依照先后顺序依次将数据传输至远端设备的内存,进而远端设备将写入其内存的数据进一步写入目标卷,实现数据顺序备份。该数据备份方法在不影响主机业务的同时,可有效实现数据的远程备份,并保障数据顺序。
在上述实施例的基础上,请参考图2及图3,图2为本发明实施例所提供的另一种数据备份方法的流程示意图;结合图2可知,该数据备份方法包括:
s201:接收主机发送的数据后将数据依次写入源卷与内存;
s202:当数据写入内存后向主机发送反馈信息;
s203:根据数据写入内存的时间,将数据依序传送至远端设备的内存,以使远端设备将写入其内存的数据写入目标卷;
s204:判断内存的使用率是否达到预设阈值;
s205:若达到预设阈值,则将内存中的数据下刷至磁盘;
s206:当数据下刷完成后删除内存中的数据。
具体的,由于内存的存储容量相对较小,当业务量较大或带宽速率较低时,容易发生内存的存储容量不足而无法及时写入数据并进行数据备份的情况。故为避免上述情况的发生,本实施例还实时判断当前设备的内存的使用率是否达到预设阈值,若内存的使用率达到预设阈值,则进行数据落盘操作,即将内存中的数据下刷至磁盘,并在数据下刷完成后删除内存中的数据,释放内存空间,以接收新的数据,保障主机业务正常进行。
对应的,远程设备同样可以实时判断远程设备的内存的使用率是否达到预设阈值,若内存的使用率达到预设阈值,则将其内存中的数据下刷至磁盘,并在数据下刷完成后删除内存中的数据,释放内存空间。
其中,对于上述预设阈值的具体数值,本发明不做具体限定,可以根据实际情况设置合适的数值。另外,对于步骤s201至s203的具体内容,本发明在此不做赘述,参见上述实施例的对应表述即可。
本发明所提供的数据备份方法,基于内存与磁盘构成的缓存区进行数据传输,且在数据写入内存后便响应主机,从而可以在不影响主机业务的同时,实现顺序、高效的数据远程备份。
在上述实施例的基础上,可选的,还包括:当磁盘的占用容量达到设定值时,进行预警。
具体的,为进一步保障数据备份可以有效实现以及不影响主机业务,本实施例中,增设报警操作。即判断磁盘的占用容量是否达到设定值,一旦磁盘的占用容量达到设定值,则进行预警提醒,以及时进行空间释放,保障内存的数据能够下刷至磁盘。
同样,对于上述设定值的具体数值,本发明不做具体的限定,可以根据实际需要进行相适应的设定。
在上述实施例的基础上,可选的,还包括:根据预设周期释放磁盘的磁盘空间。
具体的,本实施例还可根据预设周期定期删除磁盘中的失效数据,释放磁盘空间,以保障磁盘空间的可用,确保可以将内存的数据下刷至磁盘,以有效应对主机业务量过大或带宽速率过低的情况。当然,对于预设周期的具体数值,可以根据实际需要设置,本发明不做限定。
本发明还提供了一种数据备份装置,下文描述的该装置可以与上文描述的方法相互对应参照。请参考图4,图4为本发明实施例所提供一种的数据备份装置的示意图;结合图4,该装置包括:
写入模块10,用于接收主机发送的数据后将所述数据依次写入源卷与内存;
反馈模块20,用于当所述数据写入所述内存后向所述主机发送反馈信息;
传送模块30,用于根据所述数据写入所述内存的时间,将所述数据依序传送至远端设备的内存,以使所述远端设备将写入其内存的数据写入目标卷。
在上述实施例的基础上,可选的,还包括:
判断模块,用于判断所述内存的使用率是否达到预设阈值;
下刷模块,用于若所述内存的使用率达到所述预设阈值,则将所述内存中的所述数据下刷至磁盘;
删除模块,用于当所述数据下刷完成后删除所述内存中的所述数据。
在上述实施例的基础上,可选的,还包括:
预警模块,用于当所述磁盘的占用容量达到设定值时进行预警。
在上述实施例的基础上,可选的,还包括:
释放模块,用于根据预设周期释放所述磁盘的磁盘空间。
本发明还提供了一种数据备份设备,请参考图5,图5为本发明实施例所提供一种的数据备份设备的示意图;参考图5,该设备包括:
存储器1,用于存储计算机程序;
处理器2,用于执行所述计算机程序时实现如下的步骤:
接收主机发送的数据后将数据依次写入源卷与内存中;当数据写入内存后向主机发送反馈信息;根据数据写入内存的时间,将数据依序传送至远端设备的内存,以使远端设备将写入其内存的数据写入目标卷。
对于本发明所提供的设备的介绍请参照上述方法的实施例,本发明在此不做赘述。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如下的步骤:
接收主机发送的数据后将数据依次写入源卷与内存中;当数据写入内存后向主机发送反馈信息;根据数据写入内存的时间,将数据依序传送至远端设备的内存,以使远端设备将写入其内存的数据写入目标卷。
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明所提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备以及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦写可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的数据备份方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围。