CN101741536A - 数据级容灾方法、***和生产中心节点 - Google Patents
数据级容灾方法、***和生产中心节点 Download PDFInfo
- Publication number
- CN101741536A CN101741536A CN200810227333A CN200810227333A CN101741536A CN 101741536 A CN101741536 A CN 101741536A CN 200810227333 A CN200810227333 A CN 200810227333A CN 200810227333 A CN200810227333 A CN 200810227333A CN 101741536 A CN101741536 A CN 101741536A
- Authority
- CN
- China
- Prior art keywords
- data
- duplication
- local
- module
- index
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据级容灾方法,包括:对应用程序运行产生的数据执行快照处理,生成快照镜像数据;对快照镜像数据执行本地重复数据删除,生成经过本地重复数据删除处理的数据和相应的索引数据;对经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除,生成经过全局重复数据删除处理的数据和相应的索引数据;将经过全局重复数据删除处理的数据和索引数据发送给备份中心节点。本发明还公开了一种数据级容灾***和生产中心节点,能够减少生产中心节点和备份中心节点之间传输的数据容量,降低网络带宽性能的需求,以便更加快速有效的实现数据级容灾,提高容灾***的可靠性和可用性。
Description
技术领域
本发明涉及网络通信中的容灾技术,尤其涉及一种数据级容灾方法、***和生产中心节点。
背景技术
容灾是指为了保证关键业务和应用在经历各种灾难后,仍然能够最大限度的提供正常服务所进行的一系列***计划和建设行为。常见的灾难事件包括如火灾、洪水、地震、台风等自然灾难;也有如设备故障、软件错误、电信网络中断和电力故障等突发灾难;还有如操作员错误、破坏、植入有害代码和恐怖袭击等人为因素造成的灾难。容灾行业的起源和发展是计算机技术发展的必然产物,同时也反映了信息化***及数据对个人、企业和国家的重要性。容灾的实质是确保永不停顿的业务运营,容灾的最终建设目的是保证业务的连续性。
容灾***由生产中心节点和备份中心节点组成,容灾***的工作原理为:在正常工作状态下,各生产中心节点将需要保护的数据传输到备份中心节点进行备份存储;当灾难发生导致容灾***出现故障时,从备份中心节点恢复生产中心节点之前传输到备份中心节点的数据。可以看出,容灾的关注点在于数据本身,在生产中心节点和备份中心节点之间需要保持数据的同步变化,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏。
目前,业界常见的容灾***包括两大类,第一类是基于存储层的容灾***,第二类是基于服务器层的容灾***。第一类容灾***在高端存储中占据主流地位,其主要是基于磁盘阵列复制技术,通过存储***内建的固件或操作***,利用光纤通道等专用线路实现物理存储设备之间的数据复制或镜像,可以支持数据的同步复制和异步复制。这类容灾***的缺点在于,不具备重复数据删除能力,生产中心节点和备份中心节点之间的数据传输量极大,对网络带宽的要求很高;采用同步方式进行数据传输,对中心节点的业务处理性能影响较大。
第二类容灾***在中低端存储中占据主流地位,其通过安装在服务器上的数据复制软件,或是应用程序提供的数据复制、灾难恢复工具,利用传输控制协议(TCP,Transmission Control Protocol)/网际协议(IP,Internet Protocol)网络实现数据复制。生产中心节点和备份中心节点之间的传输距离不受限制,并且数据复制软件可以兼容不同品牌的服务器和存储设备,投入成本较低。这类容灾***的缺点在于,不具备重复数据删除能力,生产中心节点和备份中心节点之间的数据传输量较大,对网络带宽的要求较高;由于数据复制软件是安装在服务器上,因此对应用***的性能影响较大,需要占用较多的服务器资源,对中心节点的业务处理性能影响也较大。
发明内容
有鉴于此,本发明的主要目的在于提供一种数据级容灾方法、***和生产中心节点,以减少生产中心节点和备份中心节点之间传输的数据容量,降低网络带宽性能的需求,提高容灾***的可靠性和可用性。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种数据级容灾方法,包括:
对应用程序运行产生的数据执行快照处理,生成快照镜像数据;
对所述快照镜像数据执行本地重复数据删除,生成经过本地重复数据删除处理的数据和相应的索引数据;
对所述经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除,生成经过全局重复数据删除处理的数据和相应的索引数据;
将所述经过全局重复数据删除处理的数据和索引数据发送给备份中心节点。
所述重复数据删除是采用基于扇区级别的重复数据删除策略,具体为:
以扇区为单位,通过哈希Hash散列算法为每个数据单元产生一个特定的散列值;将新写入的数据所对应的散列值与已有的散列值索引进行比较,如果所述散列值已经存在于所述散列值索引中,则对所述数据进行删除;否则,对所述数据进行存储,并将所述数据对应的散列值添加到所述散列值索引中。
所述对经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除之前,该方法还包括:
检测是否存在其他生产中心节点,如果不存在,则将所述经过本地重复数据删除处理的数据和索引数据直接发送给所述备份中心节点;如果存在,则对经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除。
所述检测是否存在其他生产中心节点,具体包括:
向其他生产中心节点发出携带咨询其他生产中心节点信息的广播请求包,如果能收到响应数据包,则判定存在其他生产中心节点;否则,判定不存在其他生产中心节点。
所述全局重复数据删除具体为:
通过比较各个生产中心节点中经过本地重复数据删除处理的索引数据来分析是否具备相同的冗余数据,如果存在相同的索引数据,则根据各个生产中心节点的优先级来删除低优先级的冗余数据和相应的索引数据,只保留最高优先级的数据和索引数据。
本发明还提供了一种数据级容灾***,包括通过外部网络相连的生产中心节点和备份中心节点;
其中,所述生产中心节点,用于对应用程序运行产生的数据执行快照处理,生成快照镜像数据,并对所述快照镜像数据依次执行本地重复数据删除和全局重复数据删除,将经过全局重复数据删除处理的数据和索引数据发送给所述备份中心节点;
所述备份中心节点,用于对来自所述生产中心节点的数据和索引数据进行存储备份。
所述生产中心节点进一步包括:
应用程序模块,用于执行应用程序,产生与业务相关的数据;
本地重复数据删除模块,用于执行本地重复数据删除,生成所述经过本地重复数据删除处理后的数据和索引数据;
全局重复数据删除模块,用于执行全局重复数据删除,生成所述经过全局重复数据删除处理后的数据和索引数据;
第一本地存储模块,用于对所述应用程序模块产生的数据、经过本地重复数据删除处理后的数据和索引数据、经过全局重复数据删除处理后的数据和索引数据分别进行存储;
数据发送模块,用于将所述第一本地存储模块中经过全局重复数据删除处理后的数据和索引数据发送到所述备份中心节点;
第一管理模块,用于对所述应用程序模块产生的数据执行快照处理,将得到的快照镜像数据存储到所述第一本地存储模块;用于管理所述第一本地存储模块中数据的正常运行;还用于监控所属生产中心节点的磁阵状态,监控其他生产中心节点内的磁阵状态。
所述第一本地存储模块进一步包括:
本地快照缓存子模块,用于存储执行快照处理所生成快照镜像数据;
本地第一缓存子模块,用于存储来自所述本地快照缓存子模块的经过本地重复数据删除处理的数据和索引数据;
本地第二缓存子模块,用于存储来自所述本地第一缓存子模块的经过全局重复数据删除处理的数据和索引数据。
所述备份中心节点进一步包括:
数据接收模块,用于接收来自所述生产中心节点的数据;
第二本地存储模块,用于对所接收的数据进行存储;
第二管理模块,用于管理所述数据的正常运行,并监控管理所述备份中心节点内的磁阵状态。
本发明还提供了一种生产中心节点,包括:
应用程序模块,用于执行应用程序,产生与业务相关的数据;
本地重复数据删除模块,用于执行本地重复数据删除,生成经过本地重复数据删除处理后的数据和索引数据;
全局重复数据删除模块,用于执行全局重复数据删除,生成经过全局重复数据删除处理后的数据和索引数据;
第一本地存储模块,用于对所述应用程序模块产生的数据、经过本地重复数据删除处理后的数据和索引数据、经过全局重复数据删除处理后的数据和索引数据分别进行存储;
数据发送模块,用于将所述第一本地存储模块中经过全局重复数据删除处理后的数据和索引数据发送到备份中心节点;
第一管理模块,用于对所述应用程序模块产生的数据执行快照处理,将得到的快照镜像数据存储到所述第一本地存储模块;用于管理所述第一本地存储模块中数据的正常运行;还用于监控所属生产中心节点的磁阵状态,监控其他生产中心节点内的磁阵状态。
所述第一本地存储模块进一步包括:
本地快照缓存子模块,用于存储执行快照处理所生成快照镜像数据;
本地第一缓存子模块,用于存储来自所述本地快照缓存子模块的经过本地重复数据删除处理的数据和索引数据;
本地第二缓存子模块,用于存储来自所述本地第一缓存子模块的经过全局重复数据删除处理的数据和索引数据。
本发明所提供的数据级容灾方法、***和生产中心节点,解决了目前容灾***中生产中心节点和备份中心节点之间需要高带宽网络资源的问题;通过执行本地重复数据删除和全局重复数据删除技术,能够有效降低生产中心节点和备份中心节点之间传输的数据容量;尤其是对于多个生产中心节点需要对同一备份中心节点进行数据备份的场景,能够有效降低对带宽需求,大大加快数据级容灾的数据备份速度,显著提高数据级容灾的恢复时间点目标(RPO,Recovery Point Objective)和恢复时间目标(RTO,Recovery Time Objective)指标,提高容灾***的可靠性和可用性。
本发明采用基于扇区级别的重复数据删除技术,相比现有技术中基于文件级和块级的重复数据删除技术,进一步细化了重复数据的检测粒度,能够更有效的降低整体的数据容量。
本发明采用基于磁阵的异地传输方式,并采用快照功能对需要传输的数据进行备份,再通过磁阵设备内嵌的本地和全局重复数据删除技术删除冗余数据,通过这种传输方式能够大大降低对原有***的性能影响。
附图说明
图1为本发明一种数据级容灾***的组成结构示意图;
图2为本发明一种数据级容灾***方法的流程图;
图3为本发明实施例的三层数据结构处理机制的示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
本发明提供了一种基于全局重复数据删除技术的数据级容灾***,旨在解决现有的容灾***中生产中心节点和备份中心节点之间数据传输量大,带宽需求高的问题。
如图1所示,本发明所提供的数据级容灾***包括:通过外部网络连接的多个生产中心节点和1个备份中心节点。其中,生产中心节点为负责运行业务应用程序的节点,备份中心节点为负责保存备份数据的节点。外部网络可以是外部局域网(LAN,Local Area Network)或广域网(WAN,Wide Area Network)等等。外部网络又分为公网和私网,公网用于提供用户访问服务的通道,私网用于提供各中心节点(包括生产中心节点和备份中心节点)之间的数据复制和心跳信息传输。备份中心节点可以位于生产中心节点的近端,也可以位于生产中心节点的远端。在容灾***正常工作状态下,各生产中心节点将需要保护的数据通过外部网络传输给备份中心节点进行复制备份;当灾难产生导致容灾***故障时,各生产中心节点需要从备份中心节点恢复之前传输到备份中心节点的数据。
图1中生产中心节点10、生产中心节点20和生产中心节点30的内部结构相同,下面以生产中心节点10为例进行内部结构的说明。生产中心节点10包括一款磁阵设备,磁阵设备的内部固件包括:应用程序模块11、本地重复数据删除模块12、全局重复数据删除模块13、第一本地存储模块14、数据发送模块15和第一管理模块16。
应用程序模块11,用于运行业务的应用程序,并根据业务的运行生成与业务相关的数据。
本地重复数据删除模块12,负责处理本地重复数据删除,生成经过本地重复数据删除处理后的数据和索引数据。
全局重复数据删除模块13,负责处理全局重复数据删除,生成经过全局重复数据删除处理后的数据和索引数据。需要指出的是,本发明中的重复数据删除,包括本地重复数据删除和全局重复数据删除,采用的是基于扇区级别的重复数据删除策略。关于扇区级别的重复数据删除策略的具体实现,将在后续进行详细说明。
第一本地存储模块14,与应用程序模块11、本地重复数据删除模块12和全局重复数据删除模块13分别相连,用于对应用程序模块11生成的数据、经过本地重复数据删除处理后的数据和索引数据、经过全局重复数据删除处理后的数据和索引数据,分别进行存储。
其中,第一本地存储模块14包括:本地快照缓存子模块141、本地第一缓存子模块142和本地第二缓存子模块143。第一管理模块16定时对应用程序模块11产生的数据执行快照处理,并将生成的快照镜像数据存放在本地快照缓存子模块141中。本地重复数据删除模块12对本地快照缓存子模块141中存储的快照镜像数据执行本地重复数据删除操作,生成经过本地重复数据删除处理后的数据和索引数据;本地第一缓存子模块142为经过本地重复数据删除处理后的数据和索引数据提供存储空间。全局重复数据删除模块13对本地第一缓存子模块142中的数据和索引数据执行全局重复数据删除操作,生成经过全局重复数据删除处理后的数据和索引数据,本地第二缓存子模块143为经过全局重复数据删除处理后的数据和索引数据提供存储空间。关于本地重复数据删除和全局重复数据删除的具体操作,将在后续进行详细说明。
数据发送模块15,与第一本地存储模块14相连,用于将本地第二缓存子模块143中存储的经过全局重复数据删除处理后的数据和索引数据发送到备份中心节点40。
第一管理模块16,负责定时对应用程序模块11产生的数据执行快照处理;负责检测第一本地存储模块14中的各个缓存子模块的缓存空间是否为满;负责监控本生产中心节点内的磁阵状态,以及监控其他生产中心节点的磁阵状态,决定是否执行全局重复数据删除操作;在每个生产中心节点的第一管理模块内都会设置一个优先级,从而在执行全局重复数据删除时,当不同生产中心节点之间存在相同的数据时,经过比较彼此生产中心节点的优先级后,删除低优先级的冗余数据和索引数据,只保留最高优先级的数据和索引数据,以保证数据的唯一性。所谓磁阵状态,即数据的运行状态。
备份中心节点40的内部结构比生产中心节点10简单,包括:数据接收模块41、第二本地存储模块42和第二管理模块43。
数据接收模块41,用于接收各个生产中心节点发送过来的经过全局重复数据删除处理后的数据和索引数据。
第二本地存储模块42,连接数据接收模块41,用于对数据接收模块41所接收的数据和索引数据进行存储。
第二管理模块43,连接第二本地存储模块42,用于管理数据的正常运行,并监控管理本中心节点内的磁阵状态。
从上述对于本发明数据级容灾***的描述中可知,本地重复数据删除模块对自身所属生产中心节点中的数据执行重复数据删除操作,可以删除不必要的冗余数据,降低数据的冗余量;全局重复数据删除模块对所有生产中心节点中的数据执行全局的重复数据删除操作,保证数据在所有生产中心节点中存在的唯一性,可以进一步降低数据的冗余量,最终达到减少生产中心节点和备份中心节点之间传输的数据容量的目的。
由于数据删除等重要操作是在生产中心节点侧执行的,因此,生产中心节点在容灾***起着至关重要的作用。下面对生产中心节点在数据级容灾中所执行的具体操作进一步详细阐述,如图2所示,主要包括以下步骤:
步骤201,应用程序运行,产生与业务相关的数据。
步骤202,针对应用程序生成的数据,定时执行快照处理,生成快照镜像数据。
步骤203,检测本地快照缓存空间是否已满,如果是,则等待一定的时间,继续检测;否则,执行步骤204。
所述的本地快照缓存空间,即对应第一本地存储模块14中的本地快照缓存子模块141的存储空间。需要指出的是,本地快照缓存空间可以同时容纳多份快照影像数据,当本地快照缓存空间中有数据而又没满时,可以继续向本地快照缓存空间中写数据。但需要注意的是,在后续对快照影像数据执行本地重复数据删除操作前,需要检测当前有无本地重复数据删除操作,如果有,则等待前一重复数据删除操作执行完之后,再执行本次重复数据删除操作;如果没有,则可以直接执行本次重复数据删除操作。如此可以确保同一时刻最多只运行单个本地重复数据删除操作,因为重复数据删除操作对***内存需求很多,同时运行多个重复数据删除操作会对整体***的性能造成较大的影响。
步骤204,将生成的快照镜像数据存储到本地快照缓存空间中。
需要指出的是,本发明对快照镜像数据执行本地重复数据删除操作,而不是直接对应用程序运行产生的原始数据进行操作,可以减小对原有***的性能产生影响。
步骤205,从本地快照缓存空间中读取快照镜像数据,并对快照镜像数据执行本地重复数据删除操作,生成经过本地重复数据删除处理后的数据和索引数据。
重复数据删除,是一种可以减小数据存储需求的手段。重复数据删除的处理过程是通过删除冗余数据,确保实际上只有唯一的数据段被存储。而被删除的重复数据将由一个指向原数据的指针所代替。这个指针是位于删除前数据的位置,以替换删除之前的数据,通过重定向方式指向对应的唯一数据。例如:原始数据为512K字节的大小,经过重复数据删除后,用1个字节的指针在原始数据的位置代替原始数据,从而降低了数据的冗余量。另外,在索引数据中也进行相应的记录,使得***在恢复时能够根据该指针找到对应的数据,最终恢复出原始的完整数据。
本发明采用的本地重复数据删除策略是基于扇区级别,即以每个扇区为单位,通过哈希(Hash)散列算法,如信息-摘要算法(MD5,Message-digest Algorithm5)或安全散列算法(SHA-1,Secure Hash Algorithm-1),为每个数据单元产生一个特定的散列值。将新写入的数据所对应的散列值与已有的散列值索引进行比较,如果该散列值已经存在于散列值索引中,则判定新写入的数据为重复的,不需要对该数据进行存储;否则,判定新写入的数据为新数据,并将该数据对应的散列值添加到散列值索引中,该数据也被存储在本地快照缓存空间中。
基于扇区级别的重复数据删除策略,相比现有技术中基于文件级和块级的重复数据删除策略,其颗粒度更小,能够更有效的删除冗余数据,更有效降低需要传输的数据容量。
步骤206,检测本地第一缓存空间是否已满,如果是,则等待一定的时间,继续检测;否则,执行步骤207。
所述本地第一缓存空间,对应第一本地存储模块14中的本地第一缓存子模块141的存储空间。需要指出的是,本地第一缓存空间可以同时容纳多份经过本地重复数据删除处理后的数据和索引数据,当本地第一缓存空间中有数据而又没满,可以继续向本地第一缓存空间中写数据。但需要注意的是,在后续对本地第一缓存空间中的数据执行全局重复数据删除操作前,需要检测当前有无本地重复数据删除操作和全局重复数据删除操作,以确保同一时刻最多只运行单个重复数据删除操作。
步骤207,将经过本地重复数据删除处理的数据和索引数据存储在本地第一缓存空间中。
在将经过本地重复数据删除处理的数据和索引数据存储到本地第一缓存空间中之后,相应的,删除本地快照缓存空间中的本次经过本地重复数据删除处理的数据和索引数据。
步骤208,检测是否存在其他生产中心节点,如果不存在,则执行步骤209;如果存在,则执行步骤210。
生产中心节点定时发出携带咨询其他生产中心节点信息的广播请求包,其他生产中心节点接收到该广播请求包后,将自身的节点信息、优先级信息和是否完成本地重复数据删除的标志位信息封装在响应数据包中,反馈给发出请求的生产中心节点。接收到响应数据包的生产中心节点,将响应数据包中的节点信息、优先级信息和本地重复数据删除的标志位信息提取出来,在本节点建立一个节点信息表,包括:节点信息、优先级信息和本地重复数据删除标志位信息。需要指出的是,当某个时间点,某个生产中心节点处于离线(downtime)状态时,是无法响应其他生产中心节点发出的请求包的;此时,在其他生产中心节点的节点信息表中,会将该downtime状态的生产中心节点的相关信息删除。
每个生产中心节点都通过这种方式检测其他生产中心节点的信息,当生产中心节点在完成自身的本地重复数据删除后,会将对其他生产中心节点的响应包中的本地重复数据删除标志位信息标识为已完成本地重复数据删除。从而,只有在生产中心节点的节点信息表内所有节点都标记完成本地重复数据删除操作后,才能统一触发进行全局重复数据删除操作;并在全局重复数据删除操作完毕之后,将节点信息表内记录的所有节点的本地重复数据删除标志位清除,为下次重复数据删除做准备。
步骤209,将本地第一缓存空间中的经过本地重复数据删除处理的数据和索引数据传输到备份中心节点,并结束整个流程。
容灾***中的某个生产中心节点,在两种情况下会检测到不存在其他生产中心节点,一种情况是容灾***中只存在其单个生产中心节点;另一种情况是容灾***中的其他生产中心节点都处于downtime状态。在这两种情况下,也就没有必要再执行全局重复数据删除操作,从而将经过本地重复数据删除处理的数据和索引数据直接传输到备份中心节点,并结束整个流程。经过本地重复数据删除操作的数据和索引数据传输到备份中心节点后,本地第一缓存空间中的相应数据和索引数据被删除。
步骤210,读取本地第一缓存空间中的数据和索引数据,执行全局重复数据删除操作,生成经过全局重复数据删除处理后的数据和索引数据。
全局重复数据删除,是通过比较各个生产中心节点的第一缓存空间中的索引数据来分析是否具备相同的冗余数据,如果存在相同的索引数据,则根据各个生产中心节点的优先级来删除低优先级的冗余数据和相应的索引数据,只保留最高优先级的数据和索引数据,以保证数据的唯一性。本发明中的全局重复数据删除也是采用基于扇区级别的重复数据删除策略,在此不再赘述。
步骤211,检测本地第二缓存空间是否已满,如果是,则等待一定的时间,继续检测;否则,执行步骤212。
步骤212,将经过全局重复数据删除操作的数据和索引数据存储在本地第二缓存空间中。
步骤213,将本地第二缓存空间中存储的经过全局重复数据删除操作的数据和索引数据传输到备份中心节点,并结束整个流程。
经过全局重复数据删除操作的数据和索引数据传输到备份中心节点后,本地第二缓存空间中的相应数据和索引数据被删除。备份中心节点对各个生产中心节点发送过来的数据和索引数据进行存储,当灾难产生时,通过备份中心节点中存储的数据和索引数据,可以将各个生产中心节点内的数据恢复到灾难产生前的状态。当然,备份中心节点内存储的数据也可以进一步备份归档到磁带库或光盘等存储介质中。
以上仅以生产中心节点10为例,对数据级容灾的方法进行了描述,实际上,本领域普通技术人员应该知道,在整个多节点的数据级容灾***中,生产中心节点10、生产中心节点20、生产中心节点30是同时进行类似容灾操作的,这样可以保证执行全局重复数据删除操作。对于备份中心节点20、30的具体操作过程,与生产中心节点10的处理类似,此处不再赘述。
此外,从前述的描述可以发现,本发明中生产中心节点的第一本地存储模块都是采用一种三层数据存储结构,即包括:本地快照缓存子模块,用于存储快照处理得到的快照镜像数据;本地第一缓存子模块,用于存储经过本地重复数据删除处理的数据和索引数据;本地第二缓存子模块,用于存储经过全局重复数据删除处理的数据和索引数据。在不同的时刻,每层数据存储结构中的数据都是在发生变化的,但是这三层数据存储结构中所存储的数据需要保证不重复;即本地快照缓存子模块中的数据传递到本地第一缓存子模块后,本地快照缓存子模块中相应的原始数据需要立即删除,同样,本地第一缓存子模块中的数据和数据索引传递到本地第二缓存子模块后,本地第一缓存子模块中相应的原始数据和数据索引也需要立即删除。
下面举例进行说明,如图3所示,时刻1、时刻2和时刻3是数据级容灾***中不同的时间点,时刻1之后是时刻2,时刻2之后是时刻3。
以图3中的数据c1为例,在时刻1,对存储在本地快照缓存子模块中的快照镜像数据c1执行本地重复数据删除操作;在时刻2,经过本地重复数据删除处理的c1被存储到本地第一缓存子模块中,并执行全局重复数据删除操作,此时本地快照缓存子模块中已经不再有c1;在时刻3,经过全局重复数据删除处理的c1被存储到本地第二缓存子模块中,并发送给备份中心节点,此时本地第一缓存子模块中已经不再有c1。当然,c1发送给备份中心节点后,本地第二缓存子模块中的c1也将被删除。
下面再以时刻2为例,在时刻2之前,即时刻1,执行快照处理生成的快照镜像数据d1存储到本地快照缓存子模块中;在时刻2,本地快照缓存子模块中的数据为d1,对d1执行本地重复数据删除操作。在时刻2之前,即时刻1,对本地快照缓存子模块中的数据c1执行本地重复数据删除操作,生成经过本地重复数据删除处理的数据c1存储到本地第一缓存子模块中;在时刻2,本地第一缓存子模块中的数据为c1,对c1执行全局重复数据删除操作。在时刻2之前,即时刻1,对本地第一缓存子模块中的数据b1执行全局重复数据删除操作,生成经过全局重复数据删除处理的数据b1存储到本地第二缓存子模块中;在时刻2,本地第二缓存子模块中的数据为b1,对数据b1执行发送操作,发送到备份中心节点。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种数据级容灾方法,其特征在于,包括:
对应用程序运行产生的数据执行快照处理,生成快照镜像数据;
对所述快照镜像数据执行本地重复数据删除,生成经过本地重复数据删除处理的数据和相应的索引数据;
对所述经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除,生成经过全局重复数据删除处理的数据和相应的索引数据;
将所述经过全局重复数据删除处理的数据和索引数据发送给备份中心节点。
2.根据权利要求1所述数据级容灾方法,其特征在于,所述重复数据删除是采用基于扇区级别的重复数据删除策略,具体为:
以扇区为单位,通过哈希Hash散列算法为每个数据单元产生一个特定的散列值;将新写入的数据所对应的散列值与已有的散列值索引进行比较,如果所述散列值已经存在于所述散列值索引中,则对所述数据进行删除;否则,对所述数据进行存储,并将所述数据对应的散列值添加到所述散列值索引中。
3.根据权利要求1或2所述数据级容灾方法,其特征在于,所述对经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除之前,该方法还包括:
检测是否存在其他生产中心节点,如果不存在,则将所述经过本地重复数据删除处理的数据和索引数据直接发送给所述备份中心节点;如果存在,则对经过本地重复数据删除处理的数据和索引数据执行全局重复数据删除。
4.根据权利要求3所述数据级容灾方法,其特征在于,所述检测是否存在其他生产中心节点,具体包括:
向其他生产中心节点发出携带咨询其他生产中心节点信息的广播请求包,如果能收到响应数据包,则判定存在其他生产中心节点;否则,判定不存在其他生产中心节点。
5.根据权利要求1所述数据级容灾方法,其特征在于,所述全局重复数据删除具体为:
通过比较各个生产中心节点中经过本地重复数据删除处理的索引数据来分析是否具备相同的冗余数据,如果存在相同的索引数据,则根据各个生产中心节点的优先级来删除低优先级的冗余数据和相应的索引数据,只保留最高优先级的数据和索引数据。
6.一种数据级容灾***,其特征在于,包括通过外部网络相连的生产中心节点和备份中心节点;
其中,所述生产中心节点,用于对应用程序运行产生的数据执行快照处理,生成快照镜像数据,并对所述快照镜像数据依次执行本地重复数据删除和全局重复数据删除,将经过全局重复数据删除处理的数据和索引数据发送给所述备份中心节点;
所述备份中心节点,用于对来自所述生产中心节点的数据和索引数据进行存储备份。
7.根据权利要求6所述数据级容灾***,其特征在于,所述生产中心节点进一步包括:
应用程序模块,用于执行应用程序,产生与业务相关的数据;
本地重复数据删除模块,用于执行本地重复数据删除,生成所述经过本地重复数据删除处理后的数据和索引数据;
全局重复数据删除模块,用于执行全局重复数据删除,生成所述经过全局重复数据删除处理后的数据和索引数据;
第一本地存储模块,用于对所述应用程序模块产生的数据、经过本地重复数据删除处理后的数据和索引数据、经过全局重复数据删除处理后的数据和索引数据分别进行存储;
数据发送模块,用于将所述第一本地存储模块中经过全局重复数据删除处理后的数据和索引数据发送到所述备份中心节点;
第一管理模块,用于对所述应用程序模块产生的数据执行快照处理,将得到的快照镜像数据存储到所述第一本地存储模块;用于管理所述第一本地存储模块中数据的正常运行;还用于监控所属生产中心节点的磁阵状态,监控其他生产中心节点内的磁阵状态。
8.根据权利要求7所述数据级容灾***,其特征在于,所述第一本地存储模块进一步包括:
本地快照缓存子模块,用于存储执行快照处理所生成快照镜像数据;
本地第一缓存子模块,用于存储来自所述本地快照缓存子模块的经过本地重复数据删除处理的数据和索引数据;
本地第二缓存子模块,用于存储来自所述本地第一缓存子模块的经过全局重复数据删除处理的数据和索引数据。
9.根据权利要求6、或7、或8所述数据级容灾***,其特征在于,所述备份中心节点进一步包括:
数据接收模块,用于接收来自所述生产中心节点的数据;
第二本地存储模块,用于对所接收的数据进行存储;
第二管理模块,用于管理所述数据的正常运行,并监控管理所述备份中心节点内的磁阵状态。
10.一种生产中心节点,其特征在于,包括:
应用程序模块,用于执行应用程序,产生与业务相关的数据;
本地重复数据删除模块,用于执行本地重复数据删除,生成经过本地重复数据删除处理后的数据和索引数据;
全局重复数据删除模块,用于执行全局重复数据删除,生成经过全局重复数据删除处理后的数据和索引数据;
第一本地存储模块,用于对所述应用程序模块产生的数据、经过本地重复数据删除处理后的数据和索引数据、经过全局重复数据删除处理后的数据和索引数据分别进行存储;
数据发送模块,用于将所述第一本地存储模块中经过全局重复数据删除处理后的数据和索引数据发送到备份中心节点;
第一管理模块,用于对所述应用程序模块产生的数据执行快照处理,将得到的快照镜像数据存储到所述第一本地存储模块;用于管理所述第一本地存储模块中数据的正常运行;还用于监控所属生产中心节点的磁阵状态,监控其他生产中心节点内的磁阵状态。
11.根据权利要求10所述生产中心节点,其特征在于,所述第一本地存储模块进一步包括:
本地快照缓存子模块,用于存储执行快照处理所生成快照镜像数据;
本地第一缓存子模块,用于存储来自所述本地快照缓存子模块的经过本地重复数据删除处理的数据和索引数据;
本地第二缓存子模块,用于存储来自所述本地第一缓存子模块的经过全局重复数据删除处理的数据和索引数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810227333A CN101741536B (zh) | 2008-11-26 | 2008-11-26 | 数据级容灾方法、***和生产中心节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810227333A CN101741536B (zh) | 2008-11-26 | 2008-11-26 | 数据级容灾方法、***和生产中心节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101741536A true CN101741536A (zh) | 2010-06-16 |
CN101741536B CN101741536B (zh) | 2012-09-05 |
Family
ID=42464480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810227333A Active CN101741536B (zh) | 2008-11-26 | 2008-11-26 | 数据级容灾方法、***和生产中心节点 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101741536B (zh) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980195A (zh) * | 2010-10-26 | 2011-02-23 | 青岛海信移动通信技术股份有限公司 | 一种基于移动通信终端的数据库索引修复方法及装置 |
CN102014374A (zh) * | 2010-11-26 | 2011-04-13 | 中兴通讯股份有限公司 | 一种预设文件的处理方法及移动终端 |
CN102221982A (zh) * | 2011-06-13 | 2011-10-19 | 北京卓微天成科技咨询有限公司 | 块级虚拟化存储设备上实现重复数据删除的方法及*** |
CN102469142A (zh) * | 2010-11-16 | 2012-05-23 | 英业达股份有限公司 | 重复数据删除程序的数据传输方法 |
CN102467557A (zh) * | 2010-11-17 | 2012-05-23 | 英业达股份有限公司 | 重复数据删除的处理方法 |
CN102799659A (zh) * | 2012-07-05 | 2012-11-28 | 广州鼎鼎信息科技有限公司 | 一种基于无中心分布***的全局重复数据删除***及方法 |
CN102833298A (zh) * | 2011-06-17 | 2012-12-19 | 英业达集团(天津)电子技术有限公司 | 分布式的重复数据删除***及其处理方法 |
CN103049508A (zh) * | 2012-12-13 | 2013-04-17 | 华为技术有限公司 | 一种数据处理方法及装置 |
CN103236989A (zh) * | 2013-04-25 | 2013-08-07 | 青岛海信传媒网络技术有限公司 | 一种内容分发网络中的缓存控制方法、设备及*** |
CN103838871A (zh) * | 2014-03-21 | 2014-06-04 | 北京广利核***工程有限公司 | 一种核电站安全级dcs s-vdu过程文件的校验方法 |
CN103853754A (zh) * | 2012-11-30 | 2014-06-11 | 英业达科技有限公司 | 在备份时计算散列值以删除重复数据的***及其方法 |
CN104221003A (zh) * | 2012-05-17 | 2014-12-17 | 阿卡麦科技公司 | 利用异步数据词典在多租户共享的基础设施中的基于流的重复数据删除 |
CN105100236A (zh) * | 2015-07-15 | 2015-11-25 | 柳州一健科技有限公司 | 基于网络的数据备份*** |
CN106452694A (zh) * | 2016-09-23 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种远程站点容灾方法及装置 |
CN106815096A (zh) * | 2016-12-19 | 2017-06-09 | 汪海军 | 一种数据管理方法与装置 |
CN106897171A (zh) * | 2017-02-27 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种用于虚拟环境下的存储设备的灾难恢复方法 |
US9699231B2 (en) | 2012-12-27 | 2017-07-04 | Akamai Technologies, Inc. | Stream-based data deduplication using directed cyclic graphs to facilitate on-the-wire compression |
CN107249035A (zh) * | 2017-06-28 | 2017-10-13 | 重庆大学 | 一种等级化动态可变的共享重复数据存储和读取机制 |
CN104035836B (zh) * | 2013-03-06 | 2018-01-02 | 阿里巴巴集团控股有限公司 | 集群检索平台中的自动容灾恢复方法及*** |
CN108008918A (zh) * | 2017-11-30 | 2018-05-08 | 联想(北京)有限公司 | 数据处理方法、存储节点及分布式存储*** |
CN108228763A (zh) * | 2017-12-25 | 2018-06-29 | 深圳市海派通讯科技有限公司 | 一种基于智能终端自媒体冗余数据处理的方法 |
CN108667635A (zh) * | 2017-03-27 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 一种容灾处理的方法、设备及*** |
CN109032840A (zh) * | 2018-07-02 | 2018-12-18 | 国网山东省电力公司信息通信公司 | 一种数据管理方法及装置 |
CN110018990A (zh) * | 2017-11-28 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种缓存快照、读取快照的方法和装置 |
CN111210352A (zh) * | 2020-01-10 | 2020-05-29 | 李�荣 | 一种基于区块链的经济数据统计装置及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1316779C (zh) * | 2002-12-05 | 2007-05-16 | 华为技术有限公司 | 一种不会产生连环数据复制的数据容灾方法 |
-
2008
- 2008-11-26 CN CN200810227333A patent/CN101741536B/zh active Active
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980195A (zh) * | 2010-10-26 | 2011-02-23 | 青岛海信移动通信技术股份有限公司 | 一种基于移动通信终端的数据库索引修复方法及装置 |
CN101980195B (zh) * | 2010-10-26 | 2012-08-01 | 青岛海信移动通信技术股份有限公司 | 一种基于移动通信终端的数据库索引修复方法及装置 |
CN102469142A (zh) * | 2010-11-16 | 2012-05-23 | 英业达股份有限公司 | 重复数据删除程序的数据传输方法 |
CN102467557B (zh) * | 2010-11-17 | 2013-10-02 | 英业达股份有限公司 | 重复数据删除的处理方法 |
CN102467557A (zh) * | 2010-11-17 | 2012-05-23 | 英业达股份有限公司 | 重复数据删除的处理方法 |
CN102014374A (zh) * | 2010-11-26 | 2011-04-13 | 中兴通讯股份有限公司 | 一种预设文件的处理方法及移动终端 |
CN102221982A (zh) * | 2011-06-13 | 2011-10-19 | 北京卓微天成科技咨询有限公司 | 块级虚拟化存储设备上实现重复数据删除的方法及*** |
CN102833298A (zh) * | 2011-06-17 | 2012-12-19 | 英业达集团(天津)电子技术有限公司 | 分布式的重复数据删除***及其处理方法 |
CN104221003B (zh) * | 2012-05-17 | 2017-08-11 | 阿卡麦科技公司 | 利用异步数据词典在多租户共享的基础设施中的基于流的重复数据删除 |
CN104221003A (zh) * | 2012-05-17 | 2014-12-17 | 阿卡麦科技公司 | 利用异步数据词典在多租户共享的基础设施中的基于流的重复数据删除 |
CN102799659A (zh) * | 2012-07-05 | 2012-11-28 | 广州鼎鼎信息科技有限公司 | 一种基于无中心分布***的全局重复数据删除***及方法 |
CN102799659B (zh) * | 2012-07-05 | 2015-01-21 | 广州鼎鼎信息科技有限公司 | 一种基于无中心分布***的全局重复数据删除***及方法 |
CN103853754A (zh) * | 2012-11-30 | 2014-06-11 | 英业达科技有限公司 | 在备份时计算散列值以删除重复数据的***及其方法 |
CN103049508B (zh) * | 2012-12-13 | 2017-08-11 | 华为技术有限公司 | 一种数据处理方法及装置 |
CN103049508A (zh) * | 2012-12-13 | 2013-04-17 | 华为技术有限公司 | 一种数据处理方法及装置 |
US9699231B2 (en) | 2012-12-27 | 2017-07-04 | Akamai Technologies, Inc. | Stream-based data deduplication using directed cyclic graphs to facilitate on-the-wire compression |
CN104035836B (zh) * | 2013-03-06 | 2018-01-02 | 阿里巴巴集团控股有限公司 | 集群检索平台中的自动容灾恢复方法及*** |
CN103236989A (zh) * | 2013-04-25 | 2013-08-07 | 青岛海信传媒网络技术有限公司 | 一种内容分发网络中的缓存控制方法、设备及*** |
CN103838871A (zh) * | 2014-03-21 | 2014-06-04 | 北京广利核***工程有限公司 | 一种核电站安全级dcs s-vdu过程文件的校验方法 |
CN103838871B (zh) * | 2014-03-21 | 2019-11-29 | 北京广利核***工程有限公司 | 一种核电站安全级dcs s-vdu过程文件的校验方法 |
CN105100236A (zh) * | 2015-07-15 | 2015-11-25 | 柳州一健科技有限公司 | 基于网络的数据备份*** |
CN106452694A (zh) * | 2016-09-23 | 2017-02-22 | 郑州云海信息技术有限公司 | 一种远程站点容灾方法及装置 |
CN106815096A (zh) * | 2016-12-19 | 2017-06-09 | 汪海军 | 一种数据管理方法与装置 |
CN106897171A (zh) * | 2017-02-27 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种用于虚拟环境下的存储设备的灾难恢复方法 |
CN108667635A (zh) * | 2017-03-27 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 一种容灾处理的方法、设备及*** |
CN107249035A (zh) * | 2017-06-28 | 2017-10-13 | 重庆大学 | 一种等级化动态可变的共享重复数据存储和读取机制 |
CN107249035B (zh) * | 2017-06-28 | 2020-05-26 | 重庆大学 | 一种等级动态可变的共享重复数据存储和读取方法 |
CN110018990A (zh) * | 2017-11-28 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 一种缓存快照、读取快照的方法和装置 |
CN110018990B (zh) * | 2017-11-28 | 2023-07-18 | 阿里巴巴集团控股有限公司 | 一种缓存快照、读取快照的方法和装置 |
CN108008918A (zh) * | 2017-11-30 | 2018-05-08 | 联想(北京)有限公司 | 数据处理方法、存储节点及分布式存储*** |
CN108228763A (zh) * | 2017-12-25 | 2018-06-29 | 深圳市海派通讯科技有限公司 | 一种基于智能终端自媒体冗余数据处理的方法 |
CN109032840A (zh) * | 2018-07-02 | 2018-12-18 | 国网山东省电力公司信息通信公司 | 一种数据管理方法及装置 |
CN111210352A (zh) * | 2020-01-10 | 2020-05-29 | 李�荣 | 一种基于区块链的经济数据统计装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101741536B (zh) | 2012-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101741536B (zh) | 数据级容灾方法、***和生产中心节点 | |
US11567674B2 (en) | Low overhead resynchronization snapshot creation and utilization | |
CN101539873B (zh) | 数据恢复的方法、数据节点及分布式文件*** | |
US8473465B2 (en) | Data mirroring system | |
US7694177B2 (en) | Method and system for resynchronizing data between a primary and mirror data storage system | |
CN103226502B (zh) | 一种数据灾备控制***及数据恢复方法 | |
CN101656624B (zh) | 一种多节点应用级容灾***及容灾方法 | |
US7627776B2 (en) | Data backup method | |
US10416905B2 (en) | Modifying membership of replication groups via journal operations | |
US11892922B2 (en) | State management methods, methods for switching between master application server and backup application server, and electronic devices | |
US20130283092A1 (en) | Data consistency between virtual machines | |
US11487463B2 (en) | Adaptive replication modes in a storage system | |
US20050223272A1 (en) | Data storage system and control method thereof | |
WO2020063600A1 (zh) | 数据容灾方法与站点 | |
CN103593264A (zh) | 远距离广域网络容灾备份***及方法 | |
WO2015085529A1 (zh) | 数据复制方法、数据复制装置和存储设备 | |
WO2021115043A1 (zh) | 分布式数据库***和数据灾备演练方法 | |
CN106528338A (zh) | 一种远程数据复制方法、存储设备及存储*** | |
WO2017014814A1 (en) | Replicating memory volumes | |
CN114089923A (zh) | 一种双活存储***及其数据处理方法 | |
CN114518973B (zh) | 分布式集群节点宕机重启恢复方法 | |
CN112667153B (zh) | 一种基于分布式raid切片的多站点容灾备份方法 | |
CN114518973A (zh) | 分布式集群节点宕机重启恢复方法 | |
CN115963994A (zh) | 数据存储方法、装置、非易失性存储介质及处理器 | |
CN112748881A (zh) | 一种面向虚拟化场景的存储容错方法和集群*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |