WO2007056954A1 - Procede de synchronisation de donnees de traitement, et terminal client, serveur et systeme de synchronisation de donnees associes - Google Patents

Procede de synchronisation de donnees de traitement, et terminal client, serveur et systeme de synchronisation de donnees associes Download PDF

Info

Publication number
WO2007056954A1
WO2007056954A1 PCT/CN2006/003092 CN2006003092W WO2007056954A1 WO 2007056954 A1 WO2007056954 A1 WO 2007056954A1 CN 2006003092 W CN2006003092 W CN 2006003092W WO 2007056954 A1 WO2007056954 A1 WO 2007056954A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
client
unique identifier
unit
identifier
Prior art date
Application number
PCT/CN2006/003092
Other languages
English (en)
French (fr)
Inventor
Hongbin Yu
Chunrong Chen
Yingjun Zhou
Wei Gao
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Priority to JP2008540433A priority Critical patent/JP4792505B2/ja
Priority to CNA2006800121353A priority patent/CN101160908A/zh
Priority to EP06817837A priority patent/EP1940107A4/en
Publication of WO2007056954A1 publication Critical patent/WO2007056954A1/zh
Priority to US12/122,120 priority patent/US20080270485A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2082Data synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/457Network directories; Name-to-address mapping containing identifiers of data entities on a computer, e.g. file names

