CN101370032B - 数据同步中的修改日志维护方法和装置 - Google Patents
数据同步中的修改日志维护方法和装置 Download PDFInfo
- Publication number
- CN101370032B CN101370032B CN2008101608818A CN200810160881A CN101370032B CN 101370032 B CN101370032 B CN 101370032B CN 2008101608818 A CN2008101608818 A CN 2008101608818A CN 200810160881 A CN200810160881 A CN 200810160881A CN 101370032 B CN101370032 B CN 101370032B
- Authority
- CN
- China
- Prior art keywords
- data record
- record item
- data
- item
- changelog
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012423 maintenance Methods 0.000 title claims abstract description 11
- 238000012986 modification Methods 0.000 title claims description 40
- 230000004048 modification Effects 0.000 title claims description 40
- 238000012217 deletion Methods 0.000 claims abstract description 34
- 230000037430 deletion Effects 0.000 claims abstract description 34
- 230000009471 action Effects 0.000 claims description 49
- 238000013479 data entry Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 22
- 230000008859 change Effects 0.000 description 13
- 238000005457 optimization Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据同步中的修改日志维护方法和装置,其中,修改日志用于记录对对象执行的操作,由数据记录项组成,数据记录项包括用于唯一标识对象的标识信息以及标识信息所对应的操作类型,操作类型包括添加、更新和删除,上述方法包括:在两次数据同步之间,对于需要添加到修改日志的第一数据记录项,读取其标识信息;查找修改日志中是否存在包含标识信息的第二数据记录项,在存在第二数据记录项的情况下,根据第一数据记录项对第二数据记录项进行设置。本发明防止了changelog文件的无限增长。
Description
技术领域
本发明涉及移动通信领域,尤其涉及数据同步中的修改日志维护方法和装置。
背景技术
目前,移动终端中的个人信息、日程信息和邮件信息等资源,已经成为移动终端信息管理的一个重要组成部分。如何安全有效地将数据备份到网络服务器中,以使在更换诸如手机等移动终端或者其数据发生变化时,可以方便地将备份数据恢复,这一问题成为数据同步研究的主题之一,SyncML协议可以实现移动终端和网络服务器的数据同步。
假设手机中的手机卡,例如:SIM(Subscriber Identity Model,客户识别模块)或者USIM(Universal Subscriber Identity Model,通用客户识别模块)卡等,在某个网络服务器上注册了一个SyncML(同步标记语言)账号,则当手机的数据信息发生变化时,用户可以直接用手机中的SyncML应用进行数据同步,使得手机终端数据与服务器数据保持一致。
目前基本的数据同步类型有双向快同步和双向慢同步。其中,双向慢同步将移动终端和网络服务器上的所有数据记录项(例如,名片夹和日程表)进行同步;双向快同步将移动终端和网络服务器上自上一次同步之后发生的所有变化进行同步。注册SyncML协议业务的用户可以选择其中一种方式,将移动终端和网络服务器之间的数据进行数据同步,最终使得手机终端和服务器上的数据保持一致。
其中,对于以交换变化信息为目的的双向快同步而言,存在changelog(修改日志)的设计问题。Changelog用于记录移动终端或网络服务器(即,上述二者其中一方)自上一次同步之后的数据变化信息,该变化信息以数据记录项的形式出现,包括两部分内容:对象和针对对象所进行的操作。其中,针对对象所进行的操作分为三种类型:添加(ADD)、删除(DELETE)和更新(UPDATE)。即,changelog要记录针对哪一条记录做了何种修改。
图1是现有技术中,在诸如手机的移动终端中的changelog的数据结构图,如图1所示,该changelog包括两个数据项:操作对象以及针对该对象所进行的操作,在这里,操作对象引用的是存储于手机的每一条信息在数据库记录的唯一ID号。
在SyncML协议中,数据库记录的唯一ID号称为局部唯一标识(Locally Unique Identifier,简称LUID),该LUID在手机中生成且是唯一的;在手机侧,即使添加的记录项数据与某一已被删除的记录完全相同,其LUID也与原来被删除记录的LUID不同。
图2是图1所示的changelog的具体实例图,如图2所示,分别对对象进行了以下操作:对LUID为10的记录进行了添加操作,对LUID为5的记录进行了删除操作,对LUID为6的记录和LUID为7的记录进行了修改操作。
基于SyncML协议的规定,存在如下问题:
(1)在两次同步之间,若对某个记录进行了多次操作,则每次操作都将被记录到changelog文件中。实际上,只有针对该记录的最后一次修改是有效的,对应地,在changelog文件中,也只有最后一次记录是有意义的,因此,基于SyncML协议的规定将会在changelog文件中产生冗余数据。
(2)在存储于手机的某一条变化信息已经顺利地被同步到网络侧之后,该记录项仍然记录在changelog文件中;事实上,该记录项的数据已经无效,这同样导致了changelog文件存在冗余数据。
上述两个原因导致changelog文件由于包含了大量的无效冗余数据而无限增大,从而占用越来越大的存储空间。
发明内容
考虑到相关技术中存在的上述问题而提出本发明,为此,本发明的主要目的在于提供一种数据同步中的修改日志维护方法和装置,用以解决上述问题。
根据本发明的一个方面,提供了一种数据同步中的修改日志维护方法。
根据本发明的数据同步中的修改日志维护方法,其中,修改日志用于记录对对象执行的操作,由数据记录项组成,数据记录项包括用于唯一标识对象的标识信息以及标识信息所对应的操作类型,操作类型包括添加、更新和删除,上述方法包括:在两次数据同步之间,对于需要添加到修改日志的第一数据记录项,读取其标识信息;查找修改日志中是否存在包含标识信息的第二数据记录项,在存在第二数据记录项的情况下,根据第一数据记录项对第二数据记录项进行设置。
优选地,根据第一数据记录项对第二数据记录项进行设置具体包括:在第一数据记录项所对应的操作为删除的情况下,如果第二数据记录项包括的操作类型为添加,则将第二数据记录项删除,如果第二数据记录项包括操作类型为更新,则将第二数据记录项的操作类型设置为删除;在第一数据记录项所对应的操作为更新的情况下,第二数据记录项包括的操作类型保持不变。
优选地,在不存在第二数据记录项的情况下,将第一记录项添加到修改日志,并根据第一数据记录项所对应的操作设置操作类型。
优选地,数据记录项还包括标识码,其中,标识码用于标识数据记录项是否有效。
优选地,标识码标识为无效至少包括以下两种情况之一:第一数据记录项所对应的操作导致第二数据记录项为无效;修改日志中的数据记录项的同步过程完成。
优选地,第一数据记录项所对应的操作导致第二数据记录项为无效具体包括:第一数据记录项所对应的操作为删除,且第二数据记录项包含的操作类型为添加。
优选地,在根据第一数据记录项对第二数据记录项进行设置之后,上述方法进一步包括:将标识码标识为有效的数据记录项保存为新修改日志;使用新修改日志代替修改日志。
优选地,修改日志设置在移动终端侧或者网络侧。
优选地,在修改日志设置在移动终端侧的情况下,上述方法进一步包括:移动终端和网络侧通过修改日志完成数据同步之后,移动终端删除修改日志中的所有数据记录项。
根据本发明的另一个方面,提供了一种数据同步中的修改日志维护装置。
根据本发明的数据同步中的修改日志维护装置,其中,修改日志用于记录对对象执行的操作,由数据记录项组成,数据记录项包括用于唯一标识对象的标识信息以及标识信息所对应的操作类型,操作类型包括添加、更新和删除,上述装置包括:读取模块,用于在两次数据同步之间,对于需要添加到修改日志的第一数据记录项,读取其标识信息;查找模块,用于查找修改日志中是否存在包含标识信息的第二数据记录项;设置模块,用于在查找模块的查找结果为存在第二数据记录项的情况下,根据第一数据记录项对第二数据记录项进行设置。
优选地,上述装置进一步包括:删除模块,用于删除修改日志中完成数据同步的所有数据记录项。
通过本发明的上述至少一个技术方案,针对在两次同步之间,对存储于手机终端中的某条信息进行多次修改而导致changelog文件存在冗余数据的问题,通过将后一次changelog的数据记录项叠加到前一次数据记录项之上的技术手段,只保存了最后一次的变化信息,从而防止了changelog文件的无限增长。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是现有技术中,在诸如手机的移动终端中,其changelog的数据结构图;
图2是根据图1所示的changelog数据结构图的具体实例图;
图3是根据本发明实施例的数据同步中的changelog维护装置的结构框图;
图4是根据本发明实施例的数据同步中的changelog维护方法的流程图;
图5是根据本发明实施例的在两次同步之间,对同一条数据记录项进行修改时,所对应的changelog中的信息变化的示意图;
图6是根据本发明实施例的在两次同步之间,对LUID为5的记录进行了UPDATE的操作的示意图;
图7是根据本发明实施例的在两次同步之间,在图6所示的操作后,对LUID为5的记录进行了UPDATE的操作后,相应数据记录项的示意图;
图8是根据本发明实施例的在两次同步之间,在图7所示的操作后,对LUID为5的记录进行了DELETE的操作后,相应数据记录项的示意图;
图9是根据本发明实施例的在两次同步之间,某记录因无效被删除后的changelog的示意图;
图10是根据本发明实施例的优化的changelog数据结构的示意图;
图11是根据本发明实施例的在两次同步之间,采用优化的changelog数据结构的信息变化的示意图;
图12是根据本发明实施例的ADD操作前changelog的记录项的示意图;
图13是根据本发明实施例的ADD操作后changelog的记录项的示意图;
图14是根据本发明实施例的DELETE操作后changelog的记录项的示意图。
具体实施方式
功能概述
本发明针对在两次同步之间,对存储于手机终端中的某条信息进行多次修改而导致changelog(修改日志)文件存在冗余数据的问题,通过将后一次changelog的数据记录项叠加到前一次数据记录项之上的技术手段,只保存了最后一次的变化信息,从而防止了changelog文件的无限增长。
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
装置实施例
根据本发明实施例,提供了一种数据同步中的changelog维护装置。在该装置中,changelog用于记录对对象执行的操作,由数据记录项组成,数据记录项包括用于唯一标识对象的标识信息,即,局部唯一标识(Locally Unique Identifier,简称LUID)以及标识信息所对应的操作类型,其中,操作类型包括添加(ADD)、更新(UPDATE)和删除(DELETE)。
图3是根据本发明实施例的数据同步中的changelog维护装置的结构框图,如图3所示,该装置包括读取模块32、查找模块34、设置模块36,下面对上述结构进行详细描述。
读取模块32,用于在两次数据同步之间,对于需要添加到changelog的第一数据记录项,读取其标识信息;
查找模块34,连接至读取模块32,用于查找changelog中是否存在包含读取模块32读取的标识信息的第二数据记录项;
设置模块36,连接至查找模块34,用于在查找模块的查找结果为存在第二数据记录项的情况下,根据第一数据记录项对第二数据记录项进行设置。
通过该实施例,将包括同一个标识信息的数据记录项进行叠加处理,保存最后一次的变化信息,从而防止了changelog文件的无限增长。
优选地,上述装置进一步包括:删除模块(图中未示出),用于删除changelog中完成数据同步的所有数据记录项。通过该优选实施例,将完成数据同步的所有数据记录项删除,能够减小占用的存储空间。
方法实施例
根据本发明实施例,提供了一种数据同步中的changelog维护方法。在该方法中,changelog可以设置在移动终端侧或者网络侧,changelog用于记录对对象执行的操作,由数据记录项组成,数据记录项包括用于唯一标识对象的标识信息(即,LUID)以及LUID所对应的操作类型,其中,操作类型包括添加(ADD)、更新(UPDATE)和删除(DELETE)。
图4是根据本发明实施例的数据同步中的changelog维护方法的流程图,如图4所示,该方法包括:
步骤S402,在两次数据同步之间,对于需要添加到changelog的第一数据记录项,读取其LUID;
步骤S404,查找changelog中是否存在包含LUID的第二数据记录项,在存在第二数据记录项的情况下,根据第一数据记录项对第二数据记录项进行设置;在不存在第二数据记录项的情况下,将第一记录项添加到changelog,并根据第一数据记录项所对应的操作设置操作类型。
通过该实施例,采用将后一次changelog的数据记录项叠加到前一次数据记录项之上的技术手段,只保存了最后一次的变化信息,避免了“在两次同步之间,对某个记录可能会进行多次操作,如果每次操作都记录下来会导致changelog文件增长过大”的问题,从而防止了changelog文件的无限增长。
图5是根据本发明实施例的在两次同步之间,对同一条数据记录项进行修改时,所对应的changelog中的信息变化的示意图,如图5所示:
在步骤S404中,根据第一数据记录项对第二数据记录项进行设置的操作(即,对同一条changelog记录进行修改时采用的策略)具体包括以下两种情况:
(41)在第一数据记录项所对应的操作为DELETE的情况下,如果第二数据记录项包括的操作类型为ADD(即,已有记录为LUIDADD),则将第二数据记录项删除,即,添加后又删除,相互抵消;如果第二数据记录项包括操作类型为UPDATE(即,已有记录为LUID UPDATE,表示上一次是对该记录更新),则将第二数据记录项的操作类型设置为DELETE(即,将LUID UPDATE修改为LUIDDELETE)。此外,已有记录不可能为LUID DELETE,因为无法删除已经删除的记录。
(42)在第一数据记录项所对应的操作为UPDATE的情况下,第二数据记录项包括的操作类型保持不变。即,如果已有记录为LUID ADD,表明刚添加,则changelog文件不变;如果已有记录为LUID UPDATE,表明刚更新,则changelog文件也不变;此外,changelog文件不可能存在LUID DELETE,因为不可能先删除再更新。
在步骤S404中,根据第一数据记录项所对应的操作设置操作类型具体包括以下情况:
(43)如果第一数据记录项所对应的操作为ADD,则将其操作类型设置为ADD;即,当添加一条记录时,在changelog文件中添加一条记录:LUID ADD,该LUID为添加时新分配的,理论上changelog文件不可能已存在该LUID的记录。
(44)如果第一数据记录项所对应的操作为UPDATE,则将其操作类型设置为UPDATE,即,在changelog文件中添加一条记录:LUID UPDATE。
(45)如果第一数据记录项所对应的操作为DELETE,则将其操作类型设置为DELETE,即,在changelog文件中添加一条记录:LUID DELETE。
下面结合图6、图7、图8描述在两次同步过程中,对LUID为5的操作先后进行两次更新操作、一次删除操作的changelog更新情况:
图6是根据本发明实施例的在两次同步之间,对LUID为5的记录进行了UPDATE的操作,如图6所示,第一次对LUID为5的记录进行更新,由于changelog文件中不存在LUID为5的记录项,则添加“5UPDATE”的数据记录项。
图7是根据本发明实施例的在两次同步之间,在图6所示的操作后,对LUID为5的记录进行了UPDATE的操作后,相应数据记录项的示意图,如图7所示,第二次对移动终端的数据中LUID为5的记录进行更新后,发现changelog文件中存在LUID为5的记录,且操作为UPDATE,则changelog文件保持不变。
图8是根据本发明实施例的在两次同步之间,在图7所示的操作后,对LUID为5的记录进行了DELETE的操作后,相应数据记录项的示意图,如图8所示,对LUID为5的记录进行删除操作后,同样地,发现changelog文件中存在该LUID对应的记录,且操作类型为UPDATE,changelog应该将该LUID对应记录项的操作类型改为DELETE。
该实施例在不增加新的changlog数据记录项的前提下,采用叠加的方法,只保存了最后一次修改的信息,减小了changelog文件的大小,节省了文件的存储空间。
并且,通过该实例,对于changelog文件的大小得到了限制,其最大文件长度为2*MAXNUM*“一个记录项的大小”,其中,MAXNUM为终端所支持的记录数,即最大文件长度为2倍的终端支持的记录数的2倍乘以记录项的大小,它仅仅出现在将MAXNUM个数据全部删除后又添加MAXNUM个数据的情况下。
图9是根据本发明实施例的在两次同步之间,某记录因无效被删除后的changelog的示意图,如图9所示,空白行即为该记录所释放的存储空间。在此之前,对LUID为5的记录项先进行了添加,后又进行了删除的操作,因而,使得该记录由于无效而被删除。在该实施例中,LUID为5的记录因后续的操作而导致该记录项无效,从而释放存储空间。
上述两个实施例虽然具有防止changelog文件无限增大,且便于查找的优点,但是存在文件维护比较困难、管理混乱的缺陷。例如,为了重复利用实施例二中释放的存储空间,要将changelog进行刷新并将后续添加的changelog记录项存储于该位置。但是,对于空闲存储空间的定位和再利用是相当复杂的。
针对上述changelog文件的对于空闲存储空间的定位和再利用复杂的问题,本发明提供了一个优选实施例,为changelog的数据记录项增加一个用于标识数据记录项有效与否的标识码FLAG,即,上述数据记录项还包括用于标识数据记录项是否有效的标识码(FLAG)。
图10是根据本发明实施例的优化的changelog数据结构的示意图,如图10所示,该changelog数据结构包括三部分:标识码FLAG、LUID(即,数据库记录的唯一ID号)、以及LUID所进行的操作类型,其中,上述标识码有两种状态,有效或者无效。优选地,有效用1来表示,无效用0来表示。
图11是根据本发明实施例的在两次同步之间,采用优化的changelog数据结构的信息变化的示意图,关于图5中对changelog中的信息变化的实现过程在此不再赘述。
如图11所示,关于FLAG标识的赋值,可以采取以下策略:当向changelog文件新添加一个任何操作类型的记录项时,其FLAG标志为有效;对于标识码FLAG标识为无效,至少包括以下两种情况之一:
(1)第一数据记录项所对应的操作导致第二数据记录项为无效,即,后续的操作导致当前changelog的数据记录项无效,例如,第一数据记录项所对应的操作为删除,且第二数据记录项包含的操作类型为添加,将FLAG置为无效,即,对同一个LUID先添加后删除的操作,该数据记录项对应的changelog的数据记录项为无效。
(2)Changelog中的数据记录项的同步过程完成。
图12是根据本发明实施例的ADD操作前changelog的记录项的示意图,如图12所示,LUID为1的记录项对应的操作类型为ADD,LUID为2的记录项对应的操作类型为DELETE,LUID为3的记录项对应的操作类型为UPDATE,LUID为4的记录项对应的操作类型为DELETE,以上各记录项的FLAG标志为1。
图13是根据本发明实施例的ADD操作后changelog的记录项的示意图,如图13所示,向changelog文件新添加一个ADD的操作类型的记录项,添加“5ADD”,并且,由于是新添加的记录项,所以该条记录有效,其对应的FLAG标志为1。
图14是根据本发明实施例的DELETE操作后changelog的记录项的示意图,如图14所示,在添加了LUID为5的记录项后,在两次同步之间,又对该项记录进行了DELETE的操作,因此,该条记录项无效,其对应的FLAG标志为0。此外,在该实施例中,当同步某一条数据记录顺利结束后,该数据记录项对应的changelog记录为无效,将其所对应的FLAG标志设置为0。
通过该实施例,当changelog记录项无效时,对changelog记录的更新不是将该记录删除,而是将该数据记录项FLAG置为无效。这样,根据changelog文件中的FLAG标志,就可以解决空闲存储空间的定位和再利用复杂的问题,其具体实施过程可以通过如下方式实现:
通过上述在数据记录项中设置的用于标识数据记录项是否有效的标识码(即,FLAG标志),在根据第一数据记录项对第二数据记录项进行设置之后,将标识码标识为有效的数据记录项保存为新changelog;使用新changelog代替changelog;例如,根据FLAG标志将所有有效的changelog记录保存于一个临时文件;将原changelog文件删除;将临时文件更名为原changelog文件名。
从上述过程可以看出:设置一个用于标识数据记录项有效与否的标识码FLAG,并根据changelog文件中的FLAG标志状态得到一个全新的changelog文件,如此循环地对该changelog文件进行操作,使得文件维护变得非常简单。
优选地,可以删除changelog中的所有完成数据同步数据记录项;例如,在changelog设置在移动终端侧的情况下,在移动终端和网络侧通过changelog完成数据同步之后,移动终端删除changelog中的所有数据记录项。通过该优选实施例,将完成数据同步的所有数据记录项删除,能够减小占用的存储空间。
综上所述,在本发明的实施例中:
1、在不增加新的changlog数据记录项的前提下,采用叠加的方法,只保存了最后一次修改的信息,减小了changelog文件的大小,节省了文件的存储空间;
2、若需添加的数据记录项所对应的操作导致已经存在的数据记录项为无效或者在数据记录项的同步顺利完成之后,将changelog中对应的数据记录项删除,从而节省了存储空间;
3、为changelog的数据记录项增加一个用于标识数据记录项有效与否的标识码,并根据changelog文件中的FLAG标识状态得到一个全新的changelog文件,如此循环地对该changelog文件进行操作,使空闲存储空间的定位和再利用这一复杂过程变得非常简单,方便了changelog文件的维护。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据同步中的修改日志维护方法,所述修改日志用于记录对对象执行的操作,由数据记录项组成,所述数据记录项包括用于唯一标识对象的标识信息以及所述标识信息所对应的操作类型,所述操作类型包括添加、更新和删除,其特征在于,所述方法包括:
在两次数据同步之间,对于需要添加到所述修改日志的第一数据记录项,读取其标识信息;
查找所述修改日志中是否存在包含所述标识信息的第二数据记录项,在存在所述第二数据记录项的情况下,根据所述第一数据记录项对所述第二数据记录项进行设置;其中,根据所述第一数据记录项对所述第二数据记录项进行设置具体包括:在所述第一数据记录项所对应的操作为删除的情况下,如果所述第二数据记录项包括的操作类型为添加,则将所述第二数据记录项删除,如果所述第二数据记录项包括操作类型为更新,则将所述第二数据记录项的操作类型设置为删除;在所述第一数据记录项所对应的操作为更新的情况下,所述第二数据记录项包括的操作类型保持不变。
2.根据权利要求1所述的方法,其特征在于,在不存在所述第二数据记录项的情况下,将所述第一记录项添加到所述修改日志,并根据所述第一数据记录项所对应的操作设置操作类型。
3.根据权利要求1所述的方法,其特征在于,所述数据记录项还包括标识码,其中,所述标识码用于标识所述数据记录项是否有效。
4.根据权利要求3所述的方法,其特征在于,所述标识码标识为无效至少包括以下两种情况之一:
所述第一数据记录项所对应的操作导致所述第二数据记录项为无效;
所述修改日志中的数据记录项的同步过程完成。
5.根据权利要求4所述的方法,其特征在于,所述第一数据记录项所对应的操作导致所述第二数据记录项为无效具体包括:
所述第一数据记录项所对应的操作为删除,且所述第二数据记录项包含的操作类型为添加。
6.根据权利要求3所述的方法,其特征在于,在所述根据所述第一数据记录项对所述第二数据记录项进行设置之后,所述方法进一步包括:
将所述标识码标识为有效的数据记录项保存为新修改日志;
使用所述新修改日志代替所述修改日志。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述修改日志设置在移动终端侧或者网络侧。
8.根据权利要求7所述的方法,其特征在于,在所述修改日志设置在移动终端侧的情况下,所述方法进一步包括:
所述移动终端和网络侧通过所述修改日志完成数据同步之后,所述移动终端删除所述修改日志中的所有数据记录项。
9.一种数据同步中的修改日志维护装置,所述修改日志用于记录对对象执行的操作,由数据记录项组成,所述数据记录项包括用于唯一标识对象的标识信息以及所述标识信息所对应的操
作类型,所述操作类型包括添加、更新和删除,其特征在于,所述装置包括:
读取模块,用于在两次数据同步之间,对于需要添加到所述修改日志的第一数据记录项,读取其标识信息;
查找模块,用于查找所述修改日志中是否存在包含所述标识信息的第二数据记录项;
设置模块,用于在所述查找模块的查找结果为存在所述第二数据记录项的情况下,根据所述第一数据记录项对所述第二数据记录项进行设置;其中,根据所述第一数据记录项对所述第二数据记录项进行设置具体包括:在所述第一数据记录项所对应的操作为删除的情况下,如果所述第二数据记录项包括的操作类型为添加,则将所述第二数据记录项删除,如果所述第二数据记录项包括操作类型为更新,则将所述第二数据记录项的操作类型设置为删除;在所述第一数据记录项所对应的操作为更新的情况下,所述第二数据记录项包括的操作类型保持不变。
10.根据权利要求9所述的装置,其特征在于,进一步包括:
删除模块,用于删除所述修改日志中完成数据同步的所有数据记录项。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101608818A CN101370032B (zh) | 2008-09-09 | 2008-09-09 | 数据同步中的修改日志维护方法和装置 |
PCT/CN2008/073860 WO2010028529A1 (zh) | 2008-09-09 | 2008-12-30 | 数据同步中的修改日志维护方法和装置 |
US13/062,941 US20110167041A1 (en) | 2008-09-09 | 2008-12-30 | Method and device for maintaining a changelog in data synchronization |
EP08876917.9A EP2328302B1 (en) | 2008-09-09 | 2008-12-30 | A method and device for maintaining a changelog in data synchronization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101608818A CN101370032B (zh) | 2008-09-09 | 2008-09-09 | 数据同步中的修改日志维护方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101370032A CN101370032A (zh) | 2009-02-18 |
CN101370032B true CN101370032B (zh) | 2011-08-10 |
Family
ID=40413646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101608818A Expired - Fee Related CN101370032B (zh) | 2008-09-09 | 2008-09-09 | 数据同步中的修改日志维护方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110167041A1 (zh) |
EP (1) | EP2328302B1 (zh) |
CN (1) | CN101370032B (zh) |
WO (1) | WO2010028529A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101711064B (zh) * | 2009-11-25 | 2014-03-12 | 中兴通讯股份有限公司 | 修改信息的管理方法及终端 |
CN101751473A (zh) * | 2009-12-31 | 2010-06-23 | 中兴通讯股份有限公司 | 一种修改记录项的查找、更新和同步方法及数据同步设备 |
CN101923571B (zh) * | 2010-07-29 | 2013-05-01 | 中兴通讯股份有限公司 | 管理终端数据记录的方法及装置 |
US8392369B2 (en) * | 2010-09-10 | 2013-03-05 | Microsoft Corporation | File-backed in-memory structured storage for service synchronization |
CN103825918B (zh) * | 2012-11-16 | 2018-09-18 | 腾讯科技(深圳)有限公司 | 数据同步方法、终端设备、服务器和系统 |
JP5905403B2 (ja) * | 2013-01-29 | 2016-04-20 | ファナック株式会社 | 機械または制御装置の情報を電子メールで送信する制御装置 |
CN104809033B (zh) * | 2014-01-27 | 2018-09-07 | 中国移动通信集团河南有限公司 | 一种备份方法及系统 |
CN106294351A (zh) * | 2015-05-13 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 日志事件处理方法和装置 |
CN107491975B (zh) * | 2016-06-13 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 用于服务器和用于消费者的数据槽数据处理方法和装置 |
CN108270814A (zh) * | 2016-12-30 | 2018-07-10 | 北京优朋普乐科技有限公司 | 一种数据同步方法及装置 |
CN108418746B (zh) * | 2018-02-13 | 2020-06-12 | 论客科技(广州)有限公司 | 一种邮件同步方法、装置与计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1180890A2 (en) * | 2000-08-17 | 2002-02-20 | FusionOne, Inc. | Change log aggregation and optimization |
CN101106780A (zh) * | 2007-07-25 | 2008-01-16 | 中兴通讯股份有限公司 | 多模移动终端的数据同步方法 |
CN101122924A (zh) * | 2007-09-30 | 2008-02-13 | 华为技术有限公司 | 逻辑日志生成方法、数据库备份/恢复方法与系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040139082A1 (en) * | 2002-12-30 | 2004-07-15 | Knauerhase Robert C. | Method for minimizing a set of UDDI change records |
EP1564657A1 (en) * | 2004-02-10 | 2005-08-17 | Research In Motion Limited | Apparatus and method for data communication and synchronisation |
CN100525208C (zh) * | 2006-01-05 | 2009-08-05 | 乐金电子(中国)研究开发中心有限公司 | 一种数据同步方法 |
US20070174315A1 (en) * | 2006-01-18 | 2007-07-26 | Avraham Leff | Compressing state in database replication |
CN1968281A (zh) * | 2006-11-21 | 2007-05-23 | 华为技术有限公司 | 实现终端间单词库数据同步的方法及终端 |
-
2008
- 2008-09-09 CN CN2008101608818A patent/CN101370032B/zh not_active Expired - Fee Related
- 2008-12-30 WO PCT/CN2008/073860 patent/WO2010028529A1/zh active Application Filing
- 2008-12-30 US US13/062,941 patent/US20110167041A1/en not_active Abandoned
- 2008-12-30 EP EP08876917.9A patent/EP2328302B1/en not_active Not-in-force
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1180890A2 (en) * | 2000-08-17 | 2002-02-20 | FusionOne, Inc. | Change log aggregation and optimization |
CN101106780A (zh) * | 2007-07-25 | 2008-01-16 | 中兴通讯股份有限公司 | 多模移动终端的数据同步方法 |
CN101122924A (zh) * | 2007-09-30 | 2008-02-13 | 华为技术有限公司 | 逻辑日志生成方法、数据库备份/恢复方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2328302B1 (en) | 2014-08-13 |
US20110167041A1 (en) | 2011-07-07 |
EP2328302A4 (en) | 2012-03-14 |
CN101370032A (zh) | 2009-02-18 |
EP2328302A1 (en) | 2011-06-01 |
WO2010028529A1 (zh) | 2010-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101370032B (zh) | 数据同步中的修改日志维护方法和装置 | |
CN101136783B (zh) | 一种网管系统配置数据的备份、恢复方法及装置 | |
US9305002B2 (en) | Method and apparatus for eventually consistent delete in a distributed data store | |
CN100472445C (zh) | 通信设备的配置加载方法和系统 | |
AU2010265607B2 (en) | Method for finding, updating and synchronizing modified record item and data synchronizing device | |
US20140081933A1 (en) | Preserving File Metadata During Atomic Save Operations | |
CN101552692B (zh) | 网元设备的操作及维护系统及其参数配置方法 | |
CN102088519A (zh) | 通讯录管理方法及其装置 | |
CN101923571B (zh) | 管理终端数据记录的方法及装置 | |
KR100974160B1 (ko) | 모바일 디바이스 사용자 설정을 유지하기 위한 방법, 시스템 및 컴퓨터 판독가능한 저장 매체 | |
CN102222027A (zh) | 终端恢复出厂设置方法及装置 | |
CN113239004B (zh) | 一种笔记同步方法及装置 | |
CN105787091A (zh) | 支持多终端的内容发布系统及方法 | |
CN106570163A (zh) | 一种面向不可靠环境的审计日志读写管理方法以及系统 | |
CN102254023A (zh) | 一种网页页面编辑的方法及装置 | |
CN102594874A (zh) | 一种同步处理方法和装置 | |
CN101610225B (zh) | 一种同步处理方法、系统和装置 | |
CN100433005C (zh) | 搜索系统索引切换的方法及搜索系统 | |
CN101986662A (zh) | 一种widget实例运行方法及系统 | |
CN101014059A (zh) | 电子电话簿的数据信息存储和扩展的方法 | |
CN103177026A (zh) | 数据管理方法和数据管理系统 | |
CN103108070B (zh) | 电话簿备份系统及其方法 | |
CN107404511A (zh) | 集群中服务器的替换方法及设备 | |
CN101751393B (zh) | 数据同步系统及方法 | |
CN111045997B (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 | ||
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: 20110810 Termination date: 20160909 |