数据库数据的同步的制作方法

文档序号:6423617阅读:154来源:国知局
专利名称:数据库数据的同步的制作方法
背景技术
本发明涉及在电信系统中数据库数据的同步,尤其是涉及在同步事件中数据的维护。数据同步是一种功能,其中使至少两个数据集合彼此相似,以便该数据集合的数据单元在同步之后基本上彼此相一致。诸如便携式计算机、PDA设备(个人数字助手)、移动台或者寻呼机这样的便携式终端的数据能够与网络应用、桌上型电脑的应用或者与电信系统的其它数据库同步。尤其是,日历和电子邮件应用的数据通常被同步。EP1024441公开了一种同步数据库的方法。该方法包括当数据库已把记录发送到另一个数据库时(传送时间)、当数据库已从另一个数据库接收到记录时(接收时间)以及当已修改了数据库中的各个记录时(修改时间),对数据进行维护。仅在一个记录的修改时间迟于传送时间且该修改时间早于接收时间的条件下,才把该记录从第一数据库发送到第二数据库。同步是基于不兼容的、不同制造商特定的协议的使用。这限制了终端或者数据类型的使用,而且经常给用户造成麻烦。尤其是在移动通信中,能够检索和更新数据而不考虑所使用的终端和应用是很重要的。为了改善应用数据的同步,一种称为同步标记语言SyncML(Synchronized Markup Language SyncML)的语言已经被开发出来,该语言是基于XML(扩充标记语言(Extensible Markup Language))的。利用一种采用SyncML格式的消息的SyncML同步协议,任何应用的数据在任何类型的网络终端之间都能够被同步。该SyncML同步协议在无线和固定网络中工作,而且支持多种传输协议。

图1显示了同步的一个示例,其中移动台MS起SyncML客户机终端的作用,而网络服务器S起SyncML服务器的作用。SyncML同步服务包括在例如选择一个要被同步的数据库期间,首先初始化一个同步会话。SyncML客户机终端MS包括一个实施SyncML协议并发送SyncML消息(客户机修改)的同步客户机代理,其至少包括在该移动台MS中要被同步的、且自从上次同步之后已经改变的数据。SyncML服务器S包括一个同步服务器代理,其控制同步和一个同步块(同步引擎(SyncEngine))。该服务器通常等待一个来自SyncML客户机(MS)的用于同步的起始。服务器S同步数据,即分析数据库和客户机终端数据发生的变化,并使之一致(做必要的修改、替换和删除)。在这之后,SyncML服务器S将服务器修改发送回SyncML客户机(MS)。上述示例是简单的;然而它却说明了根据SyncML标准的设备的作用。SyncML客户机终端(MS)通常是移动台(MS)、PC(个人计算机)、膝上型电脑、或者PDA设备。SyncML服务器S通常是网络服务器或者PC。根据SyncML标准的系统采用与数据库相关的‘同步锚点(synchronization anchor)’。这些同步锚点是描述一个同步事件的例如在日期和时间方面的字符串。所使用的同步锚点被称为‘上一个’锚点和‘下一个’锚点,其中上一个锚点表示关于发送设备的数据库被同步的上一个事件,而下一个锚点表示关于发送设备的当前同步事件。在同步会话的初始化期间,这些设备彼此发送它们的锚点,以便在一个成功的同步会话之后能存储下一个锚点。在下一个同步期间,该设备能够将所存储的下一个锚点与接收到的上一个锚点相比较,以及如果它们匹配,则设备记录下自从上一次同步以来没有错误出现。如果该锚点不匹配,则必需执行慢同步,例如,其中数据库的所有数据单元必须做相互比较。实际上,在慢同步中,客户机终端将所有数据从要被同步的数据库发送到SyncML服务器,该服务器一个字段一个字段地分析已经接收的数据和要被同步的其它数据库的数据,或者选择性地用已经接收的数据来替换要被同步的其它数据库的所有数据。在定义了SyncML同步协议的标准SyncML同步协议(standard SyncML Sync Protocol)1.0版本中,2000年12月,规定了直到完成同步会话之后才必须更新同步锚点。图2示出了同步锚点的使用。在该示例中,SyncML客户机(MS)和SyncML服务器(S)同步两次(同步会话1和2)。涉及同一个数据库的前次同步会话(其在同步会话1之前)的锚点(9.9.2001,09:09:09AM(2001年9月9日上午09点09分09秒))被存储在同步服务器S中。该锚点是前次同步会话的下一个锚点的内容,同时作为第一次同步会话1的上一个锚点而被存储。客户机MS在2001年10月10日上午10点10分10秒启动同步会话1。这个时间将是同步会话1的下一个锚点。MS将存储在MS中的上一个锚点和该下一个锚点发送到服务器S。在同步会话1期间不必启动慢同步,因为上一个同步锚点匹配,即在S的存储器中的上一个锚点(9.9.2001,09:09:09AM)与接收到的上一个锚点相一致。在服务器S发送一个确认(OK)之后,数据可以被同步。该确认优选地是一个初始化消息,其同样包括该上一个和下一个锚点。在结束了同步会话1之后,S用其存储器中的下一个锚点(10.10.2001,10:10:10AM(2001年10月10日上午10点10分10秒))的内容来替换前述的上一个锚点(9.9.2001,09:09:09AM)。在该示例中出现了传送失败,即MS没有为其存储器更新上一个锚点。该传送失败可能是例如在传输连接中的一个错误。S也可能在其接收到一个同步消息之后立即断开该连接,但SyncML客户机仍然可能保持着等待来自服务器的一个确认。在那种情况下,从SyncML客户机的观点来看,断开连接就是一个传送失败。在第二次同步会话初始化期间,MS将一个未更新的上一个锚点(9.9.2001,09:09:09AM)和下一个锚点(11.11.2001,11:11:11AM(2001年11月11日上午11点11分11秒))传送到服务器S。S注意到上一个锚点不匹配,因而它请求刷新,典型的是慢同步。涉及SyncML标准的问题是没有精确地定义描述同步的更新标识符(在SyncML中的同步锚点,例如,时间戳)的更新时刻。某些设备一发送完同步消息就可以更新标识符,而另一些设备则在用于同步会话的连接断开之后才执行这个操作,这取决于制造商的应用。正如图2的示例中所描述的,在错误的情况下,某些设备不一定更新标识符,作为这种情况的结果,不需要执行慢同步。对于用户来说尤其不希望慢同步,因为它们占用了大量的时间而且通常带来额外的数据传输成本。用户也可能认为因为慢同步占用了如此多的时间才使同步失败。
发明简述本发明的目的是避免上面所述的问题,以及在参与同步的设备中提供尽可能一致的功能。本发明的目的用一种方法、一种同步系统、一种同步设备、一种电信设备和计算机程序来实现,它们的特征在于独立权利要求所公开的内容。本发明的优选实施方案在从属权利要求中公开。本发明是基于当同步已经被完成、而且为同步所建立的传送层连接已经基本上被正常地结束之后,在第一设备和第二设备中以第二更新标识符的内容来更新第一更新标识符的内容,其中该第一更新标识符的内容描述了前次同步并被存储在该设备中,该第二更新标识符的内容描述了当前同步。传送层一般是指向同步应用层提供可靠的逻辑数据传输连接的层(不一定是按照OSI模型的传送层协议,比如TCP)。
当根据传送层标准中定义的步骤已经完成了涉及结束连接的握手时,传送层的连接就被正常地结束,在这之后,设备不再等待任何来自对方的传送层消息。在下一个同步事件中使用更新标识符的已更新的内容。术语“数据库”将被广义地理解为是指能够通过一个或者多个应用来被更新的任何数据源或者数据存储的数据集合。更新标识符是与数据库的同步事件相关联的任何标识符,通常是一个序列号或者时间戳。第一更新标识符始终表示先于当前同步事件的同步事件。通过以一个新值来替换较早的值或者通过使用一个顺序解决方案(sequentialsolution),即通过将一个新值加到较早的值上,更新就能够被完成,在这之后,该最新值始终在逻辑上是下一个同步事件中的第一更新标识符。本发明的方案具有以下优点支持本发明的这些设备始终基本上同时地更新该更新标识符,这使得将不必要的慢同步减到最少以及避免与它们相关的缺点。使用根据本发明的定时,能够以可靠的方式确保那些参与同步的设备总是更新或者不更新该更新标识符。根据本发明的一个优选实施方案,同步是基于根据SyncML标准的同步协议,因此第一更新标识符是同步的上一个锚点,而第二更新标识符则是下一个锚点。
附图简述参考附图,借助于优选实施方案将更加详细的描述本发明,其中图1示出了根据SyncML同步协议的同步;图2示出了同步锚点的使用;图3示出了一个无线网和一个局域网;图4示出了根据本发明一个优选实施方案的一种方法;图5示出了根据本发明另一个优选实施方案的一种方法;以及图6是信令图,该信令图示出了根据本发明优选实施方案的信令事件。
发明详述下面,将在支持SyncML标准的系统中描述本发明的优选实施方案,而本发明并不局限于这些优选实施方案。图3示出了一个网络系统,其中数据库DB和终端TE的数据能被同步。就同步来说,终端TE起客户机设备的作用。图3显示了两个示例。在第一个示例中,有连接到局域网LAN的终端TE、数据库DB和同步服务器S。连接到网络LAN的终端TE包括用于与网络LAN的设备通信的功能性,例如网卡和控制数据传输的软件。局域网LAN可以是任何类型的局域网,而TE也可以经由因特网通常使用防火墙FW与服务器S通信。在第二个示例中,终端TE、同步服务器S和数据库DB被连接到移动网络MNW。连接到网络MNW的终端TE包括用于与网络MNW进行无线通信的移动台功能性。移动网络MNW可以是任何现有技术的无线网络,诸如支持GSM服务的网络、支持GPRS服务(通用分组无线业务)的网络、例如UMTS网络(通用移动电信系统)的第三代移动通信网络、无线局域网WLAN或者专用网。应当注意服务器S也能够起到数据库DB的作用,尽管为了简明起见在图3中分开显示服务器S和数据库DB。终端TE(在有线网络LAN和无线网络MNW中)和服务器包括存储器MEM、SMEM;用户接口UI、SUI;用于安排数据传输的I/O装置I/O、SI/O;以及包括一个或者多个处理器的中央处理单元CPU、SCPU。存储器MEM;SMEM包括用于存储控制应用程序的中央处理单元CPU;SCPU的一个非易失部分,和一个用于数据处理的随机存取存储器部分。TE的存储器MEM(它在该示例中是将被同步的数据库)和数据库DB的存储器存储将被同步的应用数据。根据本发明操作的客户机代理CA通过在CPU中运行存储在存储器MEM中的计算机程序代码来被优选地执行。同步服务器S也通过在SCPU中运行存储在存储器SMEM中的计算机程序代码来优选地提供根据本发明的同步代理SA和同步块SE。在中央处理单元CPU;SCPU中的可执行的计算机程序代码使终端TE和同步服务器S执行本发明的方法。图4和5中示出了这些方法的实施方案。该计算机程序可以经由网络和/或将其存储在存储装置中而被获得,存储装置是诸如软盘、CD ROM或者其它的外部存储装置,其中从该外部存储装置能够将计算机程序载入到存储器MEM,SMEM中。还可以使用集成电路。图4示出了根据本发明的一个实施方案的同步方法,其中终端TE启动与服务器S的同步。当在401需要同步数据库(例如,MEM,DB)的数据时,在402,在服务器S和TE之间建立一个传送层连接。在403,TE从其存储器MEM中检索在前次同步会话之后被更新的上一个锚点,同时在403定义下一个锚点,例如核对日期和时间。上一个和下一个锚点通常是序列号或者时间戳。这些锚点是与数据库相关的,即它们指明了什么时候更新过所涉及数据库的数据。TE还定义了用于同步的下一个锚点并且将它暂时存储在存储器MEM的随机存取存储器部分。在404,TE将一个客户机初始化消息发送到服务器S。该消息(用于将被同步的每个数据库)的警告元素(alert elements)包括上一个锚点和下一个锚点。该客户机初始化消息还通知这些数据库的同步服务器S该数据库的数据将被同步以及将使用哪种同步的类型。该客户机初始化消息通常还包括鉴权信息以及关于该终端TE所支持的服务和设备特性的信息。在405,服务器S接收该客户机初始化消息,在存储器SMEM的随机存取存储器部分暂时存储该下一个锚点,并且从其存储器SMEM中检索已存储的上一个锚点(它是优选地存储在标有上一个锚点的字段中的上一次/先前同步会话的下一个锚点的内容)。在406,S检查所接收的上一个锚点和从其存储器中检索到的上一个锚点。在406中的检查之后即407,服务器S将包含下一个锚点(从TE接收到的)和上一个锚点(来自于服务器S的存储器SMEM)的服务器初始化消息也发送到终端TE。该服务器初始化消息包括有关时间戳是否彼此相一致的信息。在408,TE通过比较所接收的上一个锚点和在存储器MEM中存储的上一个锚点来检查上一个锚点的一致性。如果TE执行的408中的检查和S执行的406中的检查都表明上一个锚点彼此相一致,则能够以所请求的方式在410启动同步,在这种情况下,仅需要同步在上一个锚点之后被修改的数据单元。在初始化完毕之后,至少一个在同步的初始化中被定义的数据库DB的数据和终端TE的数据能够被同步。利用图1中示出的SyncML消息能够执行(在双向同步的情况下)必要的鉴权(客户机修改,服务器修改)。
同步的类型可以是例如双向同步仅来自于客户机的单向同步仅来自于客户机的刷新同步仅来自于服务器的单向同步仅来自于服务器的刷新同步服务器警告同步关于407中同步会话的初始化和数据同步的更详细的描述,参考标准SyncML同步协议(standard SyncML Sync Protocol),1.0版本,2000年12月,其定义了SyncML同步协议。如果根据406和/或408的比较,上一个锚点不匹配,则出现了一个错误而且未同步的数据库的所有数据都需要同步。在406的比较之后,S可以给出关于未成功同步的信息或者更优选地发送一个初始化消息,在409中根据该初始化消息来开始慢同步。如果根据408中的比较,上一个锚点彼此不一致,则TE也可以请求慢同步。接下来,在411中,检查是否已经完成了同步,以及传送层连接是否正常地结束。当在TE和S之间已经传送了根据同步类型所需的所有数据(两者都已经没有任何东西要发送)、且双方设备都不等待来自对方的确认之后,同步已经被完成。在双向同步的情况下,例如,当服务器S向终端TE确认(来自服务器的映射确认)已经接收到TE所做的修改(用于服务器的数据更新状态包)、且TE接收到其一直等待的这个确认时,则同步已经被完成。当例如TE或者S接收一个错误消息、一个错误的传送层消息、或者没有接收到其正在等待的消息(在这种情况下TE/S可以发送一个错误消息),则该连接尚未被正常地结束。可以在HTTP协议(超文本传送协议)、WAP标准(无线应用协议)的WSP协议(无线会话协议)、用于诸如USB(通用串行总线)或者RS-232这样的电缆连接、用于近程射频连接(蓝牙)或者用于红外连接(IrDA)的OBEX协议、TCP/IP堆栈(传输控制协议/网际协议)之上,以及在由电子邮件协议(SMTP,简单邮件传输协议)提供的传送层业务之上,在TE和S之间实现SyncML同步协议。可以根据基础网络、使用例如短消息SMS或者其它信令类型的传输方法(例如,USSD;非结构化补充业务数据)、电路交换数据呼叫或者分组交换数据传输业务来执行较低层的传送。根据一个实施方案,HTTP协议被用于提供一个传送层连接。如果是那样的话,该连接就在HTTP协议的一个‘HTTP请求’消息已经在设备之间被传送之后正常地结束,其中该‘HTTP请求’消息包括不要求被响应的SyncML会话的最后的确认,且响应于该消息已经发送了一个在发送过该完毕消息的设备中被接收的确认消息‘HTTP状态响应’。例如,TE可以发送一个包括不要求确认的最后消息(用于服务器的数据更新状态包)的‘HTTP请求’消息(即同步已经被完成)。服务器S通过发送一个‘HTTP状态响应’消息予以响应,此后在412中服务器S可以更新上一个锚点的内容。如果TE从服务器S接收到该最后的正确的‘HTTP状态响应’消息(在HTTP头标200中的ok),则在412中TE可以更新上一个锚点的内容。根据一个实施方案,OBEX协议被使用来提供传送层连接。那么,当遵照OBEX协议在设备之间已经传送了一个‘断开连接’命令、且涉及该‘断开连接’命令的一个‘响应’命令已经被发送并被接收时,则该连接被正常地结束。根据另一个实施方案,WSP协议被使用来提供传送层连接。那么,如果在设备之间已经传送了一个‘断开连接请求’消息、且涉及该‘断开连接请求’消息的一个‘断开连接指示’消息已经被发送并被接收时,则该连接被正常地结束。如果同步已经被完成且传送层连接已经被正常地结束,则在412中以当前同步会话的下一个锚点的内容来更新服务器S和终端TE中的先前的上一个锚点的内容(如果较早前没有存储上一个锚点,则这些内容也可能是零或者空)。存储器MEM,SMEM优选地包括一个记录,其中为下一次同步保持该上一个锚点。不删除先前的上一个锚点的值,而是在412中通过将一个具有新值的记录加到存储器中以及通过在下一次同步中使用该记录来完成更新也是可能的。因此,在414中,可以在下一次同步期间使用在步骤412中存储的值,也就是说,启动方能够发送该作为上一个锚点在存储器中存储的值,而接收方能够从其存储器中检索用于比较的该已存储的值。如果同步还未完毕和/或传送层连接没有被正常地结束,则在413中,在存储器中存储的上一个锚点的值不被改变,并拒绝暂时存储的下一个锚点。图5示出了根据本发明的另一个实施方案的同步。当在501中需要同步数据时,则在502中,在服务器S和TE之间建立一个传送层连接。在503中,TE从其存储器MEM中检索在前一次同步会话之后更新的上一个锚点,同时在503中确定下一个锚点。在504中,TE将同步会话的一个初始化消息发送到服务器S,该初始化消息包括被定义的上一个和下一个锚点。在505中,S接收该初始化消息,暂时存储该下一个锚点并且从其存储器SMEM中检索已存储的上一个锚点(其是前一次同步的下一个锚点的内容)。在506中,S将所接收到的上一个锚点与从其存储器中检索到的上一个锚点做比较。如果它们彼此相一致,则在507中能够以TE所请求的方式来实现同步,而且只有那些在上一个锚点之后被修改的数据单元需要被同步。在那种情况下,则S可以将一个初始化消息发送到TE,其表明能够以所请求的方式来实行同步。在这个实施方案中,尽管S通常总是将上一个和下一个锚点发送到TE,但TE不把这些锚点与它自己的锚点进行比较。在初始化已经完毕之后,至少一个在同步初始化中定义的数据库DB和终端TE的数据能够被同步。根据506中的比较,如果上一个锚点彼此不一致,则出现一个错误而且所有未被同步的数据库的数据都需要在508中被同步。如果S和TE的这些数据库的数据较早前未被同步或者如果存储器MEM,SMEM已经被清空(在这种情况下上一个锚点表明该值‘空’),则也执行步骤508。在那种情况下,则S能够给出一个有关未成功同步的信息或者优选地发送一个根据其来开始慢同步的初始化消息。在已经执行同步(507或者508)之后,在509中结束同步会话和传送层连接。此后,如果同步已经被完成并且传送层连接已经被正常地结束,则服务器S在511中、以及终端TE在510中用当前同步会话的下一个锚点的内容来更新已存储的上一个锚点的内容(参看步骤411,412)。应当注意图4和5中示出的功能能够被用在两个以上的设备之间的同步中,在这种情况下,可以在所有的设备之间传送上一个和下一个锚点。如果已经在所有的设备之间完成了同步而且已经正常地结束传送层连接,则以一个新值来更新上一个锚点。与图4和5中不同的是,不用单独的初始化消息也能开始同步。在那种情况下,则初始化与同步同时被执行。在同步会话和传送层连接已经结束之后,如上所述,同步会话的下一个锚点可以被更新作为在存储器MEM、SMEM中的上一个锚点的值。在那种情况下,能够减少在同步期间要被发送的消息的数量。图6示出了根据本发明实施方案的一个信令图,其类似于图2中示出的同步。在同步会话1中不需要慢同步,因为上一个同步锚点匹配,即在S的存储器中的上一个锚点(9.9.2001,09:09:09AM)与所接收到的上一个锚点一致。在服务器S发送一个确认(OK)之后,数据能够被同步。该确认优选地是一个也包括上一个锚点和下一个锚点的初始化消息。在同步会话1完毕之后,因为一个在数据传输中的错误或者因为设备功能的不一致,在该示例中出现了传送失败(TE等待一个来自服务器S的确认)。根据本发明,终端TE和服务器S都没有为在其存储器中的上一个锚点更新新值。在同步会话2中,TE发送9.10.2001,09:09:09AM作为上一个锚点的值。存储在服务器S的存储器中的上一个锚点和从终端TE接收到的上一个锚点彼此相一致,从而能够无需慢同步而完成同步会话2。这使得避免了由根据图2所示的现有技术的传送失败所引起的慢同步。随着技术的进步,能够以多种方式来实现本发明的原理,这对本领域的普通技术人员来说是显而易见的。因此,本发明及其实施方案不局限于上面所述的示例,而是可以在权利要求的范围内变化。
权利要求
1.一种安排数据库同步的方法,该方法包括以下步骤在对数据库进行同步的第一和第二设备之间建立一个用于同步的传送层连接,在同步的初始化期间,把至少被存储在第一设备中并且描述该第一和第二设备在该数据库中执行的最后的同步事件的第一更新标识符、以及由该第一设备定义且描述当前同步的第二更新标识符从该第一设备发送到第二设备,在该第一设备和第二设备中存储所述第二更新标识符,以及当同步已经被完成且这个所述的传送层连接已经基本上被正常地结束之后,在该第一设备和第二设备中用所述第二更新标识符的内容来更新存储在该设备中的第一更新标识符的内容。
2.根据权利要求1的方法,其进一步包括以下步骤比较在第二设备中接收到的第一更新标识符和已存储在该第二设备中的第一更新标识符,如果第一接收的更新标识符与第一存储的更新标识符相一致,则以所请求的方式执行同步,如果该第一接收的更新标识符与第一存储的更新标识符不一致,则同步数据库的所有数据单元。
3.根据权利要求2的方法,其进一步包括以下步骤把第一存储的更新标识符从该第二设备发送到第一设备,在第一设备中同样比较第一接收的更新标识符和第一存储的更新标识符。
4.根据权利要求1的方法,其中更新标识符指示日期和时间。
5.根据权利要求1的方法,其中同步是基于根据SyncML标准的同步协议,该第一更新标识符是同步的上一个锚点,而第二更新标识符是下一个锚点。
6.根据权利要求1的方法,其中所述的传送层连接是根据HTTP协议的一个逻辑连接,以及如果同步之后在第一设备和第二设备之间已经传送一个‘HTTP请求’消息,且与该‘HTTP请求’消息相关的一个‘HTTP状态响应’消息也已经被发送并被接收,则所述的传送层连接被正常地结束。
7.一种用于同步数据库的同步系统,该系统包括执行同步的第一设备和第二设备,其被安排为在第一设备和第二设备之间建立一个用于执行同步的传送层连接,在同步的初始化期间,把至少被存储在第一设备中并且描述该第一和第二设备在该数据库中已经执行的最后的同步事件的第一更新标识符、以及由第一设备定义并且描述当前同步的第二更新标识符从该第一设备发送到第二设备,存储所述第二更新标识符,以及当同步已经被执行且所述的传送层连接已经基本上被正常地结束之后,用所述第二更新标识符的内容来更新存储在该设备中的第一更新标识符的内容。
8.根据权利要求7的同步系统,其中第二设备被安排为比较所接收的第一更新标识符和已存储在第二设备中的第一更新标识符,该第一和第二设备被安排为如果第一接收的更新标识符和第一存储的更新标识符相一致,则以所请求的方式执行同步,或者该第一和第二设备被安排为如果第一接收的更新标识符和第一存储的更新标识符不一致,则同步该数据库的所有数据单元。
9.一种电信设备,包括用于建立到至少一个其它设备的传送层连接用于同步数据库的装置,用于在同步的初始化期间将由所述电信设备定义的第一更新标识符和第二更新标识符发送到该其它设备的装置,该第一更新标识符至少被存储在所述电信设备中且描述所述电信设备和该其它设备在该数据库中已经执行的最后的同步事件,而所述第二更新标识符描述当前同步,用于存储所述第二更新标识符的装置,以及用于当同步已经被执行且这个所述的传送层连接已经基本上被正常地结束之后,以所述第二更新标识符的内容来更新存储在所述电信设备中的第一更新标识符的内容的装置。
10.一种同步设备,包括用于建立到至少一个其它设备的传送层连接用于同步数据库的装置,用于在同步的初始化期间从该其它设备接收第一更新标识符和第二更新标识符的装置,该第一更新标识符描述所述同步设备和该其它设备在该数据库中已经执行的最后的同步事件,而该第二更新标识符描述当前同步,用于存储所述第二更新标识符的装置,以及用于当同步已经被执行且所述的传送层连接已经基本上被正常地结束之后,以所述第二更新标识符的内容来更新第一更新标识符的装置。
11.根据权利要求10的同步设备,其还包括用于比较所接收的第一更新标识符和存储在所述同步设备中的第一更新标识符的装置,用于当第一接收的更新标识符和第一存储的更新标识符相一致时,以该其它设备所请求的方式来执行同步的装置,以及用于当该第一接收的更新标识符和第一存储的更新标识符不一致时,同步所有数据库的数据单元的装置。
12.一种可载入到电信设备的存储器中并且包含在该电信设备中可执行的代码的计算机程序产品,其使该电信设备建立到至少一个其它设备的传送层连接用于同步数据库,在同步的初始化期间将由所述电信设备定义的第一更新标识符和第二更新标识符发送到该其它设备,该第一更新标识符至少被存储在所述电信设备中并且描述所述电信设备和该其它设备在该数据库中已经执行的最后的同步事件,而该第二更新标识符描述当前同步,存储所述第二更新标识符,以及当同步已经被执行且所述的传送层连接已经基本上被正常地结束之后,以所述第二更新标识符的内容来更新存储在所述电信设备中的第一更新标识符的内容。
13.一种可载入到起同步设备作用的计算机的存储器中且包含在该同步设备中可执行的代码的计算机程序产品,其使该同步设备建立到至少一个其它设备的传送层连接用于同步数据库,在同步的初始化期间从该其它设备接收第一更新标识符和第二更新标识符,该第一更新标识符描述所述同步设备和该其它设备在该数据库中已经执行的最后的同步事件,而该第二更新标识符描述当前同步,存储该第二更新标识符,以及当同步已经被执行且所述的传送层连接已经基本上被正常地结束之后,以所述第二更新标识符的内容来更新存储在所述同步设备中的第一更新标识符的内容。
全文摘要
一种安排数据库同步的方法,该方法包括在同步数据库的第一和第二设备之间建立用于同步的传送层连接的步骤。在同步的初始化期间,至少被存储在第一设备中并且描述了该设备在该数据库中执行的最后的同步事件的第一更新标识符,以及由第一设备定义并且描述了当前同步的第二更新标识符,被从第一设备传送到第二设备。第二更新标识符被存储在第一和第二设备中。如果已经执行同步而且此传送层连接已经基本上被正常地结束之后,在第一和第二设备中对存储在该设备中的第一更新标识符的内容进行更新。
文档编号G06F12/00GK1564990SQ02812777
公开日2005年1月12日 申请日期2002年4月24日 优先权日2001年4月25日
发明者A·苏蒂宁, R·梅泰莱, J·皮斯帕宁, M·萨希诺亚 申请人:诺基亚有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1