一种远程数据备份方法及介质服务器的制作方法

文档序号:7924294阅读:252来源:国知局
专利名称:一种远程数据备份方法及介质服务器的制作方法
技术领域
本发明涉及数据备份技术领域,特别涉及一种远程数据备份方法及介质 服务器。
背景技术
数据备份是防止数据丢失的一种重要保护措施, 一般是将分布在用户工 作站或服务器上的数据,复制到某一介质服务器上保存,介质服务器上保存 的数据和原数据相同,这样在原数据发生问题时,可以利用介质服务器上的 数据进行恢复,从而保护重要数据的安全,又称数据容灾。
根据介质服务器与原数据的距离远近,现有备份方法可以分为远程备份 和本地备份,远程备份包括城市中不同的地点、不同的城市甚至不同国家之 间的数据备份,可有效地防范一些地域性的意外灾难和自然灾害,相比本地 备份能够提供更高的数据安全性。
不论是本地备份还是异地备份,其实现都是基于数据的复制,数据复制 的基本方式分两大类, 一类是同步复制, 一类是异步复制。
同步复制是指,将对本地数据系统的每一个写操作,首先同步到介质服 务器中,当介质服务器完成写操作后,对本地数据系统的写操作方可继续进 行。采用这种备份方式,对本地数据系统的性能影响是直接的,因为本地数 据系统的所有写操作必须等待介质服务器的写操作完成才能继续,因此,本 地数据系统对写操作的响应速度会明显下降,这种复制方式需要昂贵的硬件 设施方可具有可用性,因此该方式在实际环境中,基本上不采用。
异步复制是指,将本地数据系统的每一个写操作,都緩沖保存起来,同 时在本地数据系统中继续完成写操作,本地数据系统的写操作完成后可立即返回。而本地数据系统中采用另一单独工作线程,将緩沖的写操作同步到介 质服务器中。这种复制方式解决了本地数据系统的写操作响应速度问题,尤 其是在远程数据备份的应用下,大多使用异步复制方式。
图1为现有远程数据备份系统结构示意图,如图l所示,该系统包括本
地数据系统101、本地介质服务器102和远程介质服务器103。本地数据系 统101与本地介质服务器102相连,本地介质服务器102与远程介质服务器 103相连。
需要进行数据备份时,本地数据系统101向本地介质服务器102发出备 份事件,本地介质服务器102将接收到的备份事件分解为底层的输入输出 (10)操作,将本地数据系统101中的数据备份到本地介质服务器102,这 一步的数据备份可以采用同步或异步复制方式。
本地介质服务器102再通过异步复制方式将对数据的底层IO操作同步 到远程介质服务器103,即把底层10操作进行緩冲并同步到远程介质服务 器103。其中本地介质服务器102把底层IO操作同步到远程介质服务器103, 是指本地介质服务器102在远程介质服务器103上执行IO操作并将操作所 需的数据发送到远程介质服务器103中。
上述远程备份系统虽然解决了远程备份问题,但在实际应用时还具有如 下几点技术上的不足
首先,因为一个完整的备份事件可能涉及到多个底层IO操作,在采用 异步复制方式时,由于不同备份事件的操作可能互相关联,备份事件中具体 底层10操作的先后顺序需要严格对应,但由于无法判断具体底层IO操作的 关联性,因此很难保证本地数据系统中的10操作顺序与远程介质服务器上 同步的IO操作顺序完全相同,使得远程备份的数据与原数据的一致性难以 保证,造成备份数据不可用。
其次,本地数据系统通常需要持续不断地发出备份事件, 一个完整的备 份事件可以包含对一个数据的一个或多个底层IO操作,也可以包含对多个 数据的多个底层10操作。如果多个备份事件中的IO操作很可能都是对同一数据进行的,例如多次修改同一数据的值,显然,对于最终修改结果,只需
要执行最后一次的IO操作即可,即将之前的操作都合并到最后一次操作中; 但由于无法判断出IO操作是否具有重叠性,因而对于IO操作是无法进行合 并的,从而导致需要同步更多数据到远程介质服务器;另外,对于一些特殊 的备份事件,如合成备份、修改备份密钥等,事件本身只需要一部分参数, 即可在介质服务器上执行事件,如果是采用基于IO操作的异步复制方式, 则会同步更多数据到远程介质服务器。
另外,在进行异步方式远程备份时,可能会存在局部数据无法同步到远 程介质服务器的单操作故障,由于基于IO操作的同步无法判断该故障对于 整个备份过程具体有何影响,不能轻易丟弃该IO操作,只能中断整个备份 过程中断。

