Method, system, client and server for implementing data sync
First Claim
1. A method of synchronizing a plurality of devices, comprising:
- during a sync initialization phase in a synchronization session, receiving, by a first device, from a second device a description of a hierarchical tree structure in said second device; and
determining, by the first device, an address of an informational node to be synchronized among a plurality of informational nodes arranged in said hierarchical tree structure based on said description, said description being used for describing hierarchical locations of all the informational nodes amongst the hierarchical tree structure, said address comprising a hierarchical location which is used for locating said informational node amongst the hierarchical tree structure, and said informational node being a data item or a folder in a database;
during said sync initialization phase, sending, by the first device, a sync command to the second device for designating the informational node to be synchronized, the sync command comprising the address of the informational node;
utilizing, by the first device, the address during a sync phase in said synchronization session to synchronize the informational node designated; and
,the method further comprising;
configuring three tables in both said first device and said second device, said three tables are used by the first device and the second device to synchronize said informational node during the sync phase, said three tables comprising;
a first table, used for storing information of all the data items in said hierarchical tree structure, said information of each data item comprising a correspondence relationship between a unique identifier (UID) of the data item and contents thereof;
a second table, used for storing information of all the folders in said hierarchical tree structure, said information of each folder comprising the number of the folder, the name of the folder, the parent folder to which the folder belongs, the status of the folder and the correspondence relationship thereof, in which the status of the folder comprises;
Existing, Adding, Updating, Deleting, Moving or Copying; and
a third table, used for storing affiliation of all the data items in said hierarchical tree structure, said affiliation of each data item comprising the UID of the data item, the parent folder to which the data item belongs, the status of the data item, and correspondence relationship thereof;
and during the sync phase, further comprising;
when synchronizing a folder in said hierarchical tree structure, sending to the second device a sync command with an operation type indicated by the status of said folder in the second table; and
if determined that there is a data item under said folder according to the third table, further determining, by the first device, the content of the data item under said folder according to the first table, and sending to the second device a second sync command with an operation type indicated by the status of the data item under said folder in the third table, said second sync command comprising the content of the data item and indicating said folder as the parent folder of the data item; and
when synchronizing a data item in said hierarchical tree structure, determining, by the first device, the content of said data item according to the first table, and sending to the second device a sync command with an operation type indicated by the status of said data item in the third table which comprises the content of the data item.
1 Assignment
0 Petitions
Accused Products
Abstract
This invention discloses a method for synchronizing a plurality of devices, including: obtaining, by a first device, an extended address of an informational node of a plurality of informational nodes of a second device, the plurality of informational nodes arranged in a hierarchical tree structure; and utilizing the extended address to locate the informational node amongst the tree structure to enable synchronization of the informational node; wherein the extended address includes a hierarchical location of the informational node. This invention further discloses a system, client and server for data sync, and the folder-level data sync can be implemented by using the method of this invention.
24 Citations
10 Claims
-
1. A method of synchronizing a plurality of devices, comprising:
-
during a sync initialization phase in a synchronization session, receiving, by a first device, from a second device a description of a hierarchical tree structure in said second device; and
determining, by the first device, an address of an informational node to be synchronized among a plurality of informational nodes arranged in said hierarchical tree structure based on said description, said description being used for describing hierarchical locations of all the informational nodes amongst the hierarchical tree structure, said address comprising a hierarchical location which is used for locating said informational node amongst the hierarchical tree structure, and said informational node being a data item or a folder in a database;during said sync initialization phase, sending, by the first device, a sync command to the second device for designating the informational node to be synchronized, the sync command comprising the address of the informational node; utilizing, by the first device, the address during a sync phase in said synchronization session to synchronize the informational node designated; and
,the method further comprising; configuring three tables in both said first device and said second device, said three tables are used by the first device and the second device to synchronize said informational node during the sync phase, said three tables comprising; a first table, used for storing information of all the data items in said hierarchical tree structure, said information of each data item comprising a correspondence relationship between a unique identifier (UID) of the data item and contents thereof; a second table, used for storing information of all the folders in said hierarchical tree structure, said information of each folder comprising the number of the folder, the name of the folder, the parent folder to which the folder belongs, the status of the folder and the correspondence relationship thereof, in which the status of the folder comprises;
Existing, Adding, Updating, Deleting, Moving or Copying; anda third table, used for storing affiliation of all the data items in said hierarchical tree structure, said affiliation of each data item comprising the UID of the data item, the parent folder to which the data item belongs, the status of the data item, and correspondence relationship thereof; and during the sync phase, further comprising; when synchronizing a folder in said hierarchical tree structure, sending to the second device a sync command with an operation type indicated by the status of said folder in the second table; and
if determined that there is a data item under said folder according to the third table, further determining, by the first device, the content of the data item under said folder according to the first table, and sending to the second device a second sync command with an operation type indicated by the status of the data item under said folder in the third table, said second sync command comprising the content of the data item and indicating said folder as the parent folder of the data item; andwhen synchronizing a data item in said hierarchical tree structure, determining, by the first device, the content of said data item according to the first table, and sending to the second device a sync command with an operation type indicated by the status of said data item in the third table which comprises the content of the data item. - View Dependent Claims (5, 6, 7, 8, 10)
-
-
2. A method of synchronizing a plurality of devices, comprising:
-
during a sync initialization phase in a synchronization session, designating, by a first device, an address as an address of an informational node to be synchronized among a plurality of informational nodes arranged in a hierarchical tree structure in a second device, and if said address does not exist in said second device, creating, by said second device, a node at said address, said address comprising a hierarchical location which is used for locating said informational node amongst the hierarchical tree structure, and said informational node being a data item or a folder in a database; during said sync initialization phase, sending, by the first device, a sync command to the second device for designating the informational node to be synchronized, the sync command comprising the address of the informational node; utilizing, by the first device, the address during a sync phase in said synchronization session to synchronize the informational node designated; the method further comprising; configuring three tables in both said first device and said second device, said three tables are used by the first device and the second device to synchronize said informational node during the sync phase, said three tables comprising; a first table, used for storing information of all the data items in said hierarchical tree structure, said information of each data item comprising a correspondence relationship between a unique identifier (UID) of the data item and contents thereof; a second table, used for storing information of all the folders in said hierarchical tree structure, said information of each folder comprising the number of the folder, the name of the folder, the parent folder to which the folder belongs, the status of the folder and the correspondence relationship thereof, in which the status of the folder comprises;
Existing, Adding, Updating, Deleting, Moving or Copying; anda third table, used for storing affiliation of all the data items in said hierarchical tree structure, said affiliation of each data item comprising the UID of the data item, the parent folder to which the data item belongs, the status of the data item, and correspondence relationship thereof; and during the sync phase, further comprising; when synchronizing a folder in said hierarchical tree structure, sending to the second device a sync command with an operation type indicated by the status of said folder in the second table; and
if determined that there is a data item under said folder according to the third table, further determining, by the first device, the content of the data item under said folder according to the first table, and sending to the second device a second sync command with an operation type indicated by the status of the data item under said folder in the third table, said second sync command comprising the content of the data item and indicating said folder as the parent folder of the data item; andwhen synchronizing a data item in said hierarchical tree structure, determining, by the first device, the content of said data item according to the first table, and sending to the second device a sync command with an operation type indicated by the status of said data item in the third table which comprises the content of the data item.
-
-
3. A method of synchronizing a plurality of devices, comprising:
-
during a sync initialization phase in a synchronization session, obtaining, by a first device, an address of an informational node to be synchronized among a plurality of informational nodes arranged in a hierarchical tree structure in a second device, said address comprising a hierarchical location which is used for locating said informational node amongst the hierarchical tree structure, and said informational node being a data item or a folder in a database; wherein said address comprises a filter condition; during said sync initialization phase, sending, by the first device, a sync command to the second device for designating the informational node to be synchronized, the sync command comprising the address of the informational node; utilizing, by the first device, the address during a sync phase in said synchronization session to synchronize the informational node designated; the method further comprising; configuring three tables in both said first device and said second device, said three tables are used by the first device and the second device to synchronize said informational node during the sync phase, said three tables comprising; a first table, used for storing information of all the data items in said hierarchical tree structure, said information of each data item comprising a correspondence relationship between a unique identifier (UID) of the data item and contents thereof; a second table, used for storing information of all the folders in said hierarchical tree structure, said information of each folder comprising the number of the folder, the name of the folder, the parent folder to which the folder belongs, the status of the folder and the correspondence relationship thereof, in which the status of the folder comprises;
Existing, Adding, Updating, Deleting, Moving or Copying; anda third table, used for storing affiliation of all the data items in said hierarchical tree structure, said affiliation of each data item comprising the UID of the data item, the parent folder to which the data item belongs, the status of the data item, and correspondence relationship thereof; and during the sync phase, further comprising; when synchronizing a folder in said hierarchical tree structure, sending to the second device a sync command with an operation type indicated by the status of said folder in the second table; and
if determined that there is a data item under said folder according to the third table, further determining, by the first device, the content of the data item under said folder according to the first table, and sending to the second device a second sync command with an operation type indicated by the status of the data item under said folder in the third table, said second sync command comprising the content of the data item and indicating said folder as the parent folder of the data item; andwhen synchronizing a data item in said hierarchical tree structure, determining, by the first device, the content of said data item according to the first table, and sending to the second device a sync command with an operation type indicated by the status of said data item in the third table which comprises the content of the data item. - View Dependent Claims (9)
-
-
4. An apparatus for synchronizing comprising a processor and memory, and further comprising:
-
a first module, adapted to during a sync initialization phase in a synchronization session, receive from a second device a description of a hierarchical tree structure in said second device; and
determine an address of an informational node to be synchronized among a plurality of informational nodes arranged in said hierarchical tree structure based on said description;
said description being used for describing hierarchical locations of all the informational nodes amongst the hierarchical tree structure, said address comprising a hierarchical location which is used for locating said informational node amongst the hierarchical tree structure, and said informational node being a data item or a folder in a database;a second module, adapted to, during said sync initialization phase, send a sync command to the second device for designating the informational node to be synchronized, and utilize the address obtained from the first module to synchronize the informational node during a sync phase in said synchronization session, the sync command comprising the address of the informational node and the informational node being a data item or a folder in a database; wherein three tables are configured to synchronize said informational node during the sync phase, said three tables comprising; a first table, used for storing information of all the data items in said hierarchical tree structure, said information of each data item comprising a correspondence relationship between a unique identifier (UID) of the data item and contents thereof; a second table, used for storing information of all the folders in said hierarchical tree structure, said information of each folder comprising the number of the folder, the name of the folder, the parent folder to which the folder belongs, the status of the folder and the correspondence relationship thereof, in which the status of the folder comprises;
Existing, Adding, Updating, Deleting, Moving or Copying; anda third table, used for storing affiliation of all the data items in said hierarchical tree structure, said affiliation of each data item comprising the UID of the data item, the parent folder to which the data item belongs, the status of the data item, and correspondence relationship thereof; and during the sync phase, the second module is further adapted to; when synchronizing a folder in said hierarchical tree structure, send to the second device a sync command with an operation type indicated by the status of said folder in the second table; and if determined that there is a data item under said folder according to the third table, determine the content of the data item under said folder according to the first table, and send to the second device a second sync command with an operation type indicated by the status of the data item under said folder in the third table, said second sync command comprising the content of the data item and indicating said folder as the parent folder of the data item; and when synchronizing a data item in said hierarchical tree structure, determine the content of said data item according to the first table, and send to the second device a sync command with an operation type indicated by the status of said data item in the third table which comprises the content of the data item.
-
Specification