CN1564990A - 数据库数据的同步 - Google Patents
数据库数据的同步 Download PDFInfo
- Publication number
- CN1564990A CN1564990A CNA028127773A CN02812777A CN1564990A CN 1564990 A CN1564990 A CN 1564990A CN A028127773 A CNA028127773 A CN A028127773A CN 02812777 A CN02812777 A CN 02812777A CN 1564990 A CN1564990 A CN 1564990A
- Authority
- CN
- China
- Prior art keywords
- update identifier
- equipment
- update
- synchronous
- database
- 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 claims abstract description 18
- 230000001360 synchronised effect Effects 0.000 claims description 77
- 238000004590 computer program Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000011664 signaling Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- RQNWIZPPADIBDY-UHFFFAOYSA-N arsenic atom Chemical compound [As] RQNWIZPPADIBDY-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000007781 signaling event Effects 0.000 description 1
Images
Classifications
-
- 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
- G06F16/275—Synchronous replication
-
- 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/99938—Concurrency, e.g. lock management in shared database
-
- 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/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
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)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种安排数据库同步的方法,该方法包括在同步数据库的第一和第二设备之间建立用于同步的传送层连接的步骤。在同步的初始化期间,至少被存储在第一设备中并且描述了该设备在该数据库中执行的最后的同步事件的第一更新标识符,以及由第一设备定义并且描述了当前同步的第二更新标识符,被从第一设备传送到第二设备。第二更新标识符被存储在第一和第二设备中。如果已经执行同步而且此传送层连接已经基本上被正常地结束之后,在第一和第二设备中对存储在该设备中的第一更新标识符的内容进行更新。
Description
发明背景
[0001]本发明涉及在电信***中数据库数据的同步,尤其是涉及在同步事件中数据的维护。数据同步是一种功能,其中使至少两个数据集合彼此相似,以便该数据集合的数据单元在同步之后基本上彼此相一致。
[0002]诸如便携式计算机、PDA设备(个人数字助手)、移动台或者寻呼机这样的便携式终端的数据能够与网络应用、桌上型电脑的应用或者与电信***的其它数据库同步。尤其是,日历和电子邮件应用的数据通常被同步。EP1024441公开了一种同步数据库的方法。该方法包括当数据库已把记录发送到另一个数据库时(传送时间)、当数据库已从另一个数据库接收到记录时(接收时间)以及当已修改了数据库中的各个记录时(修改时间),对数据进行维护。仅在一个记录的修改时间迟于传送时间且该修改时间早于接收时间的条件下,才把该记录从第一数据库发送到第二数据库。
[0003]同步是基于不兼容的、不同制造商特定的协议的使用。这限制了终端或者数据类型的使用,而且经常给用户造成麻烦。尤其是在移动通信中,能够检索和更新数据而不考虑所使用的终端和应用是很重要的。
[0004]为了改善应用数据的同步,一种称为同步标记语言SyncML(Synchronized Markup Language SyncML)的语言已经被开发出来,该语言是基于XML(扩充标记语言(Extensible Markup Language))的。利用一种采用SyncML格式的消息的SyncML同步协议,任何应用的数据在任何类型的网络终端之间都能够被同步。该SyncML同步协议在无线和固定网络中工作,而且支持多种传输协议。
[0005]图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。
[0006]根据SyncML标准的***采用与数据库相关的‘同步锚点(synchronization anchor)’。这些同步锚点是描述一个同步事件的例如在日期和时间方面的字符串。所使用的同步锚点被称为‘上一个’锚点和‘下一个’锚点,其中上一个锚点表示关于发送设备的数据库被同步的上一个事件,而下一个锚点表示关于发送设备的当前同步事件。在同步会话的初始化期间,这些设备彼此发送它们的锚点,以便在一个成功的同步会话之后能存储下一个锚点。在下一个同步期间,该设备能够将所存储的下一个锚点与接收到的上一个锚点相比较,以及如果它们匹配,则设备记录下自从上一次同步以来没有错误出现。如果该锚点不匹配,则必需执行慢同步,例如,其中数据库的所有数据单元必须做相互比较。实际上,在慢同步中,客户机终端将所有数据从要被同步的数据库发送到SyncML服务器,该服务器一个字段一个字段地分析已经接收的数据和要被同步的其它数据库的数据,或者选择性地用已经接收的数据来替换要被同步的其它数据库的所有数据。在定义了SyncML同步协议的标准SyncML同步协议(standard SyncML Sync Protocol)1.0版本中,2000年12月,规定了直到完成同步会话之后才必须更新同步锚点。
[0007]图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注意到上一个锚点不匹配,因而它请求刷新,典型的是慢同步。
[0008]涉及SyncML标准的问题是:没有精确地定义描述同步的更新标识符(在SyncML中的同步锚点,例如,时间戳)的更新时刻。某些设备一发送完同步消息就可以更新标识符,而另一些设备则在用于同步会话的连接断开之后才执行这个操作,这取决于制造商的应用。正如图2的示例中所描述的,在错误的情况下,某些设备不一定更新标识符,作为这种情况的结果,不需要执行慢同步。对于用户来说尤其不希望慢同步,因为它们占用了大量的时间而且通常带来额外的数据传输成本。用户也可能认为:因为慢同步占用了如此多的时间才使同步失败。
发明简述
[0009]本发明的目的是避免上面所述的问题,以及在参与同步的设备中提供尽可能一致的功能。本发明的目的用一种方法、一种同步***、一种同步设备、一种电信设备和计算机程序来实现,它们的特征在于独立权利要求所公开的内容。本发明的优选实施方案在从属权利要求中公开。
[0010]本发明是基于:当同步已经被完成、而且为同步所建立的传送层连接已经基本上被正常地结束之后,在第一设备和第二设备中以第二更新标识符的内容来更新第一更新标识符的内容,其中该第一更新标识符的内容描述了前次同步并被存储在该设备中,该第二更新标识符的内容描述了当前同步。传送层一般是指向同步应用层提供可靠的逻辑数据传输连接的层(不一定是按照OSI模型的传送层协议,比如TCP)。
当根据传送层标准中定义的步骤已经完成了涉及结束连接的握手时,传送层的连接就被正常地结束,在这之后,设备不再等待任何来自对方的传送层消息。在下一个同步事件中使用更新标识符的已更新的内容。
[0011]术语“数据库”将被广义地理解为是指能够通过一个或者多个应用来被更新的任何数据源或者数据存储的数据集合。更新标识符是与数据库的同步事件相关联的任何标识符,通常是一个序列号或者时间戳。第一更新标识符始终表示先于当前同步事件的同步事件。通过以一个新值来替换较早的值或者通过使用一个顺序解决方案(sequentialsolution),即通过将一个新值加到较早的值上,更新就能够被完成,在这之后,该最新值始终在逻辑上是下一个同步事件中的第一更新标识符。
[0012]本发明的方案具有以下优点:支持本发明的这些设备始终基本上同时地更新该更新标识符,这使得将不必要的慢同步减到最少以及避免与它们相关的缺点。使用根据本发明的定时,能够以可靠的方式确保:那些参与同步的设备总是更新或者不更新该更新标识符。
[0013]根据本发明的一个优选实施方案,同步是基于根据SyncML标准的同步协议,因此第一更新标识符是同步的上一个锚点,而第二更新标识符则是下一个锚点。
附图简述
[0014]参考附图,借助于优选实施方案将更加详细的描述本发明,其中:
图1示出了根据SyncML同步协议的同步;
图2示出了同步锚点的使用;
图3示出了一个无线网和一个局域网;
图4示出了根据本发明一个优选实施方案的一种方法;
图5示出了根据本发明另一个优选实施方案的一种方法;以及
图6是信令图,该信令图示出了根据本发明优选实施方案的信令事件。
发明详述
[0015]下面,将在支持SyncML标准的***中描述本发明的优选实施方案,而本发明并不局限于这些优选实施方案。
[0016]图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。
[0017]终端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中。还可以使用集成电路。
[0018]图4示出了根据本发明的一个实施方案的同步方法,其中终端TE启动与服务器S的同步。当在401需要同步数据库(例如,MEM,DB)的数据时,在402,在服务器S和TE之间建立一个传送层连接。在403,TE从其存储器MEM中检索在前次同步会话之后被更新的上一个锚点,同时在403定义下一个锚点,例如核对日期和时间。上一个和下一个锚点通常是序列号或者时间戳。这些锚点是与数据库相关的,即:它们指明了什么时候更新过所涉及数据库的数据。TE还定义了用于同步的下一个锚点并且将它暂时存储在存储器MEM的随机存取存储器部分。在404,TE将一个客户机初始化消息发送到服务器S。该消息(用于将被同步的每个数据库)的警告元素(alert elements)包括上一个锚点和下一个锚点。该客户机初始化消息还通知这些数据库的同步服务器S:该数据库的数据将被同步以及将使用哪种同步的类型。该客户机初始化消息通常还包括鉴权信息以及关于该终端TE所支持的服务和设备特性的信息。
[0019]在405,服务器S接收该客户机初始化消息,在存储器SMEM的随机存取存储器部分暂时存储该下一个锚点,并且从其存储器SMEM中检索已存储的上一个锚点(它是优选地存储在标有上一个锚点的字段中的上一次/先前同步会话的下一个锚点的内容)。在406,S检查所接收的上一个锚点和从其存储器中检索到的上一个锚点。在406中的检查之后即407,服务器S将包含下一个锚点(从TE接收到的)和上一个锚点(来自于服务器S的存储器SMEM)的服务器初始化消息也发送到终端TE。该服务器初始化消息包括有关时间戳是否彼此相一致的信息。在408,TE通过比较所接收的上一个锚点和在存储器MEM中存储的上一个锚点来检查上一个锚点的一致性。
[0020]如果TE执行的408中的检查和S执行的406中的检查都表明上一个锚点彼此相一致,则能够以所请求的方式在410启动同步,在这种情况下,仅需要同步在上一个锚点之后被修改的数据单元。在初始化完毕之后,至少一个在同步的初始化中被定义的数据库DB的数据和终端TE的数据能够被同步。利用图1中示出的SyncML消息能够执行(在双向同步的情况下)必要的鉴权(客户机修改,服务器修改)。
同步的类型可以是例如:
双向同步
仅来自于客户机的单向同步
仅来自于客户机的刷新同步
仅来自于服务器的单向同步
仅来自于服务器的刷新同步
服务器警告同步
[0021]关于407中同步会话的初始化和数据同步的更详细的描述,参考标准SyncML同步协议(standard SyncML Sync Protocol),1.0版本,2000年12月,其定义了SyncML同步协议。
[0022]如果根据406和/或408的比较,上一个锚点不匹配,则出现了一个错误而且未同步的数据库的所有数据都需要同步。在406的比较之后,S可以给出关于未成功同步的信息或者更优选地发送一个初始化消息,在409中根据该初始化消息来开始慢同步。如果根据408中的比较,上一个锚点彼此不一致,则TE也可以请求慢同步。
[0023]接下来,在411中,检查是否已经完成了同步,以及传送层连接是否正常地结束。当在TE和S之间已经传送了根据同步类型所需的所有数据(两者都已经没有任何东西要发送)、且双方设备都不等待来自对方的确认之后,同步已经被完成。在双向同步的情况下,例如,当服务器S向终端TE确认(来自服务器的映射确认)已经接收到TE所做的修改(用于服务器的数据更新状态包)、且TE接收到其一直等待的这个确认时,则同步已经被完成。当例如TE或者S接收一个错误消息、一个错误的传送层消息、或者没有接收到其正在等待的消息(在这种情况下TE/S可以发送一个错误消息),则该连接尚未被正常地结束。
[0024]可以在HTTP协议(超文本传送协议)、WAP标准(无线应用协议)的WSP协议(无线会话协议)、用于诸如USB(通用串行总线)或者RS-232这样的电缆连接、用于近程射频连接(蓝牙)或者用于红外连接(IrDA)的OBEX协议、TCP/IP堆栈(传输控制协议/网际协议)之上,以及在由电子邮件协议(SMTP,简单邮件传输协议)提供的传送层业务之上,在TE和S之间实现SyncML同步协议。可以根据基础网络、使用例如短消息SMS或者其它信令类型的传输方法(例如,USSD;非结构化补充业务数据)、电路交换数据呼叫或者分组交换数据传输业务来执行较低层的传送。
[0025]根据一个实施方案,HTTP协议被用于提供一个传送层连接。如果是那样的话,该连接就在HTTP协议的一个‘HTTP请求’消息已经在设备之间被传送之后正常地结束,其中该‘HTTP请求’消息包括不要求被响应的SyncML会话的最后的确认,且响应于该消息已经发送了一个在发送过该完毕消息的设备中被接收的确认消息‘HTTP状态响应’。例如,TE可以发送一个包括不要求确认的最后消息(用于服务器的数据更新状态包)的‘HTTP请求’消息(即同步已经被完成)。服务器S通过发送一个‘HTTP状态响应’消息予以响应,此后在412中服务器S可以更新上一个锚点的内容。如果TE从服务器S接收到该最后的正确的‘HTTP状态响应’消息(在HTTP头标200中的ok),则在412中TE可以更新上一个锚点的内容。
[0026]根据一个实施方案,OBEX协议被使用来提供传送层连接。那么,当遵照OBEX协议在设备之间已经传送了一个‘断开连接’命令、且涉及该‘断开连接’命令的一个‘响应’命令已经被发送并被接收时,则该连接被正常地结束。
[0027]根据另一个实施方案,WSP协议被使用来提供传送层连接。那么,如果在设备之间已经传送了一个‘断开连接请求’消息、且涉及该‘断开连接请求’消息的一个‘断开连接指示’消息已经被发送并被接收时,则该连接被正常地结束。
[0028]如果同步已经被完成且传送层连接已经被正常地结束,则在412中以当前同步会话的下一个锚点的内容来更新服务器S和终端TE中的先前的上一个锚点的内容(如果较早前没有存储上一个锚点,则这些内容也可能是零或者空)。存储器MEM,SMEM优选地包括一个记录,其中为下一次同步保持该上一个锚点。不删除先前的上一个锚点的值,而是在412中通过将一个具有新值的记录加到存储器中以及通过在下一次同步中使用该记录来完成更新也是可能的。因此,在414中,可以在下一次同步期间使用在步骤412中存储的值,也就是说,启动方能够发送该作为上一个锚点在存储器中存储的值,而接收方能够从其存储器中检索用于比较的该已存储的值。
[0029]如果同步还未完毕和/或传送层连接没有被正常地结束,则在413中,在存储器中存储的上一个锚点的值不被改变,并拒绝暂时存储的下一个锚点。
[0030]图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的数据能够被同步。
[0031]根据506中的比较,如果上一个锚点彼此不一致,则出现一个错误而且所有未被同步的数据库的数据都需要在508中被同步。如果S和TE的这些数据库的数据较早前未被同步或者如果存储器MEM,SMEM已经被清空(在这种情况下上一个锚点表明该值‘空’),则也执行步骤508。在那种情况下,则S能够给出一个有关未成功同步的信息或者优选地发送一个根据其来开始慢同步的初始化消息。
[0032]在已经执行同步(507或者508)之后,在509中结束同步会话和传送层连接。此后,如果同步已经被完成并且传送层连接已经被正常地结束,则服务器S在511中、以及终端TE在510中用当前同步会话的下一个锚点的内容来更新已存储的上一个锚点的内容(参看步骤411,412)。
[0033]应当注意图4和5中示出的功能能够被用在两个以上的设备之间的同步中,在这种情况下,可以在所有的设备之间传送上一个和下一个锚点。如果已经在所有的设备之间完成了同步而且已经正常地结束传送层连接,则以一个新值来更新上一个锚点。
[0034]与图4和5中不同的是,不用单独的初始化消息也能开始同步。在那种情况下,则初始化与同步同时被执行。在同步会话和传送层连接已经结束之后,如上所述,同步会话的下一个锚点可以被更新作为在存储器MEM、SMEM中的上一个锚点的值。在那种情况下,能够减少在同步期间要被发送的消息的数量。
[0035]图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所示的现有技术的传送失败所引起的慢同步。
[0036]随着技术的进步,能够以多种方式来实现本发明的原理,这对本领域的普通技术人员来说是显而易见的。因此,本发明及其实施方案不局限于上面所述的示例,而是可以在权利要求的范围内变化。
Claims (13)
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.一种可载入到起同步设备作用的计算机的存储器中且包含在该同步设备中可执行的代码的计算机程序产品,其使该同步设备:
建立到至少一个其它设备的传送层连接用于同步数据库,
在同步的初始化期间从该其它设备接收第一更新标识符和第二更新标识符,该第一更新标识符描述所述同步设备和该其它设备在该数据库中已经执行的最后的同步事件,而该第二更新标识符描述当前同步,
存储该第二更新标识符,以及
当同步已经被执行且所述的传送层连接已经基本上被正常地结束之后,以所述第二更新标识符的内容来更新存储在所述同步设备中的第一更新标识符的内容。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/842,568 | 2001-04-25 | ||
US09/842,568 US6839564B2 (en) | 2001-04-25 | 2001-04-25 | Synchronization of database data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1564990A true CN1564990A (zh) | 2005-01-12 |
CN100371929C CN100371929C (zh) | 2008-02-27 |
Family
ID=25287663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB028127773A Expired - Lifetime CN100371929C (zh) | 2001-04-25 | 2002-04-24 | 数据库数据的同步 |
Country Status (10)
Country | Link |
---|---|
US (2) | US6839564B2 (zh) |
EP (1) | EP1390874B1 (zh) |
JP (2) | JP2004534994A (zh) |
KR (1) | KR100937163B1 (zh) |
CN (1) | CN100371929C (zh) |
BR (1) | BRPI0209171B1 (zh) |
CA (1) | CA2447821C (zh) |
EE (1) | EE200300518A (zh) |
WO (1) | WO2002086758A1 (zh) |
ZA (1) | ZA200308298B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100489787C (zh) * | 2007-07-10 | 2009-05-20 | 北京大学 | 一种虚拟机的外存在线迁移方法 |
CN101303660B (zh) * | 2007-03-15 | 2010-09-08 | 株式会社东芝 | 将数据从配置源设备配置到配置目标设备的*** |
CN102054035A (zh) * | 2010-12-29 | 2011-05-11 | 北京播思软件技术有限公司 | 一种基于数据范围的数据库数据同步方法 |
CN101639950B (zh) * | 2008-07-29 | 2011-07-13 | 中兴通讯股份有限公司 | 一种车道收费***中的数据同步方法及装置 |
CN101374144B (zh) * | 2007-08-21 | 2012-04-25 | 华为技术有限公司 | 控制会话的数据同步的方法、装置和*** |
CN101268439B (zh) * | 2005-08-19 | 2012-04-25 | 微软公司 | 数据库片段克隆和管理 |
Families Citing this family (147)
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 |
US20020184234A1 (en) * | 2001-06-01 | 2002-12-05 | Lundberg Steven W. | Internet-based patent and trademark applicaton management system |
US20040132428A1 (en) * | 2001-04-19 | 2004-07-08 | Michael Mulligan | Method and system for privacy preferences management using a synchronisation protocol |
US20030028577A1 (en) * | 2001-04-30 | 2003-02-06 | Chia-Chu Dorland | HTTP distributed XML-based automated event polling for network and E-service management |
US7653631B1 (en) * | 2001-05-10 | 2010-01-26 | Foundationip, Llc | Method for synchronizing information in multiple case management systems |
US7320011B2 (en) | 2001-06-15 | 2008-01-15 | Nokia Corporation | Selecting data for synchronization and for software configuration |
FI114417B (fi) | 2001-06-15 | 2004-10-15 | Nokia Corp | Datan valitseminen synkronointia varten |
US20040093342A1 (en) * | 2001-06-27 | 2004-05-13 | Ronald Arbo | Universal data mapping system |
US8107937B2 (en) * | 2001-07-31 | 2012-01-31 | Nokia Corporation | System and method for automatic provisioning detection and notification |
US7149813B2 (en) * | 2001-08-14 | 2006-12-12 | Microsoft Corporation | Method and system for synchronizing mobile devices |
US20030045311A1 (en) * | 2001-08-30 | 2003-03-06 | Tapani Larikka | Message transfer from a source device via a mobile terminal device to a third device and data synchronization between terminal devices |
US7203505B1 (en) * | 2001-08-30 | 2007-04-10 | Nokia Corporation | Message transfer from a source device via a mobile terminal device to a third device |
FR2829330B1 (fr) * | 2001-08-31 | 2003-11-28 | Canon Kk | Procede de demande de reception du resultat d'execution d'une fonction a distance a une date predeterminee |
US7570668B2 (en) * | 2001-10-03 | 2009-08-04 | Nokia Corporation | Data synchronization |
KR100421624B1 (ko) * | 2001-11-02 | 2004-03-11 | (주) 한정문 | 플랫폼 독립적인 소프트웨어 자동 검색/배포/설치 장치 및그 방법 |
US20030093435A1 (en) * | 2001-11-05 | 2003-05-15 | Bandekar Vijay R. | Method and system for application level data object synchronization between two or more processes |
US20030087089A1 (en) * | 2001-11-08 | 2003-05-08 | Rodriguez Peter A. | Roll of adhesive labels for cutting tape |
WO2003058483A1 (en) | 2002-01-08 | 2003-07-17 | Seven Networks, Inc. | Connection architecture for a mobile network |
US6721871B2 (en) * | 2002-04-02 | 2004-04-13 | Nokia Corporation | Method and apparatus for synchronizing data stores with respect to changes in folders |
US7076567B1 (en) * | 2002-04-25 | 2006-07-11 | Oracle International Corporation | Simplified application object data synchronization for optimized data storage |
US7606881B2 (en) * | 2002-04-25 | 2009-10-20 | Oracle International Corporation | System and method for synchronization of version annotated objects |
US20040039755A1 (en) * | 2002-06-05 | 2004-02-26 | Matthew Kunze | Metadata relationships |
DE60223182T2 (de) * | 2002-06-28 | 2008-08-07 | Nokia Corp. | Verfahren und einrichtung zum abrufen von datenspeicherzugriffsinformationen |
US7787489B2 (en) * | 2002-10-07 | 2010-08-31 | Oracle International Corporation | Mobile data distribution |
FI114245B (fi) * | 2002-11-13 | 2004-09-15 | Nokia Corp | Synkronointi-istunnon järjestäminen |
US7171421B2 (en) * | 2002-11-26 | 2007-01-30 | General Electric Company | System for automating operating parameter list process |
WO2004051509A1 (en) * | 2002-12-04 | 2004-06-17 | Nokia Corporation | Selecting data for synchronization and for software configuration |
US20040127242A1 (en) * | 2002-12-31 | 2004-07-01 | Dashevsky Jane Y. | Apparatus and associated methods for the synchronization of shared content |
US7917468B2 (en) | 2005-08-01 | 2011-03-29 | Seven Networks, Inc. | Linking of personal information management data |
US7853563B2 (en) | 2005-08-01 | 2010-12-14 | Seven Networks, Inc. | Universal data aggregation |
US8468126B2 (en) | 2005-08-01 | 2013-06-18 | Seven Networks, Inc. | Publishing data in an information community |
US7613797B2 (en) * | 2003-03-19 | 2009-11-03 | Unisys Corporation | Remote discovery and system architecture |
JP2004318828A (ja) * | 2003-03-31 | 2004-11-11 | Seiko Epson Corp | データバックアップシステム及びデータバックアップ方法、装着可能なコンピュータ、メール送信システム、画像情報送信システム並びにデータバックアッププログラム |
US7216133B2 (en) * | 2003-07-29 | 2007-05-08 | Microsoft Corporation | Synchronizing logical views independent of physical storage representations |
KR100585748B1 (ko) * | 2003-11-27 | 2006-06-07 | 엘지전자 주식회사 | 전화번호 싱크 방법 및 시스템 |
GB2409545A (en) * | 2003-12-24 | 2005-06-29 | Nokia Corp | File synchronisation |
US7437484B2 (en) | 2003-12-29 | 2008-10-14 | International Business Machines Corporation | Method for optimizing synchronization |
US20050197747A1 (en) * | 2004-03-04 | 2005-09-08 | Jason Rappaport | In-vehicle computer system |
JP2005309968A (ja) * | 2004-04-23 | 2005-11-04 | Kyosan Electric Mfg Co Ltd | 最新情報表示システム及びそれを使用した列車運行状況表示システム |
US20060047837A1 (en) * | 2004-06-14 | 2006-03-02 | Jukka-Pekka Rissanen | Arrangement for informing application capabilities by an object exchange protocol |
JP2006018895A (ja) * | 2004-06-30 | 2006-01-19 | Sony Corp | コンテンツ転送システム、コンテンツ記憶システム、コンテンツ記憶装置及びコンテンツ記憶方法 |
US7533074B2 (en) * | 2004-07-23 | 2009-05-12 | Sap Ag | Modifiable knowledge base in a mobile device |
KR100869540B1 (ko) * | 2004-08-06 | 2008-11-19 | 샤프 가부시키가이샤 | 송신기, 수신기, 통신시스템, 통신방법, 통신프로그램을 기록한 컴퓨터 독취가능한 기록매체 |
JP4529612B2 (ja) * | 2004-09-21 | 2010-08-25 | 株式会社セガ | 携帯端末におけるアプリケーションプログラム使用時の通信料の削減方法 |
US8775650B2 (en) * | 2004-10-29 | 2014-07-08 | Core Wireless Licensing S.A.R.L. | Memory association to folder information |
US7787391B2 (en) * | 2005-01-28 | 2010-08-31 | Sharp Kabushiki Kaisha | Communication device, communication system, communication method, communication program, and communication circuit |
US8284684B2 (en) * | 2005-01-28 | 2012-10-09 | Sharp Kabushiki Kaisha | Communication device, communication system, communication method, and communication circuit |
CN101964705B (zh) * | 2005-01-28 | 2012-08-08 | 夏普株式会社 | 通信设备、通信***、通信方法、通信程序、通信电路 |
US8051182B2 (en) * | 2005-01-28 | 2011-11-01 | Sharp Kabushiki Kaisha | Communication device, communication system, communication method, communication program, and communication circuit |
US7752633B1 (en) | 2005-03-14 | 2010-07-06 | Seven Networks, Inc. | Cross-platform event engine |
US20060212489A1 (en) * | 2005-03-15 | 2006-09-21 | Eggers Michael R | Technique for effectively synchronizing data through an information service |
EP1708095A1 (de) * | 2005-03-31 | 2006-10-04 | Ubs Ag | Rechnernetzwerksystem zum Aufbauen, Synchronisieren und/oder Betreiben einer zweiten Datenbank aus/mit einer ersten Datenbank sowie Vorgehensweisen hierfür |
US8438633B1 (en) * | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
WO2006136660A1 (en) | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Maintaining an ip connection in a mobile network |
US8001076B2 (en) * | 2005-07-12 | 2011-08-16 | International Business Machines Corporation | Ranging scalable time stamp data synchronization |
US7849199B2 (en) * | 2005-07-14 | 2010-12-07 | Yahoo ! Inc. | Content router |
US7623515B2 (en) * | 2005-07-14 | 2009-11-24 | Yahoo! Inc. | Content router notification |
US20070014307A1 (en) * | 2005-07-14 | 2007-01-18 | Yahoo! Inc. | Content router forwarding |
US20070038703A1 (en) * | 2005-07-14 | 2007-02-15 | Yahoo! Inc. | Content router gateway |
US20070016636A1 (en) * | 2005-07-14 | 2007-01-18 | Yahoo! Inc. | Methods and systems for data transfer and notification mechanisms |
US7631045B2 (en) * | 2005-07-14 | 2009-12-08 | Yahoo! Inc. | Content router asynchronous exchange |
US8015319B2 (en) * | 2005-10-27 | 2011-09-06 | Huawei Technologies Co., Ltd. | Method, system, client and server for implementing data sync |
CN101305580B (zh) * | 2005-11-10 | 2012-01-18 | 夏普株式会社 | 数据发送装置及其控制方法、数据接收装置及其控制方法、数据发送***、数据发送装置控制程序、数据接收装置控制程序以及记录有该程序的记录介质 |
US8024290B2 (en) | 2005-11-14 | 2011-09-20 | Yahoo! Inc. | Data synchronization and device handling |
US8065680B2 (en) * | 2005-11-15 | 2011-11-22 | Yahoo! Inc. | Data gateway for jobs management based on a persistent job table and a server table |
CN100452734C (zh) * | 2005-11-17 | 2009-01-14 | 中国科学院计算技术研究所 | 基于全局Internet拓扑知识的P2P应用构建方法 |
CN100429891C (zh) * | 2005-11-17 | 2008-10-29 | 乐金电子(中国)研究开发中心有限公司 | 一种数据同步方法 |
US7657575B2 (en) * | 2005-12-30 | 2010-02-02 | Sap Ag | Sequencing updates to business objects |
US9367832B2 (en) * | 2006-01-04 | 2016-06-14 | Yahoo! Inc. | Synchronizing image data among applications and devices |
KR100725414B1 (ko) | 2006-02-07 | 2007-06-07 | 삼성전자주식회사 | 디지털 컨텐츠 동기화를 위한 동기화 식별자 생성 방법 및장치 |
US7769395B2 (en) | 2006-06-20 | 2010-08-03 | Seven Networks, Inc. | Location-based operations and messaging |
CN100450108C (zh) * | 2006-03-23 | 2009-01-07 | 华为技术有限公司 | 一种采用数据同步处理电子邮件的***、装置及方法 |
KR100772879B1 (ko) * | 2006-04-19 | 2007-11-02 | 삼성전자주식회사 | 네트워크에서 디스커버리를 수행하는 장치, 시스템 및 그방법 |
KR100755715B1 (ko) * | 2006-04-21 | 2007-09-05 | 삼성전자주식회사 | 복수의 컨텐츠 디렉토리 서비스 장치에 대한 동기화 지원방법, 상기 동기화 지원 방법에 이용되는 컨텐츠 디렉토리서비스 장치 및 이를 포함하는 시스템 |
US20070297458A1 (en) * | 2006-06-27 | 2007-12-27 | Microsoft Corporation | Efficient and layered synchronization protocol for database systems |
EP1883257A1 (fr) * | 2006-07-28 | 2008-01-30 | Gemplus | Procédé de synchronisation entre un equipement mobile et une carte a puce |
US20080034008A1 (en) * | 2006-08-03 | 2008-02-07 | Yahoo! Inc. | User side database |
US7860826B2 (en) * | 2006-08-04 | 2010-12-28 | Apple Inc. | Method and system for using global equivalency sets to identify data during peer-to-peer synchronization |
JP4219950B2 (ja) * | 2006-10-16 | 2009-02-04 | シャープ株式会社 | 通信機器、通信方法、通信回路、携帯電話機、プログラム、およびプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US10255607B2 (en) * | 2006-11-15 | 2019-04-09 | Disney Enterprises, Inc. | Collecting consumer information |
US20080155112A1 (en) * | 2006-12-22 | 2008-06-26 | Nokia Corporation | System and method for updating information feeds |
US7805403B2 (en) | 2007-01-07 | 2010-09-28 | Apple Inc. | Synchronization methods and systems |
US7660831B2 (en) * | 2007-01-07 | 2010-02-09 | Apple Inc. | Synchronization methods and systems |
US7739410B2 (en) * | 2007-01-07 | 2010-06-15 | Apple Inc. | Synchronization methods and systems |
US8239504B2 (en) | 2007-01-07 | 2012-08-07 | Apple Inc. | Synchronization methods and systems |
US7761414B2 (en) * | 2007-01-07 | 2010-07-20 | Apple Inc. | Asynchronous data synchronization amongst devices |
US20080163743A1 (en) * | 2007-01-07 | 2008-07-10 | Freedman Gordon J | Synchronization methods and systems |
US7778971B2 (en) * | 2007-01-07 | 2010-08-17 | Apple Inc. | Synchronization methods and systems |
US20080270629A1 (en) * | 2007-04-27 | 2008-10-30 | Yahoo! Inc. | Data snychronization and device handling using sequence numbers |
US8805425B2 (en) | 2007-06-01 | 2014-08-12 | Seven Networks, Inc. | Integrated messaging |
US8693494B2 (en) | 2007-06-01 | 2014-04-08 | Seven Networks, Inc. | Polling |
US8209540B2 (en) | 2007-06-28 | 2012-06-26 | Apple Inc. | Incremental secure backup and restore of user settings and data |
CN101355726A (zh) * | 2007-07-25 | 2009-01-28 | 国际商业机器公司 | 基于多媒体消息传递服务的数据库同步方法和*** |
US8073434B2 (en) * | 2007-09-18 | 2011-12-06 | Sap Ag | System and method of object simulation in an intermittently connected mobile application |
US8364181B2 (en) | 2007-12-10 | 2013-01-29 | Seven Networks, Inc. | Electronic-mail filtering for mobile devices |
US9002828B2 (en) | 2007-12-13 | 2015-04-07 | Seven Networks, Inc. | Predictive content delivery |
US8862657B2 (en) | 2008-01-25 | 2014-10-14 | Seven Networks, Inc. | Policy based content service |
US20090193338A1 (en) | 2008-01-28 | 2009-07-30 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
US8787947B2 (en) | 2008-06-18 | 2014-07-22 | Seven Networks, Inc. | Application discovery on mobile devices |
US8078158B2 (en) | 2008-06-26 | 2011-12-13 | Seven Networks, Inc. | Provisioning applications for a mobile device |
US8135670B2 (en) * | 2008-07-22 | 2012-03-13 | International Business Machines Corporation | Embedded change logging for data synchronization |
US8909759B2 (en) | 2008-10-10 | 2014-12-09 | Seven Networks, Inc. | Bandwidth measurement |
US20100131513A1 (en) | 2008-10-23 | 2010-05-27 | Lundberg Steven W | Patent mapping |
KR100935831B1 (ko) * | 2008-11-17 | 2010-01-08 | 우용태 | 복수의 이벤트 식별자가 포함된 데이타구조체를 이용한 데이타동기화 방법 및 상기 방법을 이용한 데이타 백업솔루션 |
US20100211544A1 (en) * | 2009-02-19 | 2010-08-19 | Jyshyang Chen | System with session synchronization |
US20100268784A1 (en) * | 2009-04-17 | 2010-10-21 | Marc Henness | Data synchronization system and method |
TW201202956A (en) * | 2010-06-01 | 2012-01-16 | Htc Corp | Method for exchanging device management (DM) tree information and communication apparatus |
US8838783B2 (en) | 2010-07-26 | 2014-09-16 | Seven Networks, Inc. | Distributed caching for resource and mobile network traffic management |
CA2806527A1 (en) | 2010-07-26 | 2012-02-09 | Seven Networks, Inc. | Mobile network traffic coordination across multiple applications |
US8843153B2 (en) | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
WO2012060995A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
EP2635973A4 (en) | 2010-11-01 | 2014-01-15 | Seven Networks Inc | TO THE BEHAVIOR OF A MOBILE APPLICATION AND INTERMEDIATE STORAGE TAILORED TO NETWORK CONDITIONS |
US8484314B2 (en) | 2010-11-01 | 2013-07-09 | Seven Networks, Inc. | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
WO2012071384A2 (en) | 2010-11-22 | 2012-05-31 | Michael Luna | Optimization of resource polling intervals to satisfy mobile device requests |
CA2798523C (en) | 2010-11-22 | 2015-02-24 | Seven Networks, Inc. | Aligning data transfer to optimize connections established for transmission over a wireless network |
WO2012094675A2 (en) | 2011-01-07 | 2012-07-12 | Seven Networks, Inc. | System and method for reduction of mobile network traffic used for domain name system (dns) queries |
GB2517815A (en) | 2011-04-19 | 2015-03-04 | Seven Networks Inc | Shared resource and virtual resource management in a networked environment |
WO2012149221A2 (en) | 2011-04-27 | 2012-11-01 | Seven Networks, Inc. | System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief |
WO2012149434A2 (en) | 2011-04-27 | 2012-11-01 | Seven Networks, Inc. | Detecting and preserving state for satisfying application requests in a distributed proxy and cache system |
US9904726B2 (en) | 2011-05-04 | 2018-02-27 | Black Hills IP Holdings, LLC. | Apparatus and method for automated and assisted patent claim mapping and expense planning |
WO2013015995A1 (en) | 2011-07-27 | 2013-01-31 | Seven Networks, Inc. | Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network |
US20130086044A1 (en) * | 2011-10-03 | 2013-04-04 | Steven W. Lundberg | System and method for patent activity profiling |
US20130086033A1 (en) | 2011-10-03 | 2013-04-04 | Black Hills Ip Holdings, Llc | Systems, methods and user interfaces in a patent management system |
US20130097116A1 (en) * | 2011-10-17 | 2013-04-18 | Research In Motion Limited | Synchronization method and associated apparatus |
EP2789137A4 (en) | 2011-12-06 | 2015-12-02 | Seven Networks Inc | SYSTEM OF REDUNDANTLY CLUSTERED MACHINES FOR PROVIDING TILTING MECHANISMS IN MOBILE TRAFFIC MANAGEMENT AND NETWORK RESOURCE PRESERVATION |
US8934414B2 (en) | 2011-12-06 | 2015-01-13 | Seven Networks, Inc. | Cellular or WiFi mobile traffic optimization based on public or private network destination |
US9277443B2 (en) | 2011-12-07 | 2016-03-01 | Seven Networks, Llc | Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol |
WO2013086455A1 (en) | 2011-12-07 | 2013-06-13 | Seven Networks, Inc. | Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation |
US8861354B2 (en) | 2011-12-14 | 2014-10-14 | Seven Networks, Inc. | Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization |
EP2792188B1 (en) | 2011-12-14 | 2019-03-20 | Seven Networks, LLC | Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system |
WO2013090834A1 (en) | 2011-12-14 | 2013-06-20 | Seven Networks, Inc. | Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic |
WO2013103988A1 (en) | 2012-01-05 | 2013-07-11 | Seven Networks, Inc. | Detection and management of user interactions with foreground applications on a mobile device in distributed caching |
WO2013116856A1 (en) | 2012-02-02 | 2013-08-08 | Seven Networks, Inc. | Dynamic categorization of applications for network access in a mobile network |
WO2013116852A1 (en) | 2012-02-03 | 2013-08-08 | Seven Networks, Inc. | User as an end point for profiling and optimizing the delivery of content and data in a wireless network |
US8812695B2 (en) | 2012-04-09 | 2014-08-19 | Seven Networks, Inc. | Method and system for management of a virtual network connection without heartbeat messages |
US10263899B2 (en) | 2012-04-10 | 2019-04-16 | Seven Networks, Llc | Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network |
KR101333468B1 (ko) * | 2012-04-25 | 2013-11-26 | 한국항공우주산업 주식회사 | 비행제어컴퓨터의 채널 아이디 점검 방법 및 그 방법을 실행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
WO2014011216A1 (en) | 2012-07-13 | 2014-01-16 | Seven Networks, Inc. | Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications |
US9161258B2 (en) | 2012-10-24 | 2015-10-13 | Seven Networks, Llc | Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion |
US20140177497A1 (en) | 2012-12-20 | 2014-06-26 | Seven Networks, Inc. | Management of mobile device radio state promotion and demotion |
US9271238B2 (en) | 2013-01-23 | 2016-02-23 | Seven Networks, Llc | Application or context aware fast dormancy |
US8874761B2 (en) | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US8750123B1 (en) | 2013-03-11 | 2014-06-10 | Seven Networks, Inc. | Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network |
US9065765B2 (en) | 2013-07-22 | 2015-06-23 | Seven Networks, Inc. | Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network |
US10243891B2 (en) * | 2014-08-14 | 2019-03-26 | Oath Inc. | Cross-device integration system and method |
US10671640B2 (en) | 2017-06-02 | 2020-06-02 | Apple Inc. | Adaptive cross-device event data synchronization |
KR20230152377A (ko) | 2022-04-27 | 2023-11-03 | 한국전자통신연구원 | 오픈 데이터 생태계에서의 다중 데이터 허브 간 데이터 실시간 동기화 시스템 및 방법 |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5274240A (en) * | 1990-01-12 | 1993-12-28 | The Regents Of The University Of California | Capillary array confocal fluorescence scanner and method |
US5529679A (en) * | 1992-02-28 | 1996-06-25 | Hitachi, Ltd. | DNA detector and DNA detection method |
US5516409A (en) * | 1991-02-28 | 1996-05-14 | Hitachi, Ltd. | DNA detector and DNA detection method |
JPH04291556A (ja) | 1991-03-20 | 1992-10-15 | Fujitsu Ltd | 通信制御方式 |
JP2785530B2 (ja) * | 1991-09-13 | 1998-08-13 | 株式会社日立製作所 | 電気泳動装置 |
US5307487A (en) | 1991-10-03 | 1994-04-26 | The United States Of America As Represented By The Secretary Of The Navy | Method of database synchronization with consistency determined by entry and exit counters used on both update and retrieval |
US5608720A (en) * | 1993-03-09 | 1997-03-04 | Hubbell Incorporated | Control system and operations system interface for a network element in an access system |
US5730850A (en) * | 1993-04-23 | 1998-03-24 | Hitachi, Ltd. | Capillary array electrophoresis system |
US5710922A (en) | 1993-06-02 | 1998-01-20 | Apple Computer, Inc. | Method for synchronizing and archiving information between computer systems |
US5439578A (en) * | 1993-06-03 | 1995-08-08 | The Governors Of The University Of Alberta | Multiple capillary biochemical analyzer |
JP2605673B2 (ja) | 1994-06-06 | 1997-04-30 | 日本電気株式会社 | Tdma無線通信システム |
US6515968B1 (en) * | 1995-03-17 | 2003-02-04 | Worldcom, Inc. | Integrated interface for real time web based viewing of telecommunications network call traffic |
US5582705A (en) * | 1995-05-19 | 1996-12-10 | Iowa State University Research Foundation, Inc. | Multiplexed capillary electrophoresis system |
US5943676A (en) * | 1996-11-13 | 1999-08-24 | Puma Technology, Inc. | Synchronization of recurring records in incompatible databases |
AU5686498A (en) | 1996-11-13 | 1998-06-22 | Puma Technology, Inc. | Synchronization of databases |
US5790727A (en) * | 1997-02-05 | 1998-08-04 | Brookhaven Science Associates Llc | Laser illumination of multiple capillaries that form a waveguide |
US6173311B1 (en) * | 1997-02-13 | 2001-01-09 | Pointcast, Inc. | Apparatus, method and article of manufacture for servicing client requests on a network |
CN1160970C (zh) * | 1997-05-09 | 2004-08-04 | 美国阿尔卡塔尔资源有限合伙公司 | 可以进行快速数据库同步的通信***和方法 |
US6654785B1 (en) * | 1998-03-02 | 2003-11-25 | Hewlett-Packard Development Company, L.P. | System for providing a synchronized display of information slides on a plurality of computer workstations over a computer network |
US6490617B1 (en) * | 1998-06-09 | 2002-12-03 | Compaq Information Technologies Group, L.P. | Active self discovery of devices that participate in a network |
US6516314B1 (en) * | 1998-11-17 | 2003-02-04 | Telefonaktiebolaget L M Ericsson (Publ) | Optimization of change log handling |
US6266525B1 (en) * | 1998-12-17 | 2001-07-24 | Lucent Technologies Inc. | Method for detecting fraudulent use of a communications system |
CN1262481A (zh) | 1999-01-27 | 2000-08-09 | 电话通有限公司 | 多个数据库的同步方法及装置 |
JP2000222268A (ja) | 1999-01-29 | 2000-08-11 | Hitachi Ltd | 複数のコンピュータ間におけるファイルの同期方法 |
US20050192008A1 (en) * | 1999-03-31 | 2005-09-01 | Nimesh Desai | System and method for selective information exchange |
AU5181700A (en) * | 1999-06-01 | 2000-12-18 | Siemens Automotive Corporation | Portable driver information device |
CA2276840A1 (en) * | 1999-07-05 | 2001-01-05 | Telefonaktiebolaget Lm Ericsson | Method and apparatus for synchronizing a database in portable communication devices |
EP1109106A1 (en) * | 1999-12-14 | 2001-06-20 | Sun Microsystems, Inc. | Reference data base |
US6643669B1 (en) * | 2000-03-14 | 2003-11-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for optimization of synchronization between a client's database and a server database |
US7035932B1 (en) * | 2000-10-27 | 2006-04-25 | Eric Morgan Dowling | Federated multiprotocol communication |
-
2001
- 2001-04-25 US US09/842,568 patent/US6839564B2/en not_active Expired - Lifetime
-
2002
- 2002-04-24 WO PCT/FI2002/000339 patent/WO2002086758A1/en active Application Filing
- 2002-04-24 CN CNB028127773A patent/CN100371929C/zh not_active Expired - Lifetime
- 2002-04-24 KR KR1020037013954A patent/KR100937163B1/ko active IP Right Grant
- 2002-04-24 EE EEP200300518A patent/EE200300518A/xx unknown
- 2002-04-24 CA CA2447821A patent/CA2447821C/en not_active Expired - Lifetime
- 2002-04-24 EP EP02716869.9A patent/EP1390874B1/en not_active Expired - Lifetime
- 2002-04-24 JP JP2002584207A patent/JP2004534994A/ja active Pending
- 2002-04-24 BR BRPI0209171A patent/BRPI0209171B1/pt active IP Right Grant
-
2003
- 2003-10-24 ZA ZA2003/08298A patent/ZA200308298B/en unknown
-
2004
- 2004-11-18 US US10/991,697 patent/US7555303B2/en not_active Expired - Lifetime
-
2008
- 2008-11-20 JP JP2008296890A patent/JP2009110530A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101268439B (zh) * | 2005-08-19 | 2012-04-25 | 微软公司 | 数据库片段克隆和管理 |
CN101303660B (zh) * | 2007-03-15 | 2010-09-08 | 株式会社东芝 | 将数据从配置源设备配置到配置目标设备的*** |
CN100489787C (zh) * | 2007-07-10 | 2009-05-20 | 北京大学 | 一种虚拟机的外存在线迁移方法 |
CN101374144B (zh) * | 2007-08-21 | 2012-04-25 | 华为技术有限公司 | 控制会话的数据同步的方法、装置和*** |
CN101639950B (zh) * | 2008-07-29 | 2011-07-13 | 中兴通讯股份有限公司 | 一种车道收费***中的数据同步方法及装置 |
CN102054035A (zh) * | 2010-12-29 | 2011-05-11 | 北京播思软件技术有限公司 | 一种基于数据范围的数据库数据同步方法 |
CN102054035B (zh) * | 2010-12-29 | 2013-01-02 | 北京播思软件技术有限公司 | 一种基于数据范围的数据库数据同步方法 |
Also Published As
Publication number | Publication date |
---|---|
BRPI0209171B1 (pt) | 2016-04-26 |
KR100937163B1 (ko) | 2010-01-15 |
EP1390874A1 (en) | 2004-02-25 |
CA2447821A1 (en) | 2002-10-31 |
US20020161769A1 (en) | 2002-10-31 |
US6839564B2 (en) | 2005-01-04 |
JP2009110530A (ja) | 2009-05-21 |
KR20040005933A (ko) | 2004-01-16 |
US20050125459A1 (en) | 2005-06-09 |
CA2447821C (en) | 2010-11-23 |
ZA200308298B (en) | 2005-06-29 |
US7555303B2 (en) | 2009-06-30 |
WO2002086758A8 (en) | 2003-01-16 |
BR0209171A (pt) | 2004-08-03 |
WO2002086758A1 (en) | 2002-10-31 |
CN100371929C (zh) | 2008-02-27 |
JP2004534994A (ja) | 2004-11-18 |
EE200300518A (et) | 2004-02-16 |
EP1390874B1 (en) | 2017-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100371929C (zh) | 数据库数据的同步 | |
KR101384387B1 (ko) | 사용자 디바이스를 프로비저닝하기 위한 시스템 및 방법 | |
US9594821B2 (en) | Method and apparatus for synchronizing how data is stored in different data stores | |
US6694335B1 (en) | Method, computer readable medium, and system for monitoring the state of a collection of resources | |
CN1210656C (zh) | 用于客户和自适应同步和转换服务器的方法、装置 | |
EP1381974B1 (en) | Application data synchronization in telecommunications system | |
US6920486B2 (en) | Method and apparatus for enabling synchronizing data in different devices having different capabilities and unmatched data fields | |
JP4829316B2 (ja) | 中断された同期プロセスに対処してデータを同期させる方法、装置、システム | |
KR101011216B1 (ko) | 데이터 동기 | |
CN1711533A (zh) | 配置同步会话 | |
US7415539B2 (en) | Method and apparatus for detecting insufficient memory for data extraction processes | |
WO2010036983A1 (en) | Personal information management data synchronization | |
CN1818902A (zh) | 使用设备数据模式同步服务器和设备数据 | |
KR100728076B1 (ko) | 인터럽트된 동기화 프로세스의 처리를 제공하는 데이터를동기화하는 방법, 장치 및 시스템 | |
US20070083676A1 (en) | Method and system for transferring information during server synchronization with a computing device | |
EP1835424A1 (en) | Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process |
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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160114 Address after: Espoo, Finland Patentee after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Patentee before: Nokia Oyj |
|
CX01 | Expiry of patent term |
Granted publication date: 20080227 |
|
CX01 | Expiry of patent term |