Definitions

  • the invention relates to a synchronous synchronization language (Syncml, Synchronization Markup Language) protocol synchronization processing technology, in particular to a data synchronization processing method and a client, a server and a data synchronization system.
  • Synchronization Markup Language Synchronization Markup Language
  • Modern society is an information society. Users need to receive and send information anytime and anywhere. They also need to execute various applications in the terminal device anytime and anywhere, and the above information interaction results and execution application results need to be stored in the terminal device. , also needs to be consistent with the corresponding data in other communication devices.
  • an address book is stored in a mobile phone or in a personal digital assistant (PDA), and the same address book is stored in both the office and the home computer or in the notebook computer, and the user always wishes
  • PDA personal digital assistant
  • the information in the communication devices can be consistent, that is, when the data information on one of the communication devices changes, the corresponding data information in the other communication devices can also be operated to perform corresponding change, which is the data synchronization process between different communication devices. .
  • the devices at both ends for data synchronization may be any network device, such as a palmtop computer, a PDA, a mobile phone or a desktop computer, etc.
  • the data of the synchronous operation may be any kind of network data.
  • a user can access and operate the same set of data information through different communication devices.
  • the Synchronization Markup Language (SYNCML) technology is a new general standard technology proposed to implement the above data synchronization process.
  • FIG. 1 is a schematic diagram of a process of synchronizing data between a client and a server by using the Syncml protocol in the prior art.
  • One Syncml synchronization process requires six packets to be exchanged between the client and the server. To complete, that is, from PKG1 to PKG6, the main processing is as follows:
  • the client first sends a synchronization initialization packet (PKG1) to the server, where PKG1 mainly includes client authentication information, device capability information, and the like;
  • the server After receiving the PKG1, the server will use the client authentication information contained in PKG1. Perform authentication authentication on the client, and verify the account information of the client, and simultaneously feed the verification result information and the specified synchronization type information to the client through the synchronization initialization response packet (PKG2);
  • the client encapsulates all the data (including adding, deleting, modifying, etc.) that has changed since the last synchronization processing in the local database into the packet PKG3 by analyzing the synchronization type specified in the received PKG2. Sent to the server;
  • the client usually uses the log ID to identify the location of the log after the last synchronization process is completed in the operation log of the local database.
  • the “anchor” is used to identify the location, so that the next synchronization process is required.
  • the data synchronized to the server is the information recorded in the log after the anchor identifier.
  • the format of the reference log information of the client is as shown in Table 1 (where LUID represents the local unique identity):
  • the server executes the corresponding various operation instructions to update the data changed by the client to the corresponding database in sequence;
  • the server When the server returns the above-mentioned operation instruction execution state information to the client through the data packet PKG4, it also encapsulates all data (including data such as addition, deletion, modification, etc.) in the database that has changed since the last synchronization processing is completed.
  • the data packet PKG4 is returned to the client;
  • the client executes various corresponding operation instructions to sequentially update the changed data in the server to the local database;
  • the figure is a state diagram in which the client generates an ID mapping information table and feeds back to the server according to the added data add command sent by the server, wherein the GUID represents global The unique identifier global unique identity, LUID represents the local unique identifier local unique identity, for the same newly added data entry, the server 820 itself generates a GUID value uniquely identified on the server side to identify the data entry, and the client 810 A LUID value uniquely identified on the client side is also generated to identify the data item; in order to be able to associate the same data item to be operated by both the server side and the client side, an ID mapping information is maintained on the server 820 side.
  • the GUID represents global The unique identifier global unique identity
  • LUID represents the local unique identifier local unique identity
  • the server 820 itself generates a GUID value uniquely identified on the server side to identify the data entry
  • the client 810 A LUID value uniquely identified on the client side is also generated to identify the data item; in order to be able to associate the same data
  • the server 820 sends the newly added data entry and the corresponding GUID value "1010101" to the client 810, the client 810.
  • the new addition is also required.
  • the data entry is assigned a LUID value of "11”
  • the client 810 establishes a mapping relationship between the LUID value "11” assigned to the newly added data entry and the GUID value "1010101” assigned by the server for the newly added data entry.
  • the server 820 side obtains an ID mapping information table "Server Mapping Table" 821, and the ID mapping information table is maintained.
  • the server After the server maintains the ID mapping information contained in the received PKG5 to its own mapping information table, it will feed back the execution status of the maintenance instruction to the client through the data packet PKG6; if the client receives the data packet PKG6, if the state is in the state If the codes are all normal, the data synchronization processing is successfully ended.
  • Syncml synchronization process when a user uses a Syncml synchronization software installed on a wireless communication terminal to perform data synchronization processing with a server on a wired network for a large amount of data, it often occurs that the wireless network signal is not good or is operated by the communication terminal.
  • the system load is large, etc., which results in slower data processing and longer time-consuming processing.
  • the user is likely to be unable to tolerate a long wait, but the data synchronization process is interrupted halfway before the data synchronization process is completed; in addition, there may be other reasons, such as a sudden power failure of the communication terminal, The network signal gradually disappears or there is an incoming call, etc., and the data synchronization processing process is interrupted halfway.
  • the invention provides a data synchronization processing method and a client, a server and a data synchronization system, so that the data synchronization processing process can normally complete the data synchronization in the case of being interrupted.
  • a data synchronization processing method includes:
  • the client performs corresponding change processing on the change data entry sent by the server;
  • the global unique identifier corresponding to the change data entry that is sent by the server is cached; if the synchronization process is interrupted, the client sends the cached global unique identifier to the server after the next synchronization process is restarted;
  • the server stores the report information, and sends the global unique identifier and its corresponding change data entry that are not included in the storage result in the database to the client; the client performs corresponding change processing.
  • a client includes:
  • a change processing unit configured to perform corresponding change processing on the change data item delivered by the server
  • An identifier cache unit configured to cache a global unique identifier corresponding to the change data entry delivered by the server
  • the identifier reporting unit is configured to report the global unique identifier cached by the identifier cache unit to the server after the synchronization process is interrupted and the next synchronization process is restarted.
  • a server includes:
  • the report information storage unit is configured to store a globally unique identifier reported by the client, where the globally unique identifier corresponds to a change data entry delivered by a server that has performed update processing on the client; a search unit, configured to search, in the self-change database, a globally unique identifier that is not included in the report information storage unit and its corresponding change data entry; a sending unit, configured to search the global unique identifier of the search unit The corresponding change data entry is sent to the client.
  • a data synchronization system includes a client and a server; wherein the client is configured to perform a corresponding change process on a change data item delivered by the server;
  • the globally unique identifier of the data entry is cached; after the interrupted synchronization process is restarted, the cached global unique identifier is reported to the server;
  • the server is configured to store the report information, and send the global unique identifier and its corresponding change data entry that are not included in the storage result in the database to the client.
  • the change data item sent by the server to the server is subjected to corresponding change processing; and the GUID corresponding to the change data entry sent by the server is cached, so that if the current synchronization processing is interrupted, the next time
  • the client can report the cached GUID to the server, and the server stores the GUID that is not included in the storage result and the corresponding change data entry in the database.
  • the server sends the amount of data of the change data to the client, which saves the synchronization processing time, so that the data synchronization process can complete the data synchronization normally in the case of being interrupted.
  • FIG. 1 is a schematic diagram of a processing process of data synchronization processing between a client and a server by using the Syncml protocol in the prior art
  • FIG. 2 is a schematic diagram of a state in which a client generates an ID mapping information table and feeds back to a server according to an add command sent by a server in the prior art;
  • FIG. 3 is a schematic diagram of a process of performing interaction processing of a change data between a client and a server in the prior art
  • FIG. 4 is a flowchart of a main implementation principle of a data synchronization processing method according to an embodiment of the present invention
  • FIG. 5 is a block diagram of a main component structure of a client according to an embodiment of the present invention.
  • FIG. 6 is a block diagram showing the main components of a client after adding an identifier deletion unit according to an embodiment of the present invention
  • FIG. 8 is a block diagram of a main component structure of a server in an embodiment of the present invention
  • FIG. 8 is a block diagram of a main component structure of a server according to an embodiment of the present invention.
  • the embodiment of the present invention can solve the problem that the large data amount synchronization processing process is often actively or passively interrupted due to a long time consuming, thereby causing the data synchronization processing to be incomplete.
  • the embodiment of the present invention is proposed based on the following considerations:
  • the data packet PKG3 is mainly responsible for sending the data items locally changed by the client to the server
  • the data packet PKG4 is mainly responsible for delivering the data items changed by the server to the client
  • the two parties also feedback each other to execute the data change operation instruction sent by the other party. The result of the execution.
  • the two data packets PKG3 and PKG4 interacting between the client and the server bring great time consumption and traffic consumption to the entire data synchronization process.
  • FIG. 3 is a schematic diagram of a process of changing data part interaction between a client and a server.
  • the data packet PKG3 is divided into a first data message (step S31), a second data message (step S33) and a third data message (step S35) for transmission; the data packet PKG4 is divided into the first data message (step S32) and the second data message (step S34) are transmitted.
  • the encapsulation of the newly added data entry obviously consumes a large amount of message space, especially for the data with large capacity.
  • objects such as new data entries for multimedia files such as pictures, videos, etc.
  • it needs to be divided into multiple messages to be sent separately.
  • the embodiment of the present invention considers reducing the server to send the change data entry (especially the newly added data entry). The number of clients.
  • FIG. 4 is a flowchart of the main implementation of the data synchronization processing method according to the embodiment of the present invention.
  • the main implementation process is as follows:
  • Step S10 The client performs corresponding change processing according to the change data entry sent by the server.
  • Step S14 If the synchronization process is interrupted, the next time the synchronization process is restarted, the client reports the cached GUID to the server for storage;
  • Step S16 the server determines, according to the stored result, whether the GUID and its corresponding change data entry not included in the stored result can be indexed in the change database of its own. If yes, the following step S18 is performed; otherwise, the following step S20 is performed. ;
  • Step S18 the server according to the storage result, the GUID of the self-change database not included in the storage result and its corresponding change data entry is sent to the client, and then returns to continue to perform step S10;
  • Step S20 the current data synchronization processing process ends.
  • the server successfully stores the GUID reported by the client, it will feed back the successful storage response message to the client; after receiving the successful response response message fed back by the server, the client may choose to delete the GUID of the cache itself.
  • the client allocates a corresponding local unique identifier LUID to the change data entry delivered by the server;
  • the client can report the mapping relationship between the cached GUID and the LUID to the server, thereby reporting the cached GUID to the server.
  • the purpose of the server is the same.
  • the main technical implementation principle of the embodiment of the data synchronization processing method of the present invention is that each time the data synchronization processing is performed, whether the client will abnormally interrupt during the process of receiving the data packet PKG4 will complete each After the local change operation of the change data entry (described below with the newly added data entry as an example), the LUID assigned to the newly added data entry is mapped to the GUID delivered by the server, and the mapping information is saved to In the file, this information can be sent to the server at the next synchronous restart, so as to prevent the server from repeatedly sending the newly added data items in multiple synchronization processes.
  • the inventive scheme will produce significant effects.
  • the client can complete the data synchronization of large data volume in multiple times, similar to the network download interruption point.
  • an ID mapping information table in the same format as that stored in the server is stored locally on the client side (as shown in the Server Mapping Table in FIG. 2 above), and the established ID mapping information table is performed. Blanking;
  • the client sends the generated ID mapping information to the server in the packet PKG5, and the local ID mapping information table should be cleared after successful; if the client receives the data packet sent by the server PKG4 process In the middle or subsequent processing, the ID mapping information of the newly added data item that has been successfully added to the local database has been saved in the client local ID mapping information table.
  • slow synchronization is a special synchronization, mainly in
  • the client sends all the local change data entries to the server, and the server compares the data entries with the existing data entries of the server one by one, and then the server does not include
  • the data entry is saved, and the data entry that exists on the server side but not yet on the client is returned to the client, thereby achieving the consistency of the data entries of both parties, and is sent to the server, and then the local change data entry is sent; the server receives the data.
  • the ID mapping information table should be improved according to the ID mapping information. Then, when the data packet PKG4 is encapsulated, the information table can be mapped according to its own ID, so as to avoid the synchronization before the interruption. New additions to the client The data entry is sent to the client again, which reduces the amount of data transmitted in the packet PKG4 to a certain extent, and reduces the number of times the packet PKG4 is divided into multiple messages and the client sequentially interacts, which ultimately reduces the number of times. The synchronization processing time of the data.
  • the server may perform a success response message by carrying the storage ID mapping information fed back to the client in the data packet PKG4 sent to the client, so that the client can immediately clear the local ID mapping information table after receiving the data packet PKG4 sent by the server. Corresponding information. If the synchronization processing is abnormally interrupted at this time, the data entry newly added to the client will generate new ID mapping information and store it in the ID mapping information table of the client local, so that the subsequent startup is started. The new synchronization process can reduce the amount of data transmission.
  • the server sends the newly added three data entries to the client through the data packet PKG4, and the client suddenly breaks during the corresponding increase processing process of the newly added data entry sent by the server. If the client only adds the first newly added data entry to the local database and assigns the LUID to 32, an ID mapping information is generated in the client local ID mapping information table [10093902] , 32], and the other two new data entries will be processed in the future when the client is powered off. After the subsequent client restarts, the server initiates data synchronization processing with the server.
  • the client first reports the stored ID mapping information [10093902, 32] to the server through the packet PKG3, and the server receives the ID. After mapping the information, it will be considered that the data entry of No. 10093902 has been synchronized to the client, so that when the packet PKG4 is sent, only the two newly added data items that are not synchronized to the client are processed, thereby reducing the data. Synchronous data traffic that is processed synchronously.
  • the present invention also provides a client device, please refer to FIG. 5, the composition of a block diagram of the major client embodiment of the present invention which is a mainly comprises changing a processing unit 10, identifies the buffer unit 20 and the identification ⁇ : Gen unit 30 , the main role of each component is as follows:
  • the change processing unit 10 is mainly configured to perform corresponding change processing on the change data item delivered by the server;
  • the identifier cache unit 20 is configured to cache a globally unique identifier GUID corresponding to the change data entry delivered by the server.
  • the flag reporting unit 30 is mainly used to interrupt the synchronization process. After the next synchronization process is restarted, the GUID cached by the identifier cache unit 20 is reported to the server for storage.
  • the figure is a block diagram of a main component structure after the client adds an identifier deleting unit according to an embodiment of the present invention, where the newly added identifier deleting unit 40 is mainly used to receive a successful storage response message fed back by the server, and then delete The above identifies the GUID cached in the cache unit 20.
  • FIG. 7 the figure is a block diagram of a main component structure of an identifier buffer unit in a client according to an embodiment of the present invention, which mainly includes an 'identity allocation subunit 210, a mapping relationship establishing subunit 220, and a mapping identifier cache subunit 230, where The main effects of each component are as follows:
  • the identifier allocation subunit 210 is mainly configured to allocate a corresponding local unique identifier LUID to the change data item delivered by the server;
  • the mapping relationship establishing sub-unit 220 is configured to establish a mapping relationship between the LUID allocated by the identifier allocation sub-unit 210 and the GUID corresponding to the change data entry delivered by the server;
  • the mapping identifier cache sub-unit 230 is configured to cache the mapping relationship established by the mapping relationship establishing sub-unit 220 to cache the GUID delivered by the server.
  • the above-mentioned identity reporting unit 30 reports the mapping between the LUID and the GUID cached in the mapping identifier cache sub-unit 230 to the server, so as to report the cached GUID to the server.
  • FIG. 8 is a block diagram showing the main components of a server according to an embodiment of the present invention.
  • the server of the embodiment of the present invention includes: a report information storage unit 310, configured to store a globally unique identifier reported by the client, and a globally unique identifier corresponding to the change data entry delivered by the server that has been updated by the client;
  • the searching unit 320 is configured to search, in the self-change database, the globally unique identifier that is not included in the report information storage unit 320 and its corresponding change data entry;
  • the sending unit 330 is configured to send the global unique identifier that is found by the searching unit and the corresponding change data entry to the client.
  • the server may further include: a storage response unit 340, configured to feed back a successful storage response message to the client after the reporting information storage unit 310 successfully stores the globally unique identifier.
  • a storage response unit 340 configured to feed back a successful storage response message to the client after the reporting information storage unit 310 successfully stores the globally unique identifier.
  • the reporting information storage unit is a mapping information table updating unit, configured to update the mapping information table of the server according to the mapping relationship between the globally unique identifier and the local unique identifier reported by the client.
  • the embodiment of the present invention also proposes a data
  • the client is configured to perform corresponding change processing on the change data item delivered by the server; cache the global unique identifier corresponding to the change data entry delivered by the server; After the restart, the cached global unique identifier is reported to the server; the server is configured to store the report information, and send the global unique identifier and its corresponding change data entry that are not included in the stored result in the database to the client.

