Opportunistic, priority-based object synchronization
First Claim
1. A method of synchronizing objects of an object set with a remote data store, the method involving a device having a processor and comprising:
- executing, by the processor, instructions that cause the device to;
identify respective objects of the object set as a high-priority object or a regular-priority object;
perform a high-priority synchronization by synchronizing the high-priority objects of the object set with the remote data store at a high-priority synchronization interval and limiting the synchronization of the high-priority objects to a high-priority data threshold; and
synchronize the regular-priority objects and the high-priority objects that were not synchronized during the high-priority synchronization with the remote data store at a regular-priority synchronization interval that is longer than the high-priority synchronization interval.
2 Assignments
0 Petitions
Accused Products
Abstract
Mechanisms for synchronizing an object set with a remote data store are often performed at a particular frequency, e.g., once per hour or day. However, the objects of the object set may have different priorities, and it may be advantageous to synchronize higher-priority objects more often than regular-priority objects. The synchronization mechanisms may also differ (e.g., high-priority object synchronization may be direct and/or holistic, while regular-priority object synchronization may be differential, cached, and/or involving version and/or conflict resolution). Additionally, a resource-based threshold may be applied to the high-priority objects (e.g., a bandwidth cap) in order to reduce resource exhaustion, and high-priority objects that are not synchronized within the threshold may be synchronized with the regular-priority objects. These techniques may be particularly advantageous for synchronizing objects comprising an application state of applications of current or recent usage by a user, where application state “staleness” is acutely visible to the user.
-
Citations
20 Claims
-
1. A method of synchronizing objects of an object set with a remote data store, the method involving a device having a processor and comprising:
executing, by the processor, instructions that cause the device to; identify respective objects of the object set as a high-priority object or a regular-priority object; perform a high-priority synchronization by synchronizing the high-priority objects of the object set with the remote data store at a high-priority synchronization interval and limiting the synchronization of the high-priority objects to a high-priority data threshold; and synchronize the regular-priority objects and the high-priority objects that were not synchronized during the high-priority synchronization with the remote data store at a regular-priority synchronization interval that is longer than the high-priority synchronization interval. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A system for synchronizing objects of an object set with a remote data store on a device having a processor, the system comprising:
-
a object priority identifier that identifies respective objects of the object set as a high-priority object or a regular-priority object; and an object set synchronizer that; performs a high-priority synchronization by synchronizing the high-priority objects of the object set with the remote data store at a high-priority synchronization interval and limiting the synchronization of the high-priority objects to a high-priority data threshold; and synchronizes the regular-priority objects and the high-priority objects that were not synchronized during the high-priority synchronization, with the remote data store at a regular-priority synchronization interval that is longer than the high-priority synchronization interval. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method of synchronizing objects of an object set stored by a server with a device data store of a device, the method comprising:
-
identifying respective objects of the object set as a high-priority object or a regular-priority object; performing a high-priority synchronization by synchronizing the high-priority objects of the object set with the device data source of the device at a high-priority synchronization interval and limiting the high-priority synchronization to a high priority data threshold; and synchronizing the regular-priority objects of the object set and the high-priority objects of the object set that were not synchronized within the high-priority synchronization, with the remote data store at a regular-priority synchronization interval that is longer than the high-priority synchronization interval. - View Dependent Claims (18, 19, 20)
-
Specification