发明内容
本发明实施例提供一种远程数据备份方法,可以提高备份数据与原数据 的一致性。
本发明实施例提供一种介质服务器,可以提高备份数据与原数据的 一致性。
为达到上述目的,本发明的技术方案具体是这样实现的
—种远程数据备4分方法,该方法包括
监听将数据备份到本地介质服务器的备份事件;
采用异步复制方式将监听到的所述备份事件同步到远程介质服务器。
一种介质服务器,该介质服务器还包括
备份事件监听器,用于监听将数据备份到本地介质服务器的备份事件; 备份事件同步器,与所述备份事件监听器相连,用于采用异步复制方式
将监听到的所述备份事件同步到远程介质服务器。
由上述的技术方案可见,本发明的这种基于备份事件的远程数据备份方
法和介质服务器,监听将数据备份到本地介质服务器的备份事件,并采用异步复制方式将监听到的所述备份事件同步到远程介质服务器。远程介质服务 器执行的备份事件与原数据发出的备份事件完全一致,不必将备份事件分解 成底层IO操作进行同步,从而大大提高了远程介质服务器备份的数据与原 数据之间的一致性。


图1为现有远程数据备份系统结构示意图2为本发明实施例的远程数据备份方法流程图3为本发明实施例的备份事件在本地介质服务器中的存储结构示意
图4为本发明实施例的介质服务器的初始化方法流程图; 图5为本发明实施例合并备份事件的总体流程图; 图6为本发明实施例将保存在内存映像区的备份事件同步到远程介质 服务器的具体流程图7为本发明实施例的备份事件同步失败后的处理流程图; 图8为本发明实施例的本地介质服务器具体结构示意图; 图9为本发明实施例的备份事件同步器的具体结构示意图; 图IO为本发明实施例的同步模块具体结构示意图。
具体实施例方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举 实施例,对本发明进一步详细说明。
本发明主要是采用备份事件作为数据备份的执行基础,在进行远程备份 时通过监听将数据备份到本地介质服务器的备份事件;采用异步复制方式将 监听到的所述备份事件同步到远程介质服务器。在本地介质服务器和远程介 质服务器之间传递的是备份事件而不是具体的IO操作,本地介质服务器以 备份事件为基础同步操作单位,使同步到远程介质服务器的备份事件与本地数据系统发出的备份事件完全相同,最大可能地避免了将备份事件分解为多 个底层IO操作而使得IO操作之间可能造成的执行混乱,从而提高远程备份 的数据和原数据之间的一致性。
图2为本发明实施例的远程数据备份方法流程图,该方法可以用于图1 所示的远程数据备份系统。如图2所示,该流程包括以下步骤 步骤201,监听将数据备份到本地介质服务器的备份事件。 步骤202,采用异步复制方式将监听到的所述备份事件同步到远程介质 服务器。
在步骤201中,监听备份事件一般可以采用监听器来实现,监听器可以 在本地介质服务器启动时进行初始化,初始化侦听器时,可以首先创建一个 备份事件侦听器,该备份事件监听器可以安装到本地介质服务器上的备份事 件处理系统中。
备份事件包括3种类型
一、lt据备份请求(SYNC—BAK—DATA—REQUEST )类型,它表示在 本地介质服务器处理了某工作站或服务器的备份请求,该类型里包括如下内 容
备份数据文件创建操作(SYNC—CREATE—FILE—OPERATION ),表示 一个备份数据文件的创建,附加信息为创建的文件名。
备份数据文件删除操作(SYNC—DEL—FILE—OPERATION ),表示一个 备份数据文件的删除,附加信息为删除的文件名。
备份数据文件重命名操作(SYNC—RENAME—FILE—OPERATION),表 示一个备份数据文件名的重命名,附加信息为重命名前的文件名和重命名后 的文件名。
二、 修改备份数据备份密钥请求 (SYNC—MODIFY—BAKKEY—REQUEST ),它表示在本地介质服务器对指 定的备份数据文件修改其备份密钥,该类型包括的内容有旧备份密钥和新备 份密钥,待修改的备份数据文件列表。三、执行合成备份请求(SYNC—SYNTHETIC—BAK—REQUEST ),它 表示在本地介质服务器上某些备份数据文件上执行合成备份请求,该类型包 括要执行合成备份的备份数据文件以及合成范围。
根据这三种不同类型的备份事件,备份事件侦听器(ISyncEventListener ) 可以设置3种接口分别接收这三种类型的备份事件,例如备份事件接口 (onBakDataEvent ), 用 于接收数据备份请求 (SYNC—BAK—DATA_REQUEST )的备份事件,修改备份数据备份密钥接 口 ( onModifyBakKeyEvent )用于接收修改备份数据备份密钥请求 (SYNC—MODIFY—BAKKEY—REQUEST ), 合成备份接 口 (onSyntheticBakEvent ) 用于接收执行合成备份请求 (SYNC_SYNTHETIC—BAK—REQUEST )。
在步骤202中,所述采用异步复制方式具体来说,是在本地介质服务器 执行备份事件的同时,将监听到的备份事件緩冲保存起来,并同步到远程介 质服务器。具体来说,可以緩冲在本地介质服务器的内存或者存储介质中, 也可以緩沖到其他独立的存储介质中。较佳的方式是将监听到的备份事件添 加到本地介质服务器中划分出的内存映像区中保存,并将保存在内存映像区 的备份事件同步到远程介质服务器。
内存映像区在本发明中,是用于保存侦听过程中备份事件的存储区域, 它可以由CreateFileMapping或mmap等命令创建,可将磁盘上一个文件的 内容直接映射到内存中,当修改该内存块时,其修改的结果会直接保存到对 应的文件里。这样可以有效防止当意外断电、服务器重启等事件发生时,监 听到及执行的备份事件状态不会发生丢失的问题,大大提高了备份事件同步 的可靠性。
图3为本发明实施例的备份事件在本地介质服务器中的存储结构示意 图,如图3所示,在本地介质服务器上,维护一个映像文件表,该映像文件 表中可以包括多个映^象文件,每一个映像文件对应一个内存映^f象区,每一个 内存映像区可以是一块连续的内存块,可以存放多个备份事件。内存映像区可以在本地介质服务器启动时进行初始化,初始化内存映像 区时,如果本地介质服务器此前尚未建立有内存映像区,则创建一个新的内 存映像区,如果本地介质服务器此前已存在内存映像区,则打开已存在的内 存映像区,并将内存映像区的数据从磁盘中加载到内存中。
具体备份事件的存储结构也可以根据需要制定,例如以数据库的形式 等,这里仅仅是一个较佳的例子,不再——赘述了。
本地介质服务器在启动时,内存映像区和备份事件监听器的具体初始化
方法如下
图4为本发明实施例的介质服务器的初始化方法流程图,如图4所示, 该流程包括以下步骤
步骤401,初始化内存映像区。
步骤402,判断是否存在映像文件,若是则执行步骤403,否则执行步 骤404。
装载映像文件表,查看是否已经有保存的映像文件。 步骤403,打开已存在的映像文件。
如果存在映像文件,则遍历映〗象文件表,打开每一个映像文件。 步骤404,创建新的映4象文件。
如果没有已保存的映像文件,则创建一个新的内存映像区,将新内存映 <象区对应的文件添加到映〗象文件表。
步骤405,将映像文件的内容映射到内存中。
将映像文件的内的数据从磁盘中加载到内存中的内存映像区。
步骤406,创建备份事件监听器。
步骤407,安装备份事件监听器。
备份事件监听器可以安装到本地介质服务器上备份请求处理系统中。 本地介质服务器初始化完成后,即可进行正常工作。但这里的初始化方 法仅仅是一个例子,具体如何初始化完全可以根据具体需要制定。
另外,在上述实施例的基础上,还可以进一步在将监听到的备份事件同步到远程介质服务器之前,将可以合并的备份事件进行合并,从而减少备份 操作和需要传输的数据。
具体来说,可以在将监听到的备份事件添加到内存映像区保存之前,判 断所述监听到的备份事件是否可以与所述保存在内存映像区的备份事件进 行合并,若是,则将所述监听到的备份事件与所述保存的备份事件进行合并, 否则直接添加到内存映像区中。
上述的合并操作可以是新的备份事件合并到已存在的备份事件,也可以 是将已存在的备份事件合并到新的备份事件,如果是合并到新的备份事件, 则可将已存在的备份事件标记为已同步,如果是合并到已存在的备份事件, 则不将新的备份事件保存到内存映像区。
图5为本发明实施例合并备份事件的总体流程图,如图5所示,该流程 包括以下步骤
步骤501,接收监听到的备份事件。
步骤502,判断备份事件是否可以合并,若是,则执行步骤503,否则 执行步骤504。
步骤503,与已存在的备份事件进行合并。 步骤504,将备份事件添加到内存映像区。
其中, 一个备份事件中可能存在多个具体备份操作,在进行合并时可以 细化到备份事件中的具体备份操作是否可以合并。
具体判断备份事件或备份事件中的具体备份操作是否可以合并时可以 参考以下例子
一 、当新备份事件为修改备份数据备份密钥请求 (SYNC—MODIFY—BAKKEY—REQUEST ),则不可合并。
二 、 当新备份事件为执行合成备份请求 (SYNC_SYNTHETIC—BAK—REQUEST ),在该事件的参数中,根据要合成
备份的备份数据文件查找该文件的其它备份事件,如果不存在,则不可合并; 如果存在时,可继续判断i 、 如果已存在的备份事件为执行合成备份请求
(SYNC—SYNTHETIC—BAK_REQUEST ),则将两个合成备份事件的合成备 份范围进行合并后,将新备份事件保存到内存映像区,并将已存在的备份事 件标记为已同步。
ii 、如果已存在的备份事件为数据备份请求 (SYNC—BAK—DATA—REQUEST ),则不合并。
三、当新备份事件为数据备份请求(SYNC_BAK—DATA—REQUEST ), 则可继续遍历该事件里的具体操作
i 、如果遍历的操作为备份数据文件创建操作 (SYNC—CREATE_FILE—OPERATION ),在该操作的参数中,根据创建的
文件名查找该文件的其它事件或操作,如果不存在,则不可合并,如果已存 在,则继续判断
如果已存在为执行合成备份请求 (SYNC—SYNTHETIC_BAK_REQUEST ),则合并,已存在备份事件标记为 已同步,新备份事件的此操作保存到内存映像区;如果已存在为备份数据文 件删除操作(SYNC_DEL—FILE—OPERATION ),则合并,已存在备份事件 的操作标记为已同步,新备份事件的此操作保存到内存映像区;如果已存在 为备份数据文件重命名操作(SYNC—RENAME—FILE_OPERATION )的重命 名前的文件名,则不合并;如果已存在为备份数据文件重命名操作 (SYNC—RENAME_FILE—OPERATION)的重命名后的文件名,则合并,已 存在备份事件的操作标记为已同步,新备份事件的此操作保存到内存映像 区;如果已存在为备份数据文件创建操作 (SYNC—CREATE—FILE—OPERATION ),则合并,已存在备份事件的操作 不修改,新备份事件的此操作不保存到内存映像区。
ii 、如果遍历的操作为备份数据文件删除操作 (SYNC—DEL—FILE—OPERATION ),在该操作的参数中,根据删除的文件
名查找该文件的其它事件或操作,如果不存在,则不可合并,如果已存在,则继续判断
如 果 存 在 为 执 行 合 成 备 份 请 求
(SYNC—SYNTHETIC—BAK_REQUEST ),则合并,已存在备份事件标记为 已同步,新备份事件的此操作保存到内存映像区;如果已存在为备份数据文 件删除操作(SYNC—DEL—FILE—OPERATION ),则合并,已存在备份事件 的操作不修改,新备份事件的此操作不保存到内存映像区;如果已存在为备 份数据文件重命名操作(SYNC_RENAME_FILE—OPERATION )的重命名前 的文件名,则合并,已存在备份事件的操作不修改,新备份事件的此操作不 保存到内存映像区;如果已存在为备份数据文件重命名操作
(SYNC_RENAME—FILE—OPERATION )的重命名后的文件名,则合并,已 存在备份事件的操作标记为已同步,新备份事件的此操作不保存到内存映像 区;如果已存在为备份数据文件创建操作
(SYNC_CREATE_FILE—OPERATION ),则合并,已存在备份事件的操作 标记为已同步,新备份事件的此操作不保存到内存映像区。
iii 、如果遍历的操作为备份数据文件重命名操作
(SYNC_RENAME—FILE—OPERATION ),在该操作的参数中,才艮据重命名 前的文件名查找该文件的其它事件或操作,如果不存在,则不可合并,并继 续执行步骤iv,如果已存在,则继续判断
如 果存 在 为 执 行合 成 备 份 请 求
(SYNC_SYNTHETIC—BAK—REQUEST ),则合并,已存在备份事件标记为 已同步,新备份事件的此操作保存到内存映像区;如果已存在为备份数据文 件删除操作(SYNC—DEL_FILE—OPERATION ),则合并,已存在备份事件 的操作标记为已同步,新备份事件的此操作保存到内存映像区;如果已存在 为备份数据文件重命名操作(SYNC_RENAME—FILE—OPERATION ),则不 可合并,且不再执行步骤iv;如果已存在为备份数据文件创建操作
(SYNC_CREATE—FILE_OPERATION ),则合并,已存在备份事件的操作 的文件名修改为重命名后的文件名,新备份事件的此操作不保存到内存映像区。
iv 、 如果遍历的操作为备份数据文件重命名操作 (SYNC—RENAME—FILE—OPERATION ),在该操作的参数中,根据重命名 后的文件名查找该文件的其它事件或操作,如果不存在,则不可合并,如果 已存在,则继续判断
如 果 存 在 为 执 行 合 成 备 份 请 求 (SYNC_SYNTHETIC—BAK—REQUEST ),则不可合并;如果已存在为备份 数据文件删除操作(SYNC—DEL_FILE—OPERATION ),则不可合并;如果 已存在为备份数据文件重命名操作(SYNC—RENAME—FILE—OPERATION ), 则不可合并;如果已存在为备份数据文件创建操作 (SYNC—CREATE—FILE—OPERATION ),则合并,已存在备份事件的操作 标记为已同步,新备份事件的此操作保存到内存映像区。
上述合并备份事件的例子是根据现有的备份事件和具体备份操作所举 的例子,但并不仅限定这一种合并方法,根据备份事件和具体备份操作的不 同,可以根据需要制定不同的合并方法,但原理都是以节省备份操作为原则 进行合并,这里就不再——赘述了。
另外,在步骤202中,将保存在内存映像区的备份事件同步到远程介质 服务器时,可以遍历内存映像区中保存的备份事件,依次将尚未同步到远程 介质服务器的备份事件同步到远程介质服务器,若该备份事件同步成功,则 标识该备份事件为已同步,否则忽略该次同步操作,继续同步下一备份事件。 具体同步操作的流程举例如下
图6为本发明实施例将保存在内存映像区的备份事件同步到远程介质 服务器的具体流程图,如图6所示,该流程包括如下步骤 步骤601,遍历内存映像区的备份事件。 遍历内存映像区的备份事件,获得某一备份事件。
步骤602,判断备份事件是否已同步,若是,则返回步骤601,否则继 续执行步骤603。步骤603,判断备份事件是否为备份数据请求事件,若是,则执行步骤
604,否则执行步骤605。
如果备份事件尚未标记为同步,则判断该事件是否为数据备份请求 (SYNC—BAK—DATA—REQUEST )。
步骤604,遍历备份数据请求中的备份操作,执行步骤609。
遍历备份数据请求中的备份操作,获得某一备份操作。
步骤605,向远程介质服务器发送备份事件及相关参数。
步骤606,判断是否同步成功,若是,则执行步骤607,否则执行步骤
608。
步骤607,将备份事件标记为已同步,返回步骤601。 步骤608,忽略该次同步4喿作,返回步骤601。
步骤609,判断备份操作是否为备份数据文件创建操作,若是则执行步 骤610,否则执行步骤605。
步骤610,向远程介质服务器发送备份数据文件。
步骤611,判断备份数据文件是否传输成功,若是,则执行步骤607, 否则执行步骤608。
具体同步操作与现有的同步操作相近,但是在同步时以备份事件为基础
而不是现有的IO操作。
在上述将保存在内存映像区的备份事件同步到远程介质服务器的过程 中,可能会因网络故障、介质原因、其它未知原因而导致备份事件或备份事 件的某操作同步失败,对于同步失败的备份事件,除了忽略该次同步操作外, 还可以进一步判断本次同步失败距备份事件第 一次同步失败的时间是否大 于预设的保留时间,是则将该备份事件标识为已同步,表示丢弃该备份事件, 不再进行同步尝试,否则忽略该次同步操作,具体流程举例如下
图7为本发明实施例的备份事件同步失败后的处理流程图,如图7所示, 该流程包括以下步骤
步骤701,判断备份事件是否同步失败过,是则执行步骤703,否则执行步骤702。
可以通过备份事件或备份事件的某操作的第 一 次失败时间判断是否已 失败过,如果其第一次失败时间值为0,则表示尚未失败。
步骤702,将当前时间保存为备份事件第一次失败的时间,执行步骤
705。
可以将当前时间保存到备份事件或备份事件的某操作的第一次失败时 间参数里。
步骤703,判断当前时间与备份事件第 一次失败的时间之差是否大于预 设的保留时间,若是,则执行步骤704,否则执行步骤705。 步骤704,将备份事件标识为已同步。
标识为已同步,表示丟弃该事件或操作。将不再对该备份事件进行同步 尝试。
步骤705,忽略该次同步操作。
忽略该次同步操作后,可以继续下一备份事件的同步。
通过对备份事件失败时间的判断,并丢弃失败时间过长的备份事件,可 以进 一 步减少某 一 个备份事件执行失败对整个备份过程的影响。
最后,本发明还提供了一种介质服务器,可以实现上述以备份事件为基 础的远程备份方法,其中在上述远程备份方法的实施例中的本地介质服务器 的具体结构举例如下
图8为本发明实施例的本地介质服务器具体结构示意图,如图8所示, 该介质服务器包括
备份事件监听器801,用于监听将数据备份到本地介质服务器的备份事
件;
备份事件同步器802,与所述备份事件监听器相连,用于采用异步复制 方式将监听到的所述备份事件同步到远程介质服务器。
图9为本发明实施例的备份事件同步器的具体结构示意图,如图9所示, 该备份事件同步器包括本地备份模块901,与所述备份事件监听器801相连,用于将数据备份 到本地介质服务器;
内存映像区卯2,与所述备份事件监听器801相连,用于保存监听到的 备份事件;
同步模块卯3,与所述内存映像区相连,用于将保存在内存映像区902 的备份事件同步到远程介质服务器。
较佳地,所述备份事件同步器还可以进一步包括备份事件合并器,连 接在所述内存映像区902与所述备份事件监听器801之间,用于判断监听到 的备份事件是否可以与保存在所述内存映像区902的备份事件进行合并,若 是,则将监听到的备份事件与所述保存的备份事件进行合并,否则直接添加 到内存映1^象区卯2中保存。
图IO为本发明实施例的同步模块具体结构示意图,如图IO所示,该同 步模块包括
事件遍历单元1001,与所述内存映像区卯2相连,用于遍历内存映像 区902中保存的备份事件,获取尚未同步到远程介质服务器的备份事件;
事件同步单元1002,与所述事件遍历单元1001相连,用于将所述事件 遍历单元1001获取的尚未同步到远程介质服务器的备份事件同步到远程介 质服务器;
同步判决单元1003,与所述事件同步单元1002相连,用于判断所述事 件同步单元1002同步到远程介质服务器的备份事件是否同步成功;
同步标识单元1004,与所述同步判决单元1003及内存映^f象区902相连, 用于在所述内存映像区902中,将所述同步判决单元1003判断为同步成功 的备份事件标识为已同步。
较佳地,在所述同步模块中还可以进一步包括时间判决单元,与所述 同步判决单元1003相连,用于在所述同步判决单元1003判断备份事件同步 不成功时,进一步判断本次同步失败距备份事件第 一次同步失败的时间是否 大于预设的保留时间。同时,所述同步标识单元1004进一步与所述时间判决单元相连,用于在所述时间判决单元判断本次同步失败距备份事件第一次 同步失败的时间大于预设的保留时间时,将该备份事件标记为已同步。
由上述的实施例可见,本发明这种基于备份事件的远程数据备份方法和 介质服务器,监听将数据备份到本地介质服务器的备份事件,并采用异步复 制方式将监听到的所述备份事件同步到远程介质服务器。远程介质服务器执 行的备份事件与原数据发出的备份事件完全一致,不必将备份事件分解成底 层IO操作进行同步,因此大大提高了远程介质服务器备份的数据与原数据 之间的一致性。另外,由于备份事件的具体操作可知,因此在进行备份事件 同步时,可以将能够合并的备份事件或备份事件中的搡作进行合并,从而减 少了需要同步的数据量,提高同步性能。最后,由于备份事件的具体操作的 可知性,在备份事件同步失败时,可以直接丢弃该备份事件,不影响其它备 份事件的同步操作。
所应理解的是,以上所述仅为本发明的较佳实施方式而已,并不用于限 定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等 同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种远程数据备份方法,其特征在于,该方法包括监听将数据备份到本地介质服务器的备份事件;采用异步复制方式将监听到的所述备份事件同步到远程介质服务器。
2、 如权利要求1所述的远程数据备份方法,其特征在于,所述采用异步复 制方式将监听到的所述备份事件同步到远程介质服务器包括本地介质服务器执行备份事件的同时,将监听到的备份事件添加到内存映 像区保存,并将保存在内存映像区的备份事件同步到远程介质服务器。
3、 如权利要求2所述的远程数据备份方法,其特征在于,所述将监听到的 备份事件添加到内存映像区保存之前,该方法进一步包括判断所述监听到的备份事件是否可以与所述保存在内存映像区的备份事件 进行合并,若是,则将所述监听到的备份事件与所述保存的备份事件进行合并, 否则直接添加到内存映像区中。
4、 如权利要求2或3所述的远程数据备份方法,其特征在于,所述将保存 在内存映像区的备份事件同步到远程介质服务器包括遍历内存映像区中保存的备份事件,依次将尚未同步到远程介质服务器的 备份事件同步到远程介质服务器,若该备份事件同步成功,则标识该备份事件 为已同步,否则忽略该次同步操作。
5、 如权利要求4所述的远程数据备份方法,其特征在于,若所述备份事件 同步失败,则进一步判断本次同步失败距备份事件第一次同步失败的时间是否 大于预设的保留时间,是则将该备份事件标识为已同步,否则忽略该次同步操 作。
6、 如权利要求l、 2或3所述的远程数据备份方法,其特征在于,所述将 所述监听到的备份事件与所述保存的M事件进行合并,还包括将所述监听 到的备份事件中的备份操作与所述保存的备份事件中的备份操作进行合并。
7、 一种介质服务器,作为本地介质服务器使用,其特征在于,该介质服务器包括备份事件监听器,用于监听将数据备份到本地介质服务器的备份事件; 备份事件同步器,与所述备份事件监听器相连,用于采用异步复制方式将 监听到的所述备份事件同步到远程介质服务器。
8、 如权利要求7所述的介质服务器,其特征在于,所述备^f分事件同步器包括本地备份模块,与所述备份事件监听器相连,用于将数据备份到本地介质 服务器;内存映像区,与所述备份事件监听器相连,用于保存监听到的备份事件; 同步模块,与所述内存映像区相连,用于将保存在内存映像区的备份事件 同步到远程介质服务器。
9、 如权利要求8所述的介质服务器,其特征在于,所述备份事件同步器进 一步包括备份事件合并器,连接在所述内存映像区与所述备份事件监听器之间,用 于判断监听到的备份事件是否可以与保存在所述内存映像区的备份事件进行合 并,若是,则将监听到的备份事件与所迷保存的备份事件进行合并,否则直接 添加到内存映像区中保存。
10、 如权利要求8或9所述的介质服务器,其特征在于,所述同步模块包括事件遍历单元,与所述内存映像区相连,用于遍历内存映像区中保存的备 份事件,获取尚未同步到远程介质服务器的备份事件;事件同步单元,与所述时间遍历单元相连,用于将所述事件遍历单元获取 的尚未同步到远程介质服务器的^f分事件同步到远程介质服务器;同步判决单元,与所述事件同步单元相连,用于判断所述事件同步单元同 步到远程介质服务器的备份事件是否同步成功;同步标识单元,与所述同步判决单元及内存映像区相连,用于在所述内存 映像区中,将所述同步判决单元判断为同步成功的名」f分事件标识为已同步。
11、如权利要求IO所述的介质服务器,其特征在于,所述同步模块进一步包括时间判决单元,与所述同步判决单元相连,用于在所述同步判决单元判断 备份事件同步不成功时,判断本次同步失败距备份事件第一次同步失败的时间 是否大于预设的保留时间;所述同步标识单元,进一步与所述时间判决单元相连,用于在所述时间判 决单元判断本次同步失败距备份事件第一次同步失败的时间大于预设的保留时 间时,将该备份事件标记为已同步。
全文摘要
本发明公开了一种远程数据备份方法,该方法包括监听将数据备份到本地介质服务器的备份事件;采用异步复制方式将监听到的所述备份事件同步到远程介质服务器。由于远程介质服务器执行的备份事件与原数据发出的备份事件完全一致,不必将备份事件分解成底层IO操作进行同步,从而大大提高了远程介质服务器备份的数据与原数据之间的一致性。本发明还同时公开了一种介质服务器。
文档编号H04L1/22GK101414946SQ20081020322
公开日2009年4月22日 申请日期2008年11月21日 优先权日2008年11月21日
发明者贺鸿富, 骁 陈 申请人:上海爱数软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1