Description

数据同步处理方法及客户端、 服备器和数据同歩系统
技术领域
本发明涉及同步标己语言 ( Syncml, Synchronization Markup Language ) 协议同步处理技术, 尤其是涉及一种数据同步处理方法及客户端、 服务器 和数据同步系统。
背景技术
现代社会是信息社会, 用户需要随时随地的进行信息的接收和发送, 也需要随时随地的执行终端设备中的各种应用程序, 而上述信息交互结果 和执行应用程序结果都需要存储到终端设备中 , 也需要与其他通信设备中 的相应数据保持一致。例如,在手机中、或在个人数字助理(PDA, Personal Digital Assistant ) 中都保存有通讯录, 同时在办公室和家里的计算机中或 者笔记本电脑中也都保存有相同的通讯录, 用户总是希望这些通信设备中 的信息能够保持一致, 即当其中一个通信设备上的数据信息发生变化时, 也可以操作其他通信设备中的相应数据信息进行对应改变, 这就是不同通 信设备之间的数据同步过程。
其中进行数据同步的两端设备可以是任何的网络设备, 如掌上电脑、 PDA, 移动电话或桌面计算机等等; 同时在任何一种网络上面, 同步操作 的数据可以是任何一种网络数据。 同时一个用户可以通过不同的通信设备 访问并操作同样的数据信息集合。 其中同步标记语言 ( SYNCML , Synchronization Markup Language )技术就是为了实现上述数据同步处理过 程而提出的一个新的通用标准技术。 ,
请参照图 1 ,该图是现有技术中釆用 Syncml协议,客户端和服务器之 间进行数据同步处理的处理过程示意图, 其中一次 Syncml同步处理过程 需要客户端和服务器之间交互六个数据包来完成, 即从 PKG1到 PKG6, 其主要处理过程如下:
1、 无论一次 Syncml同步处理过程由哪方发起, 客户端都会首先向服 务器发送同步初始化数据包(PKG1 ), 其中在 PKG1中主要包含有客户端 鉴权信息、 设备能力信息等;
2、 服务器接收到 PKG1后, 会根据 PKG1 中包含的客户端鉴权信息 对客户端进行鉴权认证, 并验证客户端的账号信息, 同时将验证结果信息 和指定的同步类型信息通过同步初始化响应数据包 (PKG2 )反馈给客户 端;
•3、 客户端通过分析接收到的 PKG2 中指定的同步类型, 把本地数据 库中自上次同步处理完成之后发生过变更的所有数据(包括增加、 删除、 修改等数据)封装到数据包 PKG3中发送给服务器;
一般情况下, 客户端在本地数据库的操作日志中通常通过日志 ID来 标识上次同步处理完成后.日志所处的位置, 通常采用 "anchor" 来标识该 位置,这样下次进行同步处理时需要同步给服务器的数据就是 anchor标识 之后的日志中所记载的信息,客户端的参考日志信息格式如下表 1所示(其 中 LUID代表本地唯一标识 local unique identity ):
表 1 :
Figure imgf000004_0001
4、 服务器接收到 PKG3后, 执行其中对应的各种操作指令将客户端 变更的数据依次更新到对应数据库中;
服务器在将上述操作指令执行状态信息通过数据包 PKG4返回给客户 端的同时, 也会将自身数据库中自上次同步处理完成之后发生过变更的所 有数据(包括增加、 删除、 修改等数据)封装到数据包 PKG4中返回给客 户端;
5、 客户端接收到 PKG4后, 执行其中对应的各种操作指令将服务器 中变更的数据依次更新到本地数据库中;
客户端在将上述操作指令执行状态信息通过数据包 PKG5返回给服务 器的同时, 如果接收到的 PKG4中包含向本地数据库中增加新数据条目的 add指令, 则客户端在成功向本地数据库添加新数据后, 还需要生成相应 的 ID映射信息通过数据包 PKG5通知给服务器; 如图 2所示, 该图是客 户端根据服务器下发的增加数据 add指令生成 ID映射信息表反馈给服务 器的状态示意图,其中图中 GUID代表全球唯一标识 global unique identity, LUID代表本地唯一标识 local unique identity,对于同一个新增加的数据条 目, 服务器 820自身会产生一个在服务器端唯一标识的 GUID值来对该数 据条目进行标识, 而客户端 810也会产生一个在客户端唯一标识的 LUID 值来对该数据奈目进行标识; 为了能够将服务器端和客户端双方要操作的 同一数据条目对应起来, 就要在服务器 820端维护一个 ID映射信息表, 如图 2中, 假设 "Car" 是服务器 820中新增加的数据条目, 服务器 820 在将该新增加的数据条目和对应的 GUID值 "1010101"下发到客户端 810 时, 客户端 810在将该新增加的数据条目 "Car" 增加到本地数据库 811 后, 还要为该新增加的数据条目分配一个 LUID值 "11", 然后客户端 810 将为该新增加的数据条目分配的 LUID值 "11" 和服务器为该新增加的数 据条目分配的 GUID值 "1010101"建立映射关系后发送到服务器 820, 同 理, 后续其他新增加数据条目同样进行上述处理后, 服务器 820端就会得 到一张 ID映射信息表 "Server Mapping Table" 821 , 同时要对该 ID映射 信息表进行维护。
6、服务器在将接收到的 PKG5中包含的 ID映射信息维护到自身映射 信息表之后, 会通过数据包 PKG6向客户端反馈维护指令的执行状态; 客 户端接收到数据包 PKG6后, 如果其中状态码全部正常, 则标志此次数据 同步处理成功结束。
根据上述的 Syncml 同步处理过程, 当用户使用无线通信终端上安装 的 Syncml 同步软件与有线网络上的服务器进行大数据量的数据同步处理 时 , 经常会出现由于无线网络信号不好或者由于通信终端操作系统负载较 大等原因, 因而导致数据.同步处理速度较慢、 耗时较长等情况出现。 此种 情况下用户很有可能会由于无法忍受长时间的等待, 而在数据同步处理没 有完成之前就中途中断了数据同步处理过程; 此外, 也有可能会由于其他 原因,比如通信终端突然断电、网络信号逐渐消失或者有来电呼入等状况, 而导致数据同步处理过程还没有完成就被中途中断掉了。 当由于上述原因而导致通信终端和服务器之间的数据同步处理过程 在没有完成之前就产生中断时, 后续当通信终端再次发起新的同步请求 时, 就需要重新对所有的变更数据进行同步, 即中断之前已经同步处理完 成的数据还需要在新的同步处理过程中重新进行同步处理, 然而在重新执 行同步处理过程中 , 有可能还会遇到上述所提及的网絡条件问题和终端当 前状态变化问题, 这样重新开始的数据同步处理过程还有可能会由于上述 的同样原因而再次被主动的或者被动的中断, 如此循环下去, 就会影响到 数据的同步过程的实现。
发明内容
本发明提出一种数据同步处理方法及客户端、 服务器和数据同步系 统, 以使数据同步处理过程在被中断的情况下也能正常完成数据的同步。
根据本发明的一个方面, 一种数据同步处理方法, 包括:
客户端对服务器下发的变更数据条目进行对应变更处理; 并
将服务器下发的对应所述变更数据条目的全球唯一标识进行緩存; 若本次同步处理被中断, 下次同步处理被重启后, 客户端将缓存的全 球唯一标识上报给服务器;
服务器存储所述上报信息, 将自身变更数据库中未包括在所述存储结 果中的全球唯一标识及其对应的变更数据条目下发给客户端; 客户端进行 对应变更处理。
根据本发明的另一方面, 一种客户端, 包括:
变更处理单元, 用于对服务器下发的变更数据条目进行对应变更处 理;
标识緩存单元, 用于将服务器下发的对应所述变更数据条目的全球唯 一标识进行缓存;
标识上报单元,用于在本次同步处理被中断,下次同步处理被重启后, 将所述标识缓存单元緩存的全球唯一标识上报给服务器。
根据本发明的再一方面, 一种服务器, 包括:
上报信息存储单元, 用于存储客户端上报的全球唯一标识, 所述全球 唯一标识对应于客户端已进行更新处理的服务器下发的变更数据条目; 查找单元, 用于在自身变更数据库中查找未包括在所述上报信息存储 单元中的全球唯一标识及其对应的变更数据条目; 下发单元, 用于将所述查找单元查找到的全球唯一标识及其对应的变 更数据条目下发给客户端。 根据本发明的又一方面, 一种数据同步系统, 包括客户端和服务器; 其中,所述客户端,用于对服务器下发的变更数据条目进行对应变更处理; 将服务器下发的对应所述变更数据条目的全球唯一标识进行緩存; 在中断 的同步处理被重启后, 将缓存的全球唯一标识上报给服务器;
所述服务器, 用于存储所述上报信息, 将自身变更数据库中未包括在 存储结果中的全球唯一标识及其对应的变更数据条目下发给客户端。
本发明的实施例中, 通过客户端对服务器下发的变更数据条目进行对 应变更处理; 并将服务器下发的对应该变更数据条目的 GUID进行緩存, 这样若本次同步处理被中断, 下次同步处理被重启后, 客户端就可以将緩 存的 GUID上报给服务器, 服务器进行存储, 将自身变更数据库中未包括 在存储结果中的 GUID及其对应的变更数据条目下发给客户端, 从而减少 了同步处理被中断重启后, 服务器向客户端下发变更数据的数据量, 节约 了同步处理时间, 使得数据同步处理过程在被中断的情况下也能正常完成 数据的同步。
附图说明
图 1为现有技术中采用 Syncml协议, 客户端和服务器之间进行数据 同步处理的处理过程示意图;
图 2为现有技术中客户端根据服务器下发的增加数据 add指令生成 ID 映射信息表反馈给服务器的状态示意图;
图 3为现有技术中客户端和服务器之间进行变更数据部分交互处理的 过程示意图;
图 4为本发明实施例的数据同步处理方法的主要实现原理流程图; 图 5为本发明实施例的客户端的主要组成结构框图;
图 6为本发明实施例的客户端增加标识删除单元后的主要组成结构框 图; 图 Ί为本发明实施例的客户端中标识缓存单元的主要组成结构框图; 图 8为本发明实施例的服务器的主要组成结构框图。
具体实施方式
本发明的实施例可以解决大数据量同步处理过程由于耗时较长而经 常地被主动或被动地中断, 从而导致数据同步处理无法完成的问题。
本发明的实施例是基于下述考虑而提出的: 通过对上述现有技术中的 Syncml 同步处理过程进行分析可见, 客户端和服务器之间交互的数据包 PKG3 和 PKG4, 无论是从执行时间还是从传输流量上都占用了整个同步 处理过程的 艮大比重, 其具体原因如下:
数据包 PKG3主要负责将客户端本地变更的数据条目发往服务器, 而 数据包 PKG4主要负责将服务器端变更的数据条目下发给客户端, 同时双 方还会相互反馈执行对方发送的数据变更操作指令的执行结果。 这样无论 是在客户端中还是在服务器中, 一旦发生变更的数据条目达到了上百甚至 上千条(其中有可能仅一条变更数据条目就会占用几千字节空间, 甚至几 兆字节空间), 由此可见客户端和服务器之间交互的这两个数据包 PKG3 和 PKG4都会为整个数据同步过程带来很大的时间消耗及其流量消耗。
在上述大数据量同步处理过程中, 无论对于数据包 PKG3还是对于数 据包 PKG4中的数据而言, 都可能分别被客户端和服务器分割成多个消息 部分依次进行交互, 每一次消息交互的过程都是一次发送请求、 等待响应 的过程, 请具体参照图 3所示, 该图是客户端和服务器之间进行变更数据 部分交互处理的过程示意图。
其中数据包 PKG3被分成第一个数据消息(步骤 S31 )、第二个数据消 息 (步骤 S33 )和第三个数据消息 (步骤 S35 )进行发送; 数据包 PKG4 被分成第一个数据消息 (步骤 S32 )和第二个数据消息 (步骤 S34 )进行 发送。
这样在无线链路带宽不足、 无线网絡信号不好等情况下, 无疑比较费 时, 因此需要尽量减少上述这种变更数据部分的交互次数。
同时对于客户端和服务器交互的每个变更数据消息中, 对于新增加的 数据条目的封装显然会占用大量的消息空间, 尤其是对于容量较大的数据 对象而言 (如图片、 视频等多媒体文件的新增数据条目 ;), 有时为了封装 一条新增加的数据条目都需要分成多个消息来分别发送。 而且考虑到相对 于客户端而言, 服务器在一次同步处理过程中需要同步给客户端的数据量 往往较大, 为此本发明实施例考虑减少服务器发送变更数据条目 (尤其是 新增加数据条目 )给客户端的数量。
请参照图 4, 该图是本发明实施例的数据同步处理方法的主要实现原 理流程图, 其主要实现过程如下:
步骤 S10,客户端根据服务器下发的变更数据条目进行对应变更处理; 步骤 S12、 客户端将服务器下发的对应上述变更数据条目的全球唯一 标识 GUID进行缓存;
步骤 S14、 若本次同步处理被中断, 下次同步处理被重新启动后, 客 户端将上述缓存的 GUID上报给服务器进行存储;
步驟 S16, 服务器根据存储结果, 判断是否能够在自身的变更数据库 中索引到未包括在存储结果中的 GUID及其对应的变更数据条目,如果是, 执行下述步骤 S18, 否则执行下述步骤 S20;
步骤 S18, 服务器根据存储结果, 将自身变更数据库中未包括在所述 存储结果中的 GUID及其对应的变更数据条目下发给客户端, 然后返回继 续执行步骤 S10;
步驟 S20, 本次数据同步处理过程结束。
在上述处理过程中, 若服务器将客户端上报的 GUID成功存储后, 会 向客户端反馈成功存储响应消息; 客户端接收到服务器反馈的成功存储响 应消息后, 可以选择删除自身缓存的 GUID。
其中上述步骤 S12 中客户端将服务器下发的对应变更数据条目的 GUID进行缓存的处理过程可以通过如下方式实现:
客户端为服务器下发的变更数据条目分配对应的本地唯一标识 LUID;
并将分配的 LUID和服务器下发的对述变更数据条目的 GUID之间建 立映射关系;
然后将建立的映射关系进行緩存, 从而就实现了将服务器下发 GUID 进行缓存的目的。
这样在上述步骤 S14中若本次同步处理被中断, 下次同步处理被重新 启动后, 客户端可以将上述缓存的 GUID和 LUID之间的映射关系上报给 服务器, 从而实现将緩存的 GUID上报给服务器的目的。
其中上述方法实现过程对于变更数据条目为新增加数据条目的处理 过程将显出较佳的技术效果。
综上可见 , 本发明数据同步处理方法的实施例的主要技术实现原理就 是在每次进行数据同步处理时, 客户端无论在接收数据包 PKG4的过程中 是否会出现异常中断现象, 都会在完成每条变更数据条目 (下述以新增加 数据条目为例进行说明)的本地变更操作后, 立即将自身分配给新增加数 据条目的 LUID和服务器下发的 GUID进行对应映射, 并将映射信息保存 到文件中, 这样在下次同步重启时就可以将此信息发送给服务器, 从而避 免服务器端将新增加的数据条目在多次同步处理过程中重复发送。
这样, 在服务器端存在大量新增加的数据条目需要同步给客户端且在 同步过程被多次中断的情况下, 本发明方案将会产生显著的效果。 客户端 可以分多次来完成大数据量的数据同步, 类似于网絡下载中断点续传功 匕。
本发明方案的实施例的具体实施过程如下:
首先在客户端本地也建立一个和服务器端存,储的同样格式的 ID映射 信息表(具体如上述现有技术图 2中的 Server Mapping Table所示), 并将 该建立的 ID映射信息表进行置空;
每次进行数据同步处理时, 客户端无论在接收服务器下发的数据包 PKG4的过程中是否会出现异常中断现象,'都会在完成每条新增加数据条 目的本地添加操作后, 在内存中生成一条 LUID (客户端完成本地添加操 作后会产生该新增加数据条目的 LUID )和 GUID (服务器下发的数据包 PKG4 中有该新增加数据条目的 GUID ) 的对应信息, 同时将此条信息存 入到本地 ID映射信息表。 如果本次同步处理成功结束, 则客户端会将上 述生成的 ID映射信息承载在数据包 PKG5中发送给服务器, 成功后应清 空本地 ID映射信息表; 若在客户端接收服务器下发的数据包 PKG4过程 中, 或后续处理过程中被异常中断, 则已成功添加到本地数据库中的新增 加数据条目的 ID映射信息就已经保存在客户端本地 ID映射信息表中。
后续再次被启动同步处理时, 在完成同步初始化后, 客户端应首先通 过数据包 PKG3将本地 ID映射信息表中的所有信息 (慢同步情况除外, 慢同步是一种特殊的同步 , 主要是在服务器状态出现异常时由服务器发起 的。 此时客户端会把本地所有的变更数据条目都发给服务器, 服务器将这 些数据条目和服务器端现存的数据条目进行逐一详细的比较, 然后将服务 器没有包括的数据条目保存下来, 同时将服务器端已存在而客户端还没有 的数据条目返回给客户端, 从而达成双方数据条目的一致 )发送给服务 器, 然后再发送本地的变更数据条目; 服务器在接收到客户端发来的数据 包 PKG3后,应该首先根据其中的 ID映射信息完善自身的 ID映射信息表, 然后在封装数据包 PKG4时就可以根据自身的 ID映射信息表, 避免把中 断之前已经同步给客户端的新增加数据条目再次下发给客户端, 这样就在 一定程度上减少了数据包 PKG4中传输的数据量, 也减少了数据包 PKG4 被分割成多个消息与客户端依次进行交互的次数, 最终减少了数据的同步 处理时间。 服务器可以在下发给客户端的数据包 PKG4中承载向客户端反 馈的存储 ID映射信息执行成功响应消息, 这样客户端在接收到服务器下 发的数据包 PKG4之后,可以立刻清除本地 ID映射信息表中的对应信息。 如果本次同步处理在此时又被异常中断掉, 则此次新增加到客户端的数据 条目又会产生新的 ID映射信息被存入到客户端本地的 ID映射信息表中, 这样在后续启动新的同步处理时又可以减少一定的数据传输量。
下面将列举一个简单的例子来对本发明数据同步处理方法的具体实 施情况进行详细的说明:
假设当前服务器端新增加了三条数据条目 (如下表 2所示), 而客户 端没有变更数据条目;
表 2: GUID 姓名 电话
10093902 Adam 13600001001
10093903 Alice 13600301101
10093904 Mark 13400021001 此时发起数据同步处理, 服务器会通过数据包 PKG4把自身新增加的 三条数据条目发送给客户端, 如果客户端在对服务器下发的新增加数据条 目进行对应增加处理过程中突然断电, 若此时客户端只将第一条新增加的 数据条目加入到了本地数据库中, 并为其分配了 LUID为 32, 这样客户端 本地 ID映射信息表中就生成了一条 ID映射信息 [10093902, 32] ,而另外两 条新增加数据条目在客户端断电时还未来得及处理。 后续客户端重启后, 重新和服务器发起数据同步处理, 此次同步处理过程中, 客户端会首先通 过数据包 PKG3将自身存储的 ID映射信息 [10093902, 32]上报给服务器, 服务器接收到该 ID映射信息后, 就会认为第 10093902号数据条目已同步 给客户端, 这样在发送数据包 PKG4时就会只封装后两条未同步给客户端 处理的新增加数据条目, 从而减少了本次数据同步处理的同步数据流量。
本发明还提出一种客户端设备, 请参照图 5 , 该图是本发明实施例的 客户端的主要组成结构框图,其主要包括变更处理单元 10、标识缓存单元 20和标识上^ :艮单元 30, 其中各个组成部分的主要作用如下:
变更处理单元 10,主要用于对服务器下发的变更数据条目进行对应的 变更处理;
标识緩存单元 20,主要用于将服务器下发的对应所述变更数据条目的 全球唯一标识 GUID进行緩存;
标识上报单元 30, 主要用于本次同步处理被中断, 下次同步处理被重 新启动后, 将上述标识缓存单元 20缓存的 GUID上报给服务器端进行存 储。
请参照图 6, 该图是本发明实施例的客户端增加标识删除单元后的主 要组成结构框图, 其中新增加的标识删除单元 40, 主要用于接收到服务器 反馈的成功存储响应消息后, 删除上述标识缓存单元 20中緩存的 GUID。 请参照图 7, 该图是本发明实施例的客户端中标识緩存单元的主要组 成结构框图, 其主要包括'标识分配子单元 210、 映射关系建立子单元 220 和映射标识緩存子单元 230, 其中各个组成部分的主要作用如下:
标识分配子单元 210, 主要用于为服务器下发的变更数据条目分配对 应的本地唯一标识 LUID;
映射关系建立子单元 220, 主要用于将上述标识分配子单元 210分配 的 LUID和服务器下发的对应上述变更数据条目的 GUID之间建立映射关 系;
映射标识緩存子单元 230, 主要用于将上述映射关系建立子单元 220 建立的映射关系进行缓存, 以实现将服务器下发的 GUID进行缓存。
相应的, 上述标识上报单元 30要通过将映射标识緩存子单元 230中 缓存的 LUID和 GUID之间的映射关系上报给服务器, 从而实现将缓存的 GUID上报给服务器的目的。
请参阅图 8 , 图 8是本发明实施例的服务器的主要组成结构框图。 本发明实施例的服务器包括: 上报信息存储单元 310, 用于存储客户 端上报的全球唯一标识, 斤述全球唯一标识对应于客户端已进行更新处理 的服务器下发的变更数据条目;
查找单元 320, 用于在自身变更数据库中查找未包括在所述上报信息 存储单元 320中的全球唯一标识及其对应的变更数据条目;
下发单元 330, 用于将所述查找单元查找到的全球唯一标识及其对应 的变更数据条目下发给客户端。
此外, 所述服务器还可以包括: 存储响应单元 340, 用于在所述上报 信息存储单元 310成功存储所述全球唯一标识后向客户端反馈成功存储响 应消息。
本发明的一个实施例在具体实现时, 所述上报信息存储单元为映射信 息表更新单元, 用于根据所述客户端上报的全球唯一标识和本地唯一标识 的映射关系更新服务器的映射信息表。
在前述客户端和服务器的基础上, 本发明的实施例还提出一种数据同 步系统, 该数据同步系统中, 客户端用于对服务器下发的变更数据条目进 行对应变更处理; 将服务器下发的对应所述变更数据条目的全球唯一标识 进行緩存; 在中断的同步处理被重启后, 将緩存的全球唯一标识上报给服 务器; 服务器用于存储所述上报信息, 将自身变更数据库中未包括在存储 结果中的全球唯一标识及其对应的变更数据条目下发给客户端。
显然, 本领域的技术人员可以对本发明进行各种改动和变型而不脱离 本发明的精神和范围。 这样, 倘若本发明的这些修改和变型属于本发明权 利要求及其等同技术的范围之内 , 则本发明也意图包含这些改动和变型在 内。

