Data synchronization via three or more paths
First Claim
1. A method for synchronizing data records between three or more processing devices through three or more paths, the method comprising:
- synchronizing, from a first device with a first synchronization client, a first data record to a second device with a second synchronization client through a first path using a first communication protocol, wherein the first data record is assigned a data record identifier by the first device, wherein the first device assigns a stable common data record identifier based on the first protocol which allows stable common data record identifiers across clients, and wherein the data record identifier assigned to the first data record is also assigned as a first universal identity identifying the first data record;
synchronizing, from the first device, a second data record to a third device with a third synchronization client through a second path using a second communication protocol, wherein the second data record is assigned a second universal identity by the first device, wherein the first device does not assign a stable common data record identifier based on the second protocol which does not allow stable common data record identifiers across clients, wherein the second universal identity comprises a mapping of the second universal identity to the second data record, wherein the first device and the third device each store a mapping of the second universal identity to the second data record, and wherein the mapping is stored in the second data record; and
synchronizing from the second device to the third device through a third path using a third communication protocol, wherein synchronizing comprises using the first universal identity and the mapping of the second universal identity to the second data record stored by the third device in the second data record to determine if the first data record and the second data record are the same data record based on comparing the first universal identity with the second universal identity and wherein at least one of the second communication protocol or the third communication protocol is different from the first communication protocol.
1 Assignment
0 Petitions
Accused Products
Abstract
A server is used to send data records to clients. A client #1 may synchronize with the server using a first path and a first protocol. The client #2 may synchronize with the server using a second path and a second protocol. In addition to synchronizing with the server, client #1 and client #2 may synchronize data records with each other using a third path and a third protocol. When synchronizing through different paths and/or protocols, data record identifiers may be generated differently. Thus, devices may not be able to synchronize data records if the data records are identified differently by client #1, client #2, and/or the server. A universal identity is used to allow for synchronization through three paths and protocols. Thus, client #1 and client #2 may synchronize data records through the third path and third protocol using the universal identity for data records.
12 Citations
25 Claims
-
1. A method for synchronizing data records between three or more processing devices through three or more paths, the method comprising:
-
synchronizing, from a first device with a first synchronization client, a first data record to a second device with a second synchronization client through a first path using a first communication protocol, wherein the first data record is assigned a data record identifier by the first device, wherein the first device assigns a stable common data record identifier based on the first protocol which allows stable common data record identifiers across clients, and wherein the data record identifier assigned to the first data record is also assigned as a first universal identity identifying the first data record; synchronizing, from the first device, a second data record to a third device with a third synchronization client through a second path using a second communication protocol, wherein the second data record is assigned a second universal identity by the first device, wherein the first device does not assign a stable common data record identifier based on the second protocol which does not allow stable common data record identifiers across clients, wherein the second universal identity comprises a mapping of the second universal identity to the second data record, wherein the first device and the third device each store a mapping of the second universal identity to the second data record, and wherein the mapping is stored in the second data record; and synchronizing from the second device to the third device through a third path using a third communication protocol, wherein synchronizing comprises using the first universal identity and the mapping of the second universal identity to the second data record stored by the third device in the second data record to determine if the first data record and the second data record are the same data record based on comparing the first universal identity with the second universal identity and wherein at least one of the second communication protocol or the third communication protocol is different from the first communication protocol. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for synchronizing data between three or more processing devices through three or more paths, the system comprising:
-
a first device executing a first synchronization client and configured to assign a data record identifier to a first data record; a second device executing a second synchronization client configured to synchronize the first data record with the first device through a first path and first communication protocol, wherein the first device assigns a stable common data record identifier based on the first protocol which allows stable common data record identifiers across clients, and wherein the data record identifier assigned to the first data record is also assigned as a first universal identity identifying the first data record; and a third device executing a third synchronization client configured to synchronize a second data record with the first device through a second path and second communication protocol, the second data record associated with a second universal identity, wherein the first device does not assign a stable common data record identifier based on the second protocol which does not allow stable common data record identifiers across clients, wherein the second universal identity comprises a mapping of the second universal identity to the second data record, the first device and the third device each configured to store in the second data record a mapping of the second data record to the second universal identity, wherein the second device and the third device are configured to synchronize stored data records through a third path and a third communication protocol, wherein the first universal identity and the mapping of the second universal identity to the second data record stored by the third device in the second data record are used to determine during the synchronization between the second device and the third device if the first data record is the same data record as the second data record and wherein at least one of the second communication protocol or the third communication protocol is different from the first communication protocol. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
Specification