CN1846197A - 数据同步方法、系统和程序 - Google Patents
数据同步方法、系统和程序 Download PDFInfo
- Publication number
- CN1846197A CN1846197A CNA2004800254873A CN200480025487A CN1846197A CN 1846197 A CN1846197 A CN 1846197A CN A2004800254873 A CNA2004800254873 A CN A2004800254873A CN 200480025487 A CN200480025487 A CN 200480025487A CN 1846197 A CN1846197 A CN 1846197A
- Authority
- CN
- China
- Prior art keywords
- source
- identifier
- data
- locate
- function
- 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
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000001360 synchronised effect Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 description 26
- 230000005540 biological transmission Effects 0.000 description 10
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000011084 recovery Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 241001269238 Data Species 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
Abstract
本发明公开一种数据同步技术。第一标识符对第一源处一部分数据而确定。第二标识符对第二源处一部分相应数据而确定。第一和第二标识符被比较。当第一和第二标识符不匹配时,第二源处该部分相应数据用第一源处该部分数据代替。
Description
技术领域
本发明涉及改进的数据同步。
背景技术
在典型的灾难恢复解决方案中,数据位于主站以及一个或多个辅站。这些辅站维护数据的同步拷贝,使得在主站灾难的情况下没有数据丢失。如果灾难发生,处理或者“失败转移”到辅站中的一个,或者数据从辅站拷贝回主站。为了使灾难恢复有效,辅站典型地远离主站,使得两个站点不会由相同的灾难所影响。
灾难恢复系统典型地解决两种类型的故障,单个时间点的突然灾难性故障或者一段时间上的数据丢失。在第二类型的逐步灾难中,对卷的更新可能丢失。对于任一类型的故障,数据的拷贝在远程位置可用。这种双重或阴影拷贝典型地执行,当应用系统正在写入新的数据到主站的主存储设备时。存储设备是提供将数据存储在给定介质上,使得数据可以随后检索的机制的物理单元。国际商业机器公司(IBM),该主题专利申请的受让人,提供维护辅存储设备处数据的远程拷贝的系统,包括扩展远程拷贝(XRC)和对等式远程拷贝(PPRC)。
这些系统提供用于在最后一次安全备份和系统故障之间恢复数据更新的技术。这种数据阴影系统也可以提供非恢复目的的另外远程拷贝,例如远程站点的本地访问。IBM XRC和PPRC系统在z/OS V1R1.0DFSMS Advanced Copy Services(IBM Document Number SC35-0428-00),April 2001(z/OS V1R1.0 DFSMS高级拷贝服务(IBM文献编号SC35-0428-00,2001年4月)中进一步描述,该文献可从国际商业机器公司获得。
在这种备份系统中,数据在卷对中维护。卷对由主存储设备中的卷和辅存储设备中包含在主卷中维护的数据的一致拷贝的相应卷组成。典型地,该对的主卷将在主存储控制单元中维护,而该对的辅卷在与主存储控制单元位于不同物理位置的辅存储控制单元中维护。存储控制单元是包括与一个或多个存储设备结合的存储服务器以为主机提供存储能力的物理硬件单元。存储服务器是通过提供一个或多个逻辑子系统的功能来提供一个或多个存储设备与主机之间接口的物理单元。存储服务器可以提供没有由存储设备提供的功能。存储服务器包括存储设备的一个或多个集群。主存储控制单元可以被提供以控制对主DASD的访问而辅存储控制单元可以被提供以控制对辅DASD的访问。
所有辅数据站同步并且包含主站数据的精确拷贝是重要的。但是,有时错误发生,这使得系统不知道主和辅站是否同步。在典型的灾难恢复解决方案中,如果辅站丢失与主站的同步的确定性,所有数据必须从主站拷贝到辅站。
对于对大公司典型的大系统,重新同步两个站点所需的时间因现在必须拷贝的极大数据量而巨大。除了执行该拷贝所花费的时间之外,也必须记得作为该重新拷贝的结果,两个站点之间的数据链路比典型时使用严重得多。这也使得继续运行的正常处理被影响,因为继续运行所必需的带宽可能不再可用。
特别地,在现有技术的系统中,当两个卷因任何原因而丢失同步时,主站发送整个卷的数据到辅站是必需的。如果许多卷受影响和/或卷非常大,这可能花费相当多的时间。不仅花费长时间,而且发送的所有数据将严重增加在长距离数据链路上使用的带宽。如果系统不具有适宜量的额外带宽,典型地常规系统不会有,那么该重新同步将影响在系统中当前发生的所有其他处理以及灾难恢复镜像。此外,在丢失同步的大多数情况下,非常少的数据,如果有的话,实际上没有同步。结果,当仅几个部分的数据实际不相同时,整个卷的数据将重新拷贝。
因此,存在对改进数据同步的需求。
发明内容
本发明提供一种数据同步方法、系统和程序。第一标识符对第一源处的一部分数据而确定。第二标识符对第二源处一部分相应数据而确定。第一和第二标识符被比较。当第一和第二标识符不匹配时,第二源处该部分相应数据用第一源处该部分数据代替。
本发明描述的实现提供一种方法、系统和程序,用于确定第一和第二数据集(例如卷)是否同步,并且如果第一和第二数据集不同步,识别哪个数据需要同步。因此,如果第一和第二数据集仅部分需要同步,本发明的实现仅将那些部分从一个数据集拷贝到另一个。
附图说明
现在参考附图,其中类似的参考数字贯穿全文表示相应的部件。
图1以框图说明根据本发明某些实现的计算环境。
图2A和2B说明在根据本发明某些实现的至少10一个同步系统中实现的数据同步的逻辑。
图3A和3B以框图说明根据本发明某些实现的唯一标识符生成技术。
图4以框图说明根据本发明某些实现的源空间和目标空间。
图5说明可以根据本发明某些实现使用的计算机系统的体系结构。
具体实施方式
在下面的描述中,参考形成其一部分并且说明本发明几种实现的附随附图。应当理解,可以使用其他实现并且可以进行结构和操作改变而不背离本发明的范围。
图1以框图说明根据本发明一些实现的计算环境。主控制单元110,130,和150提供分别一个或多个主机116,136,或156对分别主存储设备114,134,和154的访问。主存储设备可以是例如主DASD。一个或多个应用可以在每个主机116,136,或156上执行以更新主存储设备上的数据。主控制单元110,130,和150也分别具有主高速缓存112,132,和152,对分别主存储设备114,134,和154中磁道的更新在其中维护直到降级到主存储设备114,134,和154。主存储设备114,134,和154的卷的全部或子集的备份拷贝可以在分别辅存储设备124,144,和164处维护。主站可以包括主控制单元110,130,和150,主存储设备114,134,和154,以及主机116,136,和156。辅站可以包括辅控制单元120,140,和160,以及辅存储设备124,144,和164。辅控制单元120,140,和160也具有辅高速缓存122,142,和162。操作员计算机(没有显示)可以连接到辅控制单元120,140,和160。辅存储设备可以是例如辅DASD。
在一些实现中,“卷对”包括主存储设备中的一个卷以及辅存储设备中维护卷对中主卷处数据的备份拷贝的该卷的阴影。在某些实现中,对于每个主卷,存在具有一致内容的相应辅卷;这就是卷对。例如,对主存储设备114的更新传送到辅控制单元120,用于辅存储设备124中的存储。
主控制单元110,130和150还可以包括非易失性存储单元(没有显示),例如电池备份的易失性存储器,以维护数据更新的非易失性拷贝。在本发明的某些实现中,主控制单元110,130和150以及辅控制单元120,140和160可以由IBM TotalStorage 2105企业级存储服务器(2105ESS)组成,其可从国际商业机器公司获得。
每个主控制单元110,130和150和辅控制单元120,140和160包括用于提供数据同步的同步系统111,121,131,141,151和161。在本发明的某些实现中,同步系统111,121,131,141,151和161包括数据存储控制器(也就是存储控制单元)并且包括唯一标识符生成器。
在某些实现中,主控制单元110,130,150和辅控制单元120,140和160经由通信路径,例如直接高速传输线(例如企业系统连接(ESCON)链路)通信。但是,通信路径可以包括本领域已知的任何其他通信方法,包括网络传输线,光缆等。对主存储设备114,134和154所做的更新传送到辅控制单元120,140和160。更新的传送可以任何方式发生。在某些实现中,备份数据可以从任何主控制单元110,130和150传送到任何辅控制单元120,140和160。来自每个主存储设备的每个卷对应于辅存储设备上的卷。例如,主存储设备114上的第一卷备份到辅存储设备124上的一个卷,且主存储设备134上的第二卷备份到辅存储设备144上的一个卷。在某些实现中,一个或多个卷不备份。
图2A和2B说明在根据本发明某些实现的至少一个同步系统中实现的数据同步的逻辑。
为了容易引用,术语在这里使用“主”和“辅”。本发明的实现可适用于在任意两个源(例如第一源和第二源)之间同步数据。控制以是该同步数据的时候的确定在框200开始。在某些实现中,当错误发生时(例如,数据在从主控制单元传送到辅控制单元时丢失,或者数据在一个控制单元处损坏),确定是该同步数据的时候了。在本发明的某些备选实现中,周期性地确定是该同步数据的时候了。
在框202中,下一个部分的主数据和相应辅数据被选择,从第一部分开始。主数据指主存储设备上的数据,而辅数据指辅存储设备上的数据。在本发明的某些实现中,该部分数据是卷上的磁道。在框204中,确定是否所有部分的数据都已被选择。如果是,处理完成,否则,处理继续到框206。
在框206中,唯一标识符对该部分主数据而确定。在框208中,唯一标识符对相应部分的辅数据而确定。在本发明的某些实现中,唯一标识符是散列关键字。
也就是,散列关键字与每个卷上的每个部分的数据相关联。散列关键字为其创建的数据长度可以改变,如散列关键字的长度可以改变一样。在本发明的某些实现中,存在对每个部分的数据(例如每个卷中的每个磁道)而创建的一个散列关键字,并且散列关键字长度为512位。因此,存在对主卷上每个部分的数据而创建的散列关键字以及对相应辅卷上每个部分的数据而创建的散列关键字。
在框210中,主和相应辅数据的部分的唯一标识符被比较。在唯一标识符是散列关键字的本发明的实现中,散列关键字被比较以确定该部分数据是否同步。在框212中,确定唯一标识符是否匹配。如果存在匹配,处理继续到框202,否则,处理继续到框214。也就是,对于唯一标识符(例如散列关键字)匹配的每个部分的数据(例如磁道),本发明的实现识别出该部分数据(例如磁道)是同步的(也就是,完全相同)。在框214中,该部分主数据从主卷重新发送到辅卷。
因此,避免为数据的重新同步而拷贝整个卷。
在本发明的某些实现中,图2A和2B的逻辑在辅控制单元的同步系统处发生。在这种实现中,辅控制单元选择部分数据用于比较(框202,204),从主控制单元请求该部分主数据的唯一标识符(框206),确定该部分相应辅数据的唯一标识符(框208),并且比较唯一标识符(框210)。如果唯一标识符不匹配(框212),辅控制单元从主控制单元请求该部分主数据(框214)。
在某种备选实现中,图2A和2B的逻辑在主控制单元的同步系统处发生,并且来自辅控制单元的数据可以拷贝到主控制单元。例如,主控制单元选择部分数据用于比较(框202,204),从辅控制单元请求该部分辅数据的唯一标识符(框206),确定该部分相应主数据的唯一标识符(框208),并且比较唯一标识符(框210)。如果唯一标识符不匹配(框212),主控制单元发送该部分主数据到辅控制单元(框214)。
在某些另外的实现中,独立的同步系统位于除主控制单元或辅控制单元之外的计算机系统处。独立的同步系统也可以位于主站和辅站外部。独立的同步系统从主和辅控制单元请求一部分数据的唯一标识符,并且如果该部分数据的唯一标识符不匹配,指示主控制单元发送该部分数据到辅控制单元。
存在对本发明实现的许多变化。在本发明的某些实现中,无论何时一部分数据更新,该部分数据的唯一标识符为将来使用生成并存储(例如,在存储设备中或在高速缓存中)。在本发明的某些备选实现中,当存在关于数据完整性的担心时,唯一标识符生成。此时,主和辅控制单元的同步系统为存在关于数据完整性担心的每个卷的每个部分的数据创建唯一标识符。然后,同步系统中至少一个比较唯一标识符以确定同步是否是必需的。在又一种备选实现中,唯一标识符周期性地生成/更新。在这些实现中,无论何时更新对一部分数据发生,应当注意唯一标识符不再有效。当同步系统空闲时或以预先确定的间隔,同步系统更新不再有效的唯一标识符。而且,当唯一标识符被请求时,无效的任何唯一标识符可以在请求时更新。
唯一标识符是散列关键字的本发明的某些实现保证一部分数据的两个散列关键字的匹配意味着这两个部分的数据完全相同。此外,任何散列关键字生成技术可以与本发明的实现一起使用,包括例如MD5和安全散列算法1(SHA-1)散列函数。MD5是一种众所周知的单向散列函数,其取一部分数据并将该部分数据转换成固定数字串(其也称作消息文摘)。SHA-1是一种众所周知的散列函数,其取长度小于264位的一部分数据并且产生160位的消息文摘。在本发明的某些实现中,两个不相同部分的数据生成相同散列关键字的可能性低于存储设备硬盘驱动器(HDD)上不可察觉错误或数据链路上不可察觉错误的可能性。
图3A和3B以框图说明根据本发明某些实现的唯一标识符生成技术。在本发明的某些实现中,单个函数(例如散列函数)用来生成唯一标识符(例如散列函数)。作为选择,如图3A和3B中所示,两个或多个函数同时应用于一部分数据以提供更高的置信水平,即当与该部分数据相关的唯一标识符匹配时,该部分数据完全相同。例如,在框300中,第一函数用来生成第一唯一标识符(例如,256位MD5关键字)。
同时,对于框300中的处理,在框310中,第二函数用来生成第二唯一标识符(例如256位SHA-1关键字)。在框320中,第一和第二唯一标识符相组合(例如连接)以形成在确定两个部分数据是否同步时使用的组合唯一标识符。框300和310的处理可以并行或以任何次序顺序地执行。
在图3B中,在框350中,第一函数用来为一部分数据生成第一唯一标识符(例如256位MD5关键字)。在框360中,第二函数用来基于第一唯一标识符生成第二唯一标识符(例如,256位SHA-1关键字)。也就是,第一函数的结果,即第一唯一标识符,输入到第二函数中。由第二函数生成的新的唯一标识符在确定两个部分数据是否同步时使用。为部分数据生成唯一标识符的任何技术在本发明的范围内,并且图3A和3B的实例并不打算限制本发明的范围。
图4以框图说明根据本发明某些实现的源空间400和目标空间450。源空间(“S”)400包括长度为N位的一部分数据(例如磁道)410,而目标空间(“T”)450包括K位的散列关键字460。然后,源空间400包括2N种可能组合,而目标空间450包括2K种可能组合。散列关键字函数将来自源空间400的组合映射到目标空间450中。
本发明的实现对了解两个完全相同的散列关键字由来自源空间400的不同部分数据生成的可能性感兴趣。为了容易引用,术语“源值”将用来指源空间400中各个部分的数据。在本发明的某些实现中,假设散列关键字函数将来自源空间400的原值均匀地映射到目标空间450中。也就是,目标空间450的每个元素的反散列图像具有“近似”相同基数。该假设有效,因为散列关键字生成技术被创造使得由“蛮力”计算方法找到产生完全相同散列关键字的两个不同部分数据是“计算不可行的”。换句话说,散列关键字函数在源部分数据上操作,使得找到在该部分数据中变化以使得函数生成完全相同散列关键字的位的精确组合非常困难。因此,散列关键字函数将来自源空间400的原值均匀地映射到目标空间450的假设是有效的。
对于均匀性,碰撞可能性的大小如下确定。为了容易引用,术语“目标值”在这里使用以指唯一标识符(例如散列关键字)。因为2N个值均匀地映射到2K的目标空间450,对于任何目标值,将存在2N/2K或2N-K个碰撞。术语碰撞在这里使用以指示匹配。而且,假匹配所述当不完全相同的两个不同部分的数据具有完全相同的散列关键字时发生。所以,对于单值函数,假匹配(或碰撞)的可能性是可能碰撞的总数,2N-K-1,除以总的源空间400,2N。因此,该可能性是(2N-K-1)/2N,其对于大N,近似等于2N-K/2N,即2-K。也就是,本发明的某些实现使用散列函数(“h”),h:S→T,使得对于T中所有散列关键字(“t”),(max|h-1(t)|)/2N<<(硬盘驱动器(HDD)不可察觉故障率的可能性)。也就是,两个不完全相同部分数据产生相同散列关键字的可能性低于存储设备硬盘驱动器(HDD)上不可察觉错误或数据链路上不可察觉错误的可能性。
因此,对于足够大的部分的源数据,碰撞的可能性仅有效地取决于散列关键字的位数。通过使得该散列关键字长度为256位,碰撞的可能性是2-256或10-78。对于512位,可能性是10-155。这些可能性远远低于标准HDD或两个数据站之间数据传输链路中固有的可能性。因此,说当两个部分的数据不相同时散列关键字函数报告它们相同的可能性与不可察觉错误标志(例如位)从HDD中错误地写入和读取或者位在从主存储控制单元传送到辅存储控制单元时损坏的可能性相比较可以忽略不计是合理的。也就是,碰撞的可能性是2-256,并且因为可能性如此低,即使散列关键字函数并不精确地均匀,可能性仍然比硬盘驱动器上位错误的可能性低得多。
因此,本发明的实现减少同步两个卷所需的时间以及这样做所需的带宽(也就是,传送唯一标识符,而不是一部分数据,减少带宽需求)。由该技术节省的时间量取决于多种因素,例如该部分数据的大小以及数据的部分数目,数据链路的带宽,以及所选的散列关键字函数及其实现。
本发明将在数据链路上流动的通信量减小取决于系统确切配置的倍数。作为实例,如果源数据是32千字节(KB)的一部分数据并且散列关键字是512位,或64字节(B),数据链路上通信量的减少是99.8%。当然,如果任何部分的数据被发现没有同步,整个部分的数据将被拷贝。但是,在整个卷上,典型地极少部分数据需要传送,并且这表示大的带宽节省。
总之,本发明的实现确定两个存储介质(例如卷)是否同步,如果不同步,识别将被同步的两个存储介质中存储的数据。特别地,本发明的实现将标识符与主存储设备和辅存储设备上每个部分的数据相关联。如果一部分主数据的标识符与相应部分辅数据的标识符匹配,那么该部分数据被确定为同步的。如果一部分主数据的标识符不与相应部分辅数据的标识符匹配,那么该部分数据被确定为需要同步,并且该部分主数据拷贝到该部分辅数据上。
另外的实现细节
所描述的数据同步技术可以使用标准编程和/或工程技术实现为一种方法、装置或制品以产生软件、固件、硬件或其任何组合。这里使用的术语“制品”指在硬件逻辑(例如集成电路芯片,可编程门阵列(PGA),专用集成电路(ASIC)等)或计算机可读介质,例如磁存储介质(例如硬盘驱动器,软盘,磁带等),光学存储器(CD-ROM,光盘等),易失性和非易失性存储设备(例如EEPROM,ROM,PROM,RAM,DRAM,SRAM,固件,可编程逻辑等)中实现的代码或逻辑。计算机可读介质中的代码由处理器访问和执行。优选实施方案在其中实现的代码还可以通过传输介质或经由网络从文件服务器访问。在这种情况下,代码在其中实现的制品可以包括传输介质,例如网络传输线,无线传输介质,通过空间传播的信号,无线电波,红外信号等。因此,“制品”可以包括代码在其中实施的介质。另外,“制品”可以包括代码在其中实施、处理和执行的硬件和软件组件的组合。当然,本领域技术人员将认识到,许多修改可以对该配置进行而不背离本发明的范围,并且制品可以包括本领域已知的任何信息承载介质。图2A,2B,3A和3B的逻辑描述以特定次序发生的具体操作。在备选实现中,逻辑操作的某些可以不同的次序执行,修改或去除。而且,操作可以添加到上述逻辑并且仍然符合描述的实现。此外,这里描述的操作可以顺序地发生或者某些操作可以并行地执行,或者如由单个处理执行的所述操作可以由分布的处理执行。
图2A,2B,3A和3B说明的逻辑可以在软件、硬件、可编程和不可编程门阵列逻辑或者软件、硬件或门阵列逻辑的一些组合中实现。
图5说明可以根据本发明的某些实现使用的计算机系统的体系结构。主控制单元,辅控制单元,和/或主机可以实现计算机体系结构500。计算机体系结构500可以实现处理器502(例如微处理器),内存504(例如易失性存储设备),和存储器510(例如非易失性存储区域,例如磁盘驱动器,光盘驱动器,磁带驱动器等)。操作系统505可以在内存504中执行。存储器510可以包括内部存储设备或者连接的或网络可访问存储器。存储器510中的计算机程序506可以装载到内存504中并且由处理器502以本领域已知的方式执行。该体系结构还包括网卡508以能够与网络通信。输入设备512用来提供用户输入到处理器502,并且可以包括键盘、鼠标、铁笔、麦克风、触敏显示屏,或本领域已知的任何其他激励或输入机械装置。输出设备514能够呈现从处理器502或其他组件,例如显示监视器,打印机,存储器等传输的信息。计算机系统的计算机体系结构500可以包括比说明的少的组件,这里没有说明的另外组件,或者说明的组件与另外组件的一些组合。计算机体系结构500可以包括本领域已知的任何计算设备,例如大型机、服务器、个人计算机、工作站、膝上型电脑、手提计算机、电话设备、网络设备、虚拟化设备、存储控制器等。本领域已知的任何处理器502和操作系统505可以使用。本发明实现的前面描述已经为说明和描述的目的而呈现。它并不打算穷举或将本发明限制为公开的精确形式。许多修改和变化考虑到上述讲授是可能的。本发明的范围并不打算由该详细描述所限制,而是由附加的权利要求所限制。上面的说明书、实例和数据提供本发明的组成的制造和使用的完整描述。因为本发明的许多实现可以不背离本发明的本质和范围而进行,本发明由所附加的权利要求限定。
Claims (39)
1.一种数据同步方法,包括:
确定第一源处一部分数据的第一标识符;
确定第二源处一部分相应数据的第二标识符;
比较第一和第二标识符;以及当第一和第二标识符不匹配时,用第一源处该部分数据代替第二源处该部分相应数据。
2.根据权利要求1的方法,还包括:
当第一和第二标识符匹配时,确定第一源处该部分数据与第二源处该部分相应数据完全相同。
3.根据权利要求1的方法,其中第一和第二标识符包括散列关键字。
4.根据权利要求3的方法,还包括:
使用单个散列关键字函数生成散列关键字。
5.根据权利要求3的方法,还包括:
使用多个散列关键字函数生成散列关键字。
6.根据权利要求1的方法,还包括:
通过在第一源处该部分数据上执行第一函数来生成第一标识符;以及
通过在第二源处该部分相应数据上执行第一函数来生成第二标识符。
7.根据权利要求1的方法,其中确定第一标识符还包括:
通过在第一源处该部分数据上执行第一函数来生成第一值;
通过在第一源处该部分数据上执行第二函数来生成第二值;以及
通过组合第一值和第二值来生成第一标识符。
8.根据权利要求7的方法,其中确定第二标识符还包括:
通过在第二源处该部分相应数据上执行第一函数来生成第三值;
通过在第二源处该部分相应数据上执行第二函数来生成第四值;以及
通过组合第三值和第四值来生成第二标识符。
9.根据权利要求1的方法,其中确定第一标识符还包括:
通过在第一源处该部分数据上执行第一函数来生成第一值;以及
通过在第一值上执行第二函数来生成第一标识符。
10.根据权利要求9的方法,其中确定第二标识符还包括:
通过在第二源处该部分相应数据上执行第一函数来生成第二值;以及
通过在第二值上执行第二函数来生成第二标识符。
11.根据权利要求1的方法,其中当第一源处该部分数据更新时,第一源处该部分数据的第一标识符被确定,并且当第二源处该部分相应数据更新时,第二源处该部分相应数据的第二标识符被确定。
12.根据权利要求1的方法,其中当确定是该同步第一源和第二源处数据的时候时,第一标识符和第二标识符被确定。
13.根据权利要求1的方法,其中第一标识符和第二标识符周期性地确定。
14.一种数据同步制品,其中该制品能够使得操作被执行,该操作包括:
确定第一源处一部分数据的第一标识符;
确定第二源处一部分相应数据的第二标识符;
比较第一和第二标识符;以及当第一和第二标识符不匹配时,用第一源处该部分数据代替第二源处该部分相应数据。
15.根据权利要求14的制品,其中操作还包括:
当第一和第二标识符匹配时,确定第一源处该部分数据与第二源处该部分相应数据完全相同。
16.根据权利要求14的制品,其中第一和第二标识符包括散列关键字。
17.根据权利要求16的制品,其中操作还包括:
使用单个散列关键字函数生成散列关键字。
18.根据权利要求16的制品,其中操作还包括:
使用多个散列关键字函数生成散列关键字。
19.根据权利要求14的制品,其中操作还包括:
通过在第一源处该部分数据上执行第一函数来生成第一标识符;以及
通过在第二源处该部分相应数据上执行第一函数来生成第二标识符。
20.根据权利要求14的制品,其中确定第一标识符的操作还包括:
通过在第一源处该部分数据上执行第一函数来生成第一值;
通过在第一源处该部分数据上执行第二函数来生成第二值;以及
通过组合第一值和第二值来生成第一标识符。
21.根据权利要求20的制品,其中确定第二标识符的操作还包括:
通过在第二源处该部分相应数据上执行第一函数来生成第三值;
通过在第二源处该部分相应数据上执行第二函数来生成第四值;以及
通过组合第三值和第四值来生成第二标识符。
22.根据权利要求14的制品,其中确定第一标识符的操作还包括:
通过在第一源处该部分数据上执行第一函数来生成第一值;以及
通过在第一值上执行第二函数来生成第一标识符。
23.根据权利要求22的制品,其中确定第二标识符的操作还包括:
通过在第二源处该部分相应数据上执行第一函数来生成第二值;以及
通过在第二值上执行第二函数来生成第二标识符。
24.根据权利要求14的制品,其中当第一源处该部分数据更新时,第一源处该部分数据的第一标识符被确定,并且当第二源处该部分相应数据更新时,第二源处该部分相应数据的第二标识符被确定。
25.根据权利要求14的制品,其中当确定是该同步第一源和第二源处数据的时候时,第一标识符和第二标识符被确定。
26.根据权利要求14的制品,其中第一标识符和第二标识符周期性地确定。
27.一种数据同步系统,包括:
用于确定第一源处一部分数据的第一标识符的装置;用于确定第二源处一部分相应数据的第二标识符的装置;
用于比较第一和第二标识符的装置;以及用于当第一和第二标识符不匹配时,用第一源处该部分数据代替第二源处该部分相应数据的装置。
28.根据权利要求27的系统,还包括:
用于当第一和第二标识符匹配时,确定第一源处该部分数据与第二源处该部分相应数据匹配的装置。
29.根据权利要求27的系统,其中第一和第二标识符包括散列关键字。
30.根据权利要求29的系统,还包括:用于使用单个散列关键字函数生成散列关键字的装置。
31.根据权利要求29的系统,还包括:
用于使用多个散列关键字函数生成散列关键字的装置。
32.根据权利要求27的系统,还包括:
用于通过在第一源处该部分数据上执行第一函数来生成第一标识符的装置;以及
用于通过在第二源处该部分相应数据上执行第一函数来生成第二标识符的装置。
33.根据权利要求27的系统,其中确定第一标识符还包括:
用于通过在第一源处该部分数据上执行第一函数来生成第一值的装置;
用于通过在第一源处该部分数据上执行第二函数来生成第二值的装置;以及
用于通过组合第一值和第二值来生成第一标识符的装置。
34.根据权利要求33的系统,其中确定第二标识符还包括:
用于通过在第二源处该部分相应数据上执行第一函数来生成第三值的装置;
用于通过在第二源处该部分相应数据上执行第二函数来生成第四值的装置;以及
用于通过组合第三值和第四值来生成第二标识符的装置。
35.根据权利要求27的系统,其中确定第一标识符还包括:
用于通过在第一源处该部分数据上执行第一函数来生成第一值的装置;以及
用于通过在第一值上执行第二函数来生成第一标识符的装置。
36.根据权利要求35的系统,其中确定第二标识符还包括:
用于通过在第二源处该部分相应数据上执行第一函数来生成第二值的装置;以及
用于通过在第二值上执行第二函数来生成第二标识符的装置。
37.根据权利要求27的系统,其中当第一源处该部分数据更新时,第一源处该部分数据的第一标识符被确定,并且当第二源处该部分相应数据更新时,第二源处该部分相应数据的第二标识符被确定。
38.根据权利要求27的系统,其中当确定是该同步第一源和第二源处数据的时候时,第一标识符和第二标识符被确定。
39.根据权利要求27的系统,其中第一标识符和第二标识符周期性地确定。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/671,295 | 2003-09-25 | ||
US10/671,295 US7143117B2 (en) | 2003-09-25 | 2003-09-25 | Method, system, and program for data synchronization by determining whether a first identifier for a portion of data at a first source and a second identifier for a portion of corresponding data at a second source match |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1846197A true CN1846197A (zh) | 2006-10-11 |
CN100428177C CN100428177C (zh) | 2008-10-22 |
Family
ID=34376114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004800254873A Expired - Fee Related CN100428177C (zh) | 2003-09-25 | 2004-09-17 | 数据同步方法、系统和程序 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7143117B2 (zh) |
EP (1) | EP1714215A2 (zh) |
JP (1) | JP2007507030A (zh) |
KR (1) | KR100843652B1 (zh) |
CN (1) | CN100428177C (zh) |
TW (1) | TWI291111B (zh) |
WO (1) | WO2005029356A2 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163166A (zh) * | 2010-02-12 | 2011-08-24 | 巴比禄股份有限公司 | 数据备份方法 |
US8170786B2 (en) | 2006-08-16 | 2012-05-01 | init Innovative Informatikanwedungen In Transport-, Verkehr und Leitsystemen GmbH | Method and apparatus for determining reference points for groups of data |
CN102663547A (zh) * | 2012-03-28 | 2012-09-12 | 积成电子股份有限公司 | 电力调度主备系统全模型同步保持资源id不变化的方法 |
CN103703742A (zh) * | 2011-06-03 | 2014-04-02 | 苹果公司 | 基于电源状态的备份方法和装置 |
CN104065676A (zh) * | 2013-03-19 | 2014-09-24 | 联想(北京)有限公司 | 文件同步方法及文件同步设备 |
US9465696B2 (en) | 2011-06-03 | 2016-10-11 | Apple Inc. | Methods and apparatus for multi-phase multi-source backup |
US9483365B2 (en) | 2011-06-03 | 2016-11-01 | Apple Inc. | Methods and apparatus for multi-source restore |
US9542423B2 (en) | 2012-12-31 | 2017-01-10 | Apple Inc. | Backup user interface |
US9904597B2 (en) | 2011-06-03 | 2018-02-27 | Apple Inc. | Methods and apparatus for multi-phase restore |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7039656B1 (en) * | 1999-10-20 | 2006-05-02 | Yodlee.Com, Inc. | Method and apparatus for synchronizing data records between a remote device and a data server over a data-packet-network |
US20040109025A1 (en) * | 2002-08-28 | 2004-06-10 | Jean-Marie Hullot | Computer program comprising a plurality of calendars |
US8126842B2 (en) * | 2004-02-10 | 2012-02-28 | Research In Motion Limited | Apparatus, and associated method, for synchronizing databases connected by way of a radio air interface |
US7464266B2 (en) * | 2004-02-13 | 2008-12-09 | Microsoft Corporation | Cheap signatures for synchronous broadcast communication |
US7809682B2 (en) * | 2004-05-24 | 2010-10-05 | Apple Inc. | Data synchronization between multiple devices |
US7814231B2 (en) * | 2004-05-24 | 2010-10-12 | Apple Inc. | Method of synchronizing between three or more devices |
US7877356B1 (en) | 2004-05-24 | 2011-01-25 | Apple Inc. | Retaining intermediate states of shared groups of objects and notification of changes to shared groups of objects |
US7383291B2 (en) * | 2004-05-24 | 2008-06-03 | Apple Inc. | Method for sharing groups of objects |
US7484051B2 (en) * | 2004-06-14 | 2009-01-27 | International Business Machines Corporation | Apparatus, system and method for reliably updating a data group in a read-before-write data replication environment using a comparison file |
US7580959B2 (en) * | 2004-06-14 | 2009-08-25 | International Business Machines Corporation | Apparatus, system, and method for providing efficient disaster recovery storage of data using differencing |
US20060026458A1 (en) * | 2004-07-30 | 2006-02-02 | Knight Frederick E | Storage device identification replication |
JP2006106814A (ja) * | 2004-09-30 | 2006-04-20 | Konica Minolta Business Technologies Inc | 管理対象装置の管理システム及びこのシステムに用いられるデータサーバ並びにブランチサーバ |
US9053164B2 (en) * | 2005-05-05 | 2015-06-09 | International Business Machines Corporation | Method, system, and program product for using analysis views to identify data synchronization problems between databases |
TWI295437B (en) * | 2005-07-11 | 2008-04-01 | Asustek Comp Inc | Electric device with an automatic backup function |
US20070198659A1 (en) * | 2006-01-25 | 2007-08-23 | Lam Wai T | Method and system for storing data |
CN101009516B (zh) | 2006-01-26 | 2011-05-04 | 华为技术有限公司 | 一种进行数据同步的方法、系统及装置 |
US7877628B2 (en) * | 2006-06-08 | 2011-01-25 | International Business Machines Corporation | Mirroring data between primary and secondary sites |
EP2102750B1 (en) | 2006-12-04 | 2014-11-05 | Commvault Systems, Inc. | System and method for creating copies of data, such as archive copies |
JP5105856B2 (ja) * | 2006-12-20 | 2012-12-26 | Necシステムテクノロジー株式会社 | ストレージシステム、論理ボリュームのレプリケーション方法・プログラム |
US7840537B2 (en) * | 2006-12-22 | 2010-11-23 | Commvault Systems, Inc. | System and method for storing redundant information |
JP5211557B2 (ja) * | 2007-06-15 | 2013-06-12 | 富士通株式会社 | Web会議支援プログラム、該プログラムを記録した記録媒体、Web会議支援装置、およびWeb会議支援方法 |
CN101409614B (zh) | 2007-10-12 | 2011-04-13 | 华为技术有限公司 | 一种数据同步方法、系统和设备 |
US7941399B2 (en) | 2007-11-09 | 2011-05-10 | Microsoft Corporation | Collaborative authoring |
US8028229B2 (en) * | 2007-12-06 | 2011-09-27 | Microsoft Corporation | Document merge |
US8825758B2 (en) | 2007-12-14 | 2014-09-02 | Microsoft Corporation | Collaborative authoring modes |
US7991740B2 (en) * | 2008-03-04 | 2011-08-02 | Apple Inc. | Synchronization server process |
US8301588B2 (en) | 2008-03-07 | 2012-10-30 | Microsoft Corporation | Data storage for file updates |
JP2009237843A (ja) * | 2008-03-27 | 2009-10-15 | Brother Ind Ltd | ファイル管理システム、携帯端末及び携帯端末プログラム |
US8352870B2 (en) | 2008-04-28 | 2013-01-08 | Microsoft Corporation | Conflict resolution |
US8825594B2 (en) | 2008-05-08 | 2014-09-02 | Microsoft Corporation | Caching infrastructure |
US8429753B2 (en) | 2008-05-08 | 2013-04-23 | Microsoft Corporation | Controlling access to documents using file locks |
US8219524B2 (en) * | 2008-06-24 | 2012-07-10 | Commvault Systems, Inc. | Application-aware and remote single instance data management |
US9098495B2 (en) | 2008-06-24 | 2015-08-04 | Commvault Systems, Inc. | Application-aware and remote single instance data management |
US8417666B2 (en) | 2008-06-25 | 2013-04-09 | Microsoft Corporation | Structured coauthoring |
US8108634B1 (en) * | 2008-06-27 | 2012-01-31 | Emc B.V., S.A.R.L. | Replicating a thin logical unit |
US8166263B2 (en) | 2008-07-03 | 2012-04-24 | Commvault Systems, Inc. | Continuous data protection over intermittent connections, such as continuous data backup for laptops or wireless devices |
US9015181B2 (en) | 2008-09-26 | 2015-04-21 | Commvault Systems, Inc. | Systems and methods for managing single instancing data |
WO2010036754A1 (en) | 2008-09-26 | 2010-04-01 | Commvault Systems, Inc. | Systems and methods for managing single instancing data |
KR100935831B1 (ko) * | 2008-11-17 | 2010-01-08 | 우용태 | 복수의 이벤트 식별자가 포함된 데이타구조체를 이용한 데이타동기화 방법 및 상기 방법을 이용한 데이타 백업솔루션 |
US8412677B2 (en) | 2008-11-26 | 2013-04-02 | Commvault Systems, Inc. | Systems and methods for byte-level or quasi byte-level single instancing |
US8401996B2 (en) * | 2009-03-30 | 2013-03-19 | Commvault Systems, Inc. | Storing a variable number of instances of data objects |
US8346768B2 (en) * | 2009-04-30 | 2013-01-01 | Microsoft Corporation | Fast merge support for legacy documents |
US8578120B2 (en) | 2009-05-22 | 2013-11-05 | Commvault Systems, Inc. | Block-level single instancing |
US8214612B1 (en) * | 2009-09-28 | 2012-07-03 | Emc Corporation | Ensuring consistency of replicated volumes |
KR101045540B1 (ko) * | 2009-12-28 | 2011-07-01 | (주)유성글로벌 | 데이터 동기화 시스템 및 방법 |
US8935492B2 (en) | 2010-09-30 | 2015-01-13 | Commvault Systems, Inc. | Archiving data objects using secondary copies |
US10733151B2 (en) | 2011-10-27 | 2020-08-04 | Microsoft Technology Licensing, Llc | Techniques to share media files |
US9053079B2 (en) * | 2011-12-12 | 2015-06-09 | Microsoft Technology Licensing, Llc | Techniques to manage collaborative documents |
US9020890B2 (en) | 2012-03-30 | 2015-04-28 | Commvault Systems, Inc. | Smart archiving and data previewing for mobile devices |
US8775682B1 (en) * | 2012-05-08 | 2014-07-08 | Google Inc. | Data synchronization with eventual consistency |
US9633022B2 (en) | 2012-12-28 | 2017-04-25 | Commvault Systems, Inc. | Backup and restoration for a deduplicated file system |
US20140201140A1 (en) | 2013-01-11 | 2014-07-17 | Commvault Systems, Inc. | Data synchronization management |
US9197700B2 (en) * | 2013-01-18 | 2015-11-24 | Apple Inc. | Keychain syncing |
US9124637B2 (en) | 2013-01-18 | 2015-09-01 | Apple Inc. | Data protection for keychain syncing |
CN103186678B (zh) * | 2013-04-24 | 2016-09-14 | 曙光信息产业(北京)有限公司 | 数据修复方法、装置和系统 |
US10324897B2 (en) | 2014-01-27 | 2019-06-18 | Commvault Systems, Inc. | Techniques for serving archived electronic mail |
US9798596B2 (en) | 2014-02-27 | 2017-10-24 | Commvault Systems, Inc. | Automatic alert escalation for an information management system |
US9645891B2 (en) | 2014-12-04 | 2017-05-09 | Commvault Systems, Inc. | Opportunistic execution of secondary copy operations |
US9753816B2 (en) | 2014-12-05 | 2017-09-05 | Commvault Systems, Inc. | Synchronization based on filtered browsing |
US9588849B2 (en) | 2015-01-20 | 2017-03-07 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
US9952934B2 (en) * | 2015-01-20 | 2018-04-24 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
US10324914B2 (en) | 2015-05-20 | 2019-06-18 | Commvalut Systems, Inc. | Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files |
US20190332712A1 (en) * | 2018-04-30 | 2019-10-31 | Hewlett Packard Enterprise Development Lp | Switch configuration synchronization |
US10896201B2 (en) | 2018-05-18 | 2021-01-19 | International Business Machines Corporation | Synchronization of block based volumes |
US11144375B2 (en) | 2018-10-09 | 2021-10-12 | Argo AI, LLC | Execution sequence integrity parameter monitoring system |
US11138085B2 (en) * | 2018-10-09 | 2021-10-05 | Argo AI, LLC | Execution sequence integrity monitoring system |
CN111858775A (zh) * | 2020-08-06 | 2020-10-30 | 四川长虹电器股份有限公司 | 用于物联网平台的异地数据库的数据同步方法 |
US11656792B2 (en) * | 2021-06-29 | 2023-05-23 | International Business Machines Corporation | Mirroring data in write caches of a controller of a non-volatile memory |
Family Cites Families (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4480304A (en) * | 1980-10-06 | 1984-10-30 | International Business Machines Corporation | Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment |
JPS63245741A (ja) * | 1987-04-01 | 1988-10-12 | Fujitsu Ltd | デ−タの同期方式 |
US5339398A (en) * | 1989-07-31 | 1994-08-16 | North American Philips Corporation | Memory architecture and method of data organization optimized for hashing |
US5479654A (en) * | 1990-04-26 | 1995-12-26 | Squibb Data Systems, Inc. | Apparatus and method for reconstructing a file from a difference signature and an original file |
JPH05167640A (ja) * | 1991-12-11 | 1993-07-02 | Oki Electric Ind Co Ltd | 通信プロトコル実装方式 |
ATE172309T1 (de) | 1993-07-01 | 1998-10-15 | Legent Corp | Anordnung und verfahren zur verteilten datenverwaltung in vernetzten rechnersystemen |
US6141663A (en) * | 1994-03-18 | 2000-10-31 | Unimax Systems Corporation | Automatic external data synchronization method |
US5835953A (en) * | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
JP3176012B2 (ja) * | 1994-10-25 | 2001-06-11 | 株式会社東芝 | 記録装置及び再生装置 |
JPH08147888A (ja) * | 1994-11-24 | 1996-06-07 | Hitachi Ltd | ディジタル信号記録方法及び装置 |
US5727181A (en) * | 1996-02-14 | 1998-03-10 | International Business Machines Corporation | Array management system with volume transform filter |
US5970502A (en) * | 1996-04-23 | 1999-10-19 | Nortel Networks Corporation | Method and apparatus for synchronizing multiple copies of a database |
US5768532A (en) * | 1996-06-17 | 1998-06-16 | International Business Machines Corporation | Method and distributed database file system for implementing self-describing distributed file objects |
US7013315B1 (en) * | 1996-11-13 | 2006-03-14 | Intellisync Corporation | Synchronization of databases with record sanitizing and intelligent comparison |
US6101507A (en) * | 1997-02-11 | 2000-08-08 | Connected Corporation | File comparison for data backup and file synchronization |
JPH10255406A (ja) * | 1997-03-14 | 1998-09-25 | Hitachi Ltd | ディジタル信号記録装置、再生装置、記録方法および再生方法 |
US6108754A (en) * | 1997-04-03 | 2000-08-22 | Sun Microsystems, Inc. | Thread-local synchronization construct cache |
US5875461A (en) * | 1997-04-03 | 1999-02-23 | Sun Microsystems, Inc. | Method of synchronizing one of the objects with one of the threads at a time |
JP3901806B2 (ja) * | 1997-09-25 | 2007-04-04 | 富士通株式会社 | 情報管理システム及び二次サーバ |
US6199074B1 (en) * | 1997-10-09 | 2001-03-06 | International Business Machines Corporation | Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption |
JPH11232159A (ja) * | 1998-02-13 | 1999-08-27 | The Japan Reserch Institute Ltd | ファイル管理方法およびファイル管理のためのプログラムを記憶した媒体 |
US6603750B1 (en) * | 1998-10-09 | 2003-08-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Rehash timer for packet data communications |
JP2000163344A (ja) * | 1998-11-27 | 2000-06-16 | Nec Corp | ネットワーク管理システムのデータベース復旧方式 |
JP2000207847A (ja) * | 1999-01-14 | 2000-07-28 | Sony Corp | クロック再生回路およびクロック再生方法 |
US6470462B1 (en) | 1999-02-25 | 2002-10-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Simultaneous resynchronization by command for state machines in redundant systems |
JP4046893B2 (ja) * | 1999-05-28 | 2008-02-13 | 富士通株式会社 | データベース複写装置及びデータベース複写方法並びにデータベース複写プログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6249849B1 (en) * | 1999-06-16 | 2001-06-19 | International Business Machines Corporation | “Fail-Safe” updating of redundant data in multiple data storage libraries |
US6751634B1 (en) * | 1999-08-26 | 2004-06-15 | Microsoft Corporation | Method and system for detecting object inconsistency in a loosely consistent replicated directory service |
US6446090B1 (en) * | 1999-10-08 | 2002-09-03 | Unisys Corporation | Tracker sensing method for regulating synchronization of audit files between primary and secondary hosts |
JP3963417B2 (ja) * | 1999-11-19 | 2007-08-22 | 株式会社東芝 | データ同期処理のための通信方法および電子機器 |
US6493727B1 (en) * | 2000-02-07 | 2002-12-10 | Hewlett-Packard Company | System and method for synchronizing database in a primary device and a secondary device that are derived from a common database |
AU6902901A (en) * | 2000-05-24 | 2001-12-03 | Openwave Systems Inc. | Synchronisation of databases |
US20020059299A1 (en) * | 2000-07-14 | 2002-05-16 | Frederic Spaey | System and method for synchronizing databases |
US6529917B1 (en) * | 2000-08-14 | 2003-03-04 | Divine Technology Ventures | System and method of synchronizing replicated data |
US6694337B1 (en) * | 2000-10-26 | 2004-02-17 | Intel Corporation | Synchronizing databases |
JP2002334173A (ja) * | 2000-11-02 | 2002-11-22 | Matsushita Electric Ind Co Ltd | コンテンツ配信方法及びこれに用いるサーバ及び端末並びにコンピュータプログラム |
AU2002251700A1 (en) | 2000-12-20 | 2002-07-30 | Primarion, Inc. | Pll/dll dual loop data synchronization |
US6606694B2 (en) * | 2000-12-22 | 2003-08-12 | Bull Hn Information Systems Inc. | Write logging in mirrored disk subsystems |
US7177866B2 (en) * | 2001-03-16 | 2007-02-13 | Gravic, Inc. | Asynchronous coordinated commit replication and dual write with replication transmission and locking of target database on updates only |
FI113129B (fi) | 2001-03-26 | 2004-02-27 | Nokia Corp | Sovellusdatan synkronointi tietoliikennejärjestelmässä |
JP2002318716A (ja) * | 2001-04-20 | 2002-10-31 | Sony Corp | 配信システム、配信方法、サーバコンピュータ、クライアントコンピュータ |
US7499698B2 (en) | 2002-01-28 | 2009-03-03 | Qualcomm Incorporated | Synchronization of stored service parameters in a communication system |
FI114417B (fi) | 2001-06-15 | 2004-10-15 | Nokia Corp | Datan valitseminen synkronointia varten |
JP2003022009A (ja) * | 2001-07-10 | 2003-01-24 | Nec Corp | 簡易型データ真正性保証システム、方法、およびプログラム |
US6857044B2 (en) * | 2001-10-15 | 2005-02-15 | International Business Machines Corporation | Data storage device for fast multiple file write operations |
US7076508B2 (en) * | 2002-08-12 | 2006-07-11 | International Business Machines Corporation | Method, system, and program for merging log entries from multiple recovery log files |
US7089446B2 (en) * | 2003-01-09 | 2006-08-08 | International Business Machines Corporation | Method, system, and article of manufacture for creating a consistent copy |
US7024584B2 (en) * | 2003-01-09 | 2006-04-04 | International Business Machines Corporation | Method, system, and article of manufacture for maintaining data integrity |
AU2003303878A1 (en) * | 2003-02-06 | 2004-08-30 | Research In Motion Limited | Apparatus and method for synchronizing databases by comparing hash values |
EP1489862A1 (en) * | 2003-06-20 | 2004-12-22 | Axalto S.A. | Database synchronization |
US7370089B2 (en) * | 2003-07-11 | 2008-05-06 | International Business Machines Corporation | Autonomic learning method to load balance output transfers of two peer nodes |
US7047379B2 (en) * | 2003-07-11 | 2006-05-16 | International Business Machines Corporation | Autonomic link optimization through elimination of unnecessary transfers |
US7107420B2 (en) * | 2003-08-29 | 2006-09-12 | International Business Machines Corporation | Apparatus and method to adjust data transfer rate |
GB2409545A (en) * | 2003-12-24 | 2005-06-29 | Nokia Corp | File synchronisation |
US7412577B2 (en) * | 2004-02-05 | 2008-08-12 | International Business Machines Corporation | Shared data mirroring apparatus, method, and system |
EP1564658A1 (en) * | 2004-02-10 | 2005-08-17 | Research In Motion Limited | Apparatus and associated method for synchronizing databases by comparing hash values. |
US7475099B2 (en) * | 2004-02-25 | 2009-01-06 | International Business Machines Corporation | Predictive algorithm for load balancing data transfers across components |
US7580959B2 (en) * | 2004-06-14 | 2009-08-25 | International Business Machines Corporation | Apparatus, system, and method for providing efficient disaster recovery storage of data using differencing |
-
2003
- 2003-09-25 US US10/671,295 patent/US7143117B2/en not_active Expired - Fee Related
-
2004
- 2004-09-10 TW TW093127528A patent/TWI291111B/zh not_active IP Right Cessation
- 2004-09-17 KR KR1020067003714A patent/KR100843652B1/ko not_active IP Right Cessation
- 2004-09-17 CN CNB2004800254873A patent/CN100428177C/zh not_active Expired - Fee Related
- 2004-09-17 EP EP04787167A patent/EP1714215A2/en not_active Ceased
- 2004-09-17 JP JP2006527410A patent/JP2007507030A/ja active Pending
- 2004-09-17 WO PCT/EP2004/052231 patent/WO2005029356A2/en active Search and Examination
-
2006
- 2006-10-10 US US11/548,220 patent/US7647462B2/en not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8170786B2 (en) | 2006-08-16 | 2012-05-01 | init Innovative Informatikanwedungen In Transport-, Verkehr und Leitsystemen GmbH | Method and apparatus for determining reference points for groups of data |
CN102163166A (zh) * | 2010-02-12 | 2011-08-24 | 巴比禄股份有限公司 | 数据备份方法 |
US8589351B2 (en) | 2010-02-12 | 2013-11-19 | Buffalo Inc. | Computer program product and data backup method |
CN103703742A (zh) * | 2011-06-03 | 2014-04-02 | 苹果公司 | 基于电源状态的备份方法和装置 |
US9465696B2 (en) | 2011-06-03 | 2016-10-11 | Apple Inc. | Methods and apparatus for multi-phase multi-source backup |
US9483365B2 (en) | 2011-06-03 | 2016-11-01 | Apple Inc. | Methods and apparatus for multi-source restore |
CN103703742B (zh) * | 2011-06-03 | 2017-04-05 | 苹果公司 | 基于电源状态的备份方法和装置 |
US9904597B2 (en) | 2011-06-03 | 2018-02-27 | Apple Inc. | Methods and apparatus for multi-phase restore |
CN102663547A (zh) * | 2012-03-28 | 2012-09-12 | 积成电子股份有限公司 | 电力调度主备系统全模型同步保持资源id不变化的方法 |
CN102663547B (zh) * | 2012-03-28 | 2015-09-02 | 积成电子股份有限公司 | 电力调度主备系统全模型同步保持资源id不变化的方法 |
US9542423B2 (en) | 2012-12-31 | 2017-01-10 | Apple Inc. | Backup user interface |
CN104065676A (zh) * | 2013-03-19 | 2014-09-24 | 联想(北京)有限公司 | 文件同步方法及文件同步设备 |
Also Published As
Publication number | Publication date |
---|---|
US7143117B2 (en) | 2006-11-28 |
US20050071386A1 (en) | 2005-03-31 |
EP1714215A2 (en) | 2006-10-25 |
TWI291111B (en) | 2007-12-11 |
TW200525390A (en) | 2005-08-01 |
KR100843652B1 (ko) | 2008-07-04 |
CN100428177C (zh) | 2008-10-22 |
WO2005029356A3 (en) | 2005-05-12 |
US7647462B2 (en) | 2010-01-12 |
WO2005029356A2 (en) | 2005-03-31 |
US20070130216A1 (en) | 2007-06-07 |
KR20060070551A (ko) | 2006-06-23 |
JP2007507030A (ja) | 2007-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100428177C (zh) | 数据同步方法、系统和程序 | |
KR101602312B1 (ko) | 데이터 송신 방법, 데이터 수신 방법, 및 저장 장치 | |
US7627614B2 (en) | Lost write detection and repair | |
US6397351B1 (en) | Method and apparatus for rapid data restoration including on-demand output of sorted logged changes | |
US5592618A (en) | Remote copy secondary data copy validation-audit function | |
US8234446B2 (en) | Disk array apparatus, data distribution and management method, and data distribution and management program | |
CN102696017B (zh) | 一种维持数据存储可靠性的方法和系统 | |
US8626722B2 (en) | Consolidating session information for a cluster of sessions in a coupled session environment | |
CN1692336A (zh) | 用于提供数据的镜象副本的方法、系统和程序 | |
CN101334797A (zh) | 一种分布式文件系统及其数据块一致性管理的方法 | |
US7685386B2 (en) | Data storage resynchronization using application features | |
JP2007518195A (ja) | リモートデータミラーリングを用いたクラスタデータベース | |
US8135928B2 (en) | Self-adjusting change tracking for fast resynchronization | |
US7000083B2 (en) | Resynchronization of count key data with its corresponding meta data | |
US7849355B2 (en) | Distributed object sharing system and method thereof | |
CN115858236A (zh) | 一种数据备份方法和数据库集群 | |
EP3258377B1 (en) | Replication of log-structured data | |
US8942073B1 (en) | Maintaining tape emulation consistency | |
US8832395B1 (en) | Storage system, and method of storage control for storage system | |
US20220179743A1 (en) | Method, device and computer program product for storage management | |
CN116303789A (zh) | 多分片多副本数据库并行同步方法、装置及可读介质 | |
CN116954479A (zh) | 用于raid的数据访问方法、电子设备和计算机程序产品 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081022 Termination date: 20200917 |