Claims

权 利 要 求
1、 一种数据同步处理方法, 其特征在于, 包括: 客户端对服务器下发的变更数据条目进行对应变更处理; 将服务器下发的对应所述变更数据条目的全球唯一标识进行緩存; 若本次同步处理被中断, 下次同步处理被重启后, 所述客户端将缓存 的全球唯一标识上报给服务器; 所述服务器存储所述上报信息, 将自身变更数据库中未包括在存储结 果中的全球唯一标识及其对应的变更数据条目下发给客户端, 客户端进行 对应变更处理。
2、 如权利要求 1 所述的方法, 其特征在于, 所述服务器存储所述上 报信息成功后, 还包括:
所述服务器向客户端反馈成功存储响应消息; 所述客户端接收到服务器反馈的成功存储响应消息后, 删除自身緩存 的全球,准一标识。
3、 如权利要求 1 所述的方法, 其特征在于, 所述服务器存储所述上 报信息成功后, 还包括: 若服务器根据所述存储结果, 在自身变更数据库 中索引不到未包括在所述存储结果中的全球唯一标识及其对应的变更数 据条目时, 则数据同步处理过程结束。
4、 如权利要求 1 所述的方法, 其特征在于, 所述将服务器下发的对 应所述变更数据条目的全球唯一标识进行缓存, 包括:
所述客户端为服务器下发的变更数据条目分配对应的本地唯一标识; 建立所述本地唯一标识和服务器下发的对应所述变更数据条 §的全 球 p —标识之间的映射关系; 将所述建立的映射关系进行缓存。
5、 如权利要求 4所述的方法, 其特征在于, 所述客户端将緩存的全 球唯一标识上报给服务器通过将缓存的映射关系上报给服务器实现。
6、 如权利要求 5所述的方法, 其特征在于, 所述服务器存储所述上 报信息, 包括: 所述服务器根据所述上报的映射关系更新映射信息表。
7、 如权利要求 6所述的方法, 其特征在于, 所述服务器在更新映射 信息表后, 还包括: 向客户端反馈存储映射信息执行成功响应消息;
所述客户端接收到服务器反馈的存储映射信息执行成功响应消息后, 删除自身緩存的映射关系。
8、 如权利要求 4所述的方法, 其特征在于, 还包括: 若本次同步处 理成功, 则所述客户端将緩存的映射关系上报给服务器, 清空本地缓存的 映射关系。
9、 如权利要求 1 ~ 8任一项所述的方法, 其特征在于, 所述变更数据 条目为新增加数据条目。
10、 一种客户端, 其特征在于, 包括:
变更处理单元, 用于对服务器下发的变更数据条目进行对应变更处 理; 标识緩存单元, 用于将服务器下发的对应所述变更数据条目的全球唯 一标识进^"缓存;
标识上 4艮单元,用于在本次同步处理被中断,下次同步处理被重启后, 将所述标识緩存单元緩存的全球唯一标识上报给服务器。
11、 如权利要求 10所述的客户端, 其特征在于, 还包括: 标识删除 单元, 用于接收到服务器反馈的成功存储响应消息后, 删除所述标识緩存 单元中缓存的全球唯一标识。
12、 如权利要求 10所述的客户端, 其特征在于, 所述标识緩存单元 包括:
标识分配子单元, 用于为服务器下发的变更数据条目分配对应的本地 唯一标识; 映射关系建立子单元, 用于建立所述标识分配子单元分配的本地唯一 标识和服务器下发的对应所述变更数据条目的全球唯一标识之间的映射 关系;
映射标识緩存子单元, 用于将所述映射关系建立子单元建立的映射关 系进行缓存。
13、 如权利要求 12所述的客户端, 其特征在于, 所述标识上报单元 为映射标识上报单元, 用于将所述映射标识緩存子单元緩存的映射关系上 报给服务器。
14、 一种服务器, 其特征在于, 包括:
上报信息存储单元, 用于存储客户端上报的全球唯一标识, 所述全球 唯一标识对应于客户端已进行更新处理的服务器下发的变更数据条目; 查找单元, 用于在自身变更数据库中查找未包括在所述上报信息存储 单元中的全球唯一标识及其对应的变更数据条目;
下发单元, 用于将所述查找单元查找到的全球唯一标识及其对应的变 更数据条目下发给客户端。
15、 如权利要求 14所述的服务器, 其特征在于, 还包括: 存储响应 单元, 用于在所述上报信息存储单元成功存储所述全球唯一标识后向客户 端反馈成功存储响应消息。
16、 如权利要求 14所述的服务器, 其特征在于, 所述上报信息存储 单元为映射信息表更新单元, 用于根据所述客户端上报的全球唯一标识和 本地唯一标识的映射关系更新服务器的映射信息表。
17、 一种数据同步系统, 包括客户端和服务器; 其特征在于: 所述客户端, 用于对服务器下发的变更数据条目进行对应变更处理; 将服务器下发的对应所述变更数据条目的全球唯一标识进行緩存; 在中断 的同步处理被重启后, 将緩存的全球唯一标识上报给服务器;
所述服务器, 用于存储所述上报信息, 将自身变更数据库中未包括在 存储结果中的全球唯一标识及其对应的变更数据条目下发给客户端。
PCT/CN2006/003092 2005-11-16 2006-11-16 Procede de synchronisation de donnees de traitement, et terminal client, serveur et systeme de synchronisation de donnees associes WO2007056954A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2008540433A JP4792505B2 (ja) 2005-11-16 2006-11-16 データの同期処理方法、クライアント、サーバ、及びクライアントとサーバとのデータ同期システム
CNA2006800121353A CN101160908A (zh) 2005-11-16 2006-11-16 数据同步处理方法及客户端、服务器和数据同步系统
EP06817837A EP1940107A4 (en) 2005-11-16 2006-11-16 METHOD OF SYNCHRONIZING PROCESSING DATA, AND CLIENT TERMINAL, SERVER AND DATA SYNCHRONIZATION SYSTEM THEREFOR
US12/122,120 US20080270485A1 (en) 2005-11-16 2008-05-16 Method For Processing Data Synchronization And Client Terminal, Server, And Data Synchronization System Thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CNA2005101153927A CN1852309A (zh) 2005-11-16 2005-11-16 数据同步处理方法及其客户端
CN200510115392.7 2005-11-16

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/122,120 Continuation US20080270485A1 (en) 2005-11-16 2008-05-16 Method For Processing Data Synchronization And Client Terminal, Server, And Data Synchronization System Thereof

Publications (1)

Publication Number Publication Date
WO2007056954A1 true WO2007056954A1 (fr) 2007-05-24

Family

ID=37133777

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2006/003092 WO2007056954A1 (fr) 2005-11-16 2006-11-16 Procede de synchronisation de donnees de traitement, et terminal client, serveur et systeme de synchronisation de donnees associes

Country Status (6)

Country Link
US (1) US20080270485A1 (zh)
EP (1) EP1940107A4 (zh)
JP (1) JP4792505B2 (zh)
KR (1) KR20080068110A (zh)
CN (2) CN1852309A (zh)
WO (1) WO2007056954A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102724319A (zh) * 2012-06-20 2012-10-10 新浪网技术(中国)有限公司 一种数据同步方法、相关存储服务器及系统
US9092286B2 (en) 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
US9134989B2 (en) 2002-01-31 2015-09-15 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US9143560B2 (en) 2007-06-19 2015-09-22 Qualcomm Incorporated Methods and apparatus for dataset synchronization in a wireless environment
US9386397B2 (en) 2003-10-29 2016-07-05 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040068724A1 (en) * 2002-08-30 2004-04-08 Gardner Richard Wayne Server processing for updating dataset versions resident on a wireless device
CN101192229B (zh) * 2006-12-01 2010-09-22 阿里巴巴集团控股有限公司 一种同步数据的方法及系统
US7991740B2 (en) * 2008-03-04 2011-08-02 Apple Inc. Synchronization server process
CN101610225B (zh) * 2008-06-20 2012-01-25 华为技术有限公司 一种同步处理方法、系统和装置
CN102594874B (zh) * 2008-06-20 2014-12-17 华为技术有限公司 一种同步处理方法和装置
US20100268784A1 (en) * 2009-04-17 2010-10-21 Marc Henness Data synchronization system and method
CN101883419A (zh) * 2009-05-06 2010-11-10 中兴通讯股份有限公司 客户端信息的同步方法和系统
CN101997829A (zh) * 2009-08-18 2011-03-30 华为终端有限公司 一种分级数据同步的方法和设备
CN102238223B (zh) * 2010-05-06 2012-10-10 清华大学 一种面向移动设备的网络化个人数据管理方法
CN102594598A (zh) * 2012-02-16 2012-07-18 浪潮(北京)电子信息产业有限公司 一种日志管理系统及其实现方法
CN103338144B (zh) * 2013-05-30 2016-06-22 华为软件技术有限公司 一种会话数据同步方法和装置
CN103347005B (zh) * 2013-06-19 2016-08-10 北京奇虎科技有限公司 一种控制数据上报的方法以及客户端设备和服务器设备
CN103475721B (zh) * 2013-09-12 2016-09-14 广东电子工业研究院有限公司 一种数字资产更新系统的数字资产更新方法
CN105337996B (zh) * 2015-11-30 2018-08-03 北京奇艺世纪科技有限公司 一种数据处理方法及系统
US10311082B2 (en) * 2015-12-21 2019-06-04 Sap Se Synchronization of offline instances
CN112231324B (zh) 2019-06-26 2023-03-24 金篆信科有限责任公司 一种实现增量数据比对的系统及方法
CN110324760B (zh) * 2019-06-28 2020-10-27 安徽威斯贝尔智能科技有限公司 一种音频处理器及其控制方法
CN111460028A (zh) * 2020-03-09 2020-07-28 拉扎斯网络科技(上海)有限公司 数据传输方法、数据传输装置、存储介质和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1227396A1 (en) 2001-01-24 2002-07-31 Microsoft Corporation A method, system and computer program product for synchronizing data represented by different data structures by using update notifications
CN1367628A (zh) * 2000-11-08 2002-09-04 日本电气株式会社 便携式终端装置的程序更新方法以及便携式终端装置
CN1469244A (zh) * 2002-07-19 2004-01-21 文化传信科技(澳门)有限公司 文件下载方法及系统
WO2004023233A2 (en) * 2002-09-03 2004-03-18 Nokia Corporation Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6680952B1 (en) * 1999-06-01 2004-01-20 Cisco Technology, Inc. Method and apparatus for backhaul of telecommunications signaling protocols over packet-switching networks
JP2001117801A (ja) * 1999-10-22 2001-04-27 Sharp Corp データベース同期処理装置及びデータベース同期処理プログラムを記録した記録媒体
KR100557192B1 (ko) * 2004-04-06 2006-03-03 삼성전자주식회사 서버와 클라이언트간에 데이터 동기화 시 비정상 종료된경우 데이터 전송 방법 및 그 시스템.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1367628A (zh) * 2000-11-08 2002-09-04 日本电气株式会社 便携式终端装置的程序更新方法以及便携式终端装置
EP1227396A1 (en) 2001-01-24 2002-07-31 Microsoft Corporation A method, system and computer program product for synchronizing data represented by different data structures by using update notifications
CN1469244A (zh) * 2002-07-19 2004-01-21 文化传信科技(澳门)有限公司 文件下载方法及系统
WO2004023233A2 (en) * 2002-09-03 2004-03-18 Nokia Corporation Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1940107A4

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9134989B2 (en) 2002-01-31 2015-09-15 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US10602348B2 (en) 2002-01-31 2020-03-24 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US9092286B2 (en) 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
US10348804B2 (en) 2002-12-20 2019-07-09 Qualcomm Incorporated System to automatically process components on a device
US9386397B2 (en) 2003-10-29 2016-07-05 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning
US9591428B2 (en) 2003-10-29 2017-03-07 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning
US9143560B2 (en) 2007-06-19 2015-09-22 Qualcomm Incorporated Methods and apparatus for dataset synchronization in a wireless environment
CN102724319A (zh) * 2012-06-20 2012-10-10 新浪网技术(中国)有限公司 一种数据同步方法、相关存储服务器及系统
CN102724319B (zh) * 2012-06-20 2015-03-18 新浪网技术(中国)有限公司 一种数据同步方法、相关存储服务器及系统

Also Published As

Publication number Publication date
KR20080068110A (ko) 2008-07-22
JP2009516273A (ja) 2009-04-16
US20080270485A1 (en) 2008-10-30
JP4792505B2 (ja) 2011-10-12
EP1940107A4 (en) 2009-03-11
CN1852309A (zh) 2006-10-25
CN101160908A (zh) 2008-04-09
EP1940107A1 (en) 2008-07-02

Similar Documents

Publication Publication Date Title
WO2007056954A1 (fr) Procede de synchronisation de donnees de traitement, et terminal client, serveur et systeme de synchronisation de donnees associes
US7607096B2 (en) System and method for a user interface directed to discovering and publishing presence information on a network
JP4465638B2 (ja) プロキシ・サーバ、通信システム、通信方法及びプログラム
US7602765B2 (en) Method for synchronizing status information of IMPS client
JP4794143B2 (ja) 通知ボンドを使用してキャッシュオブジェクトを管理するためのシステムおよび方法
US7698307B2 (en) System and method for synchronizing between a file system and presence of contacts on a network
JP4943512B2 (ja) 通知メッセージ処理方法および装置
JP4518719B2 (ja) データ処理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
US20050246421A1 (en) System and method for discovering and publishing of presence information on a network
US7840528B2 (en) System and method for integrating continuous synchronization on a host handheld device
US7437566B2 (en) System and method for identity confirmation of a contact published on a network
US20090030917A1 (en) Multimedia messaging service-based database synchronization
WO2015090243A1 (zh) Ip管理方法、客户端以及服务器
JP2016517664A (ja) モバイルデバイスにマルチメディア情報を配信するためのシステム及び方法
WO2018040168A1 (zh) 分布式缓存同步方法、装置及系统
WO2012151993A1 (zh) 业务推送方法和装置
CN111770172A (zh) 消息中间件消费代理方法、装置、代理服务器及存储介质
WO2010028571A1 (zh) 大数据对象的传输方法、传输系统及发送设备和接收设备
JP2001211197A (ja) 通信システム、通信方法、ゲートウェイ装置およびクライアント
WO2021087892A1 (zh) 资源的订阅方法、设备及存储介质
KR100597405B1 (ko) 소켓 어플리케이션 프로그램을 이용한 데이터 중계 시스템및 데이터 중계 방법
WO2009052735A1 (fr) Procédé, système et dispositif de gestion destinés à un paquet d'apparence
EP1650674B1 (en) System and method for integrating continuous synchronization on a host handheld device
JP2004013479A (ja) 通信ネットワークおよびリモートファイルアクセス方法
WO2012167473A1 (zh) 消息状态设置方法和cpm业务服务器

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 200680012135.3

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2008540433

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2006817837

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 1020087013923

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2006817837

Country of ref document: EP