Method and system for synchronizing data shared among peer computing devices
First Claim
1. A computer-implemented method of synchronizing data in a peer to peer computer system having a processor, memory, and a data storage subsystem, the computer-implemented method comprising:
- providing a plurality of computing devices in the peer to peer computer system, the computing devices comprising a peer computing device and a counterpart peer computing device;
designating one of the computing devices as a change notification clearing house;
configuring a synchronization between the peer computing device comprising a peer data object and the counterpart peer computing device comprising a counterpart peer data object;
monitoring the peer data object by a synchronization service of the peer computing device for changes;
detecting a change in the peer data object of the peer computing device by the synchronization service of the peer computing device;
transmitting a change notification of the change in the peer data object from the synchronization service of the peer computing device to the change notification clearing house, wherein the transmitting step occurs via an input/output manager, a plurality of file system drivers, and a plurality of communications channels;
checking a status of the transmitted change notification;
listening for changes to the counterpart peer data object;
receiving a change notification via the change notification clearing house of a change to the counterpart peer data object from a synchronization service of the counterpart peer computing device;
applying the change of the counterpart peer data object to the peer data object on the peer computing device; and
sending a status of the applied change from the peer computing device to the counterpart peer computing device via the change notification clearing house.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a data synchronization service for use in a peer-to-peer computing environment. Selected data objects are copied onto selected computing devices. A service running on each device monitors data objects for changes. When a change is detected, the service sends a change notification to the other devices so that they can update their copies of the data object. A user can access a data object from any device, knowing that he will retrieve the latest version of the data object. Instead of incurring the costs of storing a large file on every device, a user “ghosts” the file on some devices. A ghosting device stores only metadata about the file rather than the entire file. The user accesses the file through the ghost: access requests are sent to a device that holds the actual contents, and those contents are presented to the user as if they were stored locally.
-
Citations
25 Claims
-
1. A computer-implemented method of synchronizing data in a peer to peer computer system having a processor, memory, and a data storage subsystem, the computer-implemented method comprising:
-
providing a plurality of computing devices in the peer to peer computer system, the computing devices comprising a peer computing device and a counterpart peer computing device; designating one of the computing devices as a change notification clearing house; configuring a synchronization between the peer computing device comprising a peer data object and the counterpart peer computing device comprising a counterpart peer data object; monitoring the peer data object by a synchronization service of the peer computing device for changes; detecting a change in the peer data object of the peer computing device by the synchronization service of the peer computing device; transmitting a change notification of the change in the peer data object from the synchronization service of the peer computing device to the change notification clearing house, wherein the transmitting step occurs via an input/output manager, a plurality of file system drivers, and a plurality of communications channels; checking a status of the transmitted change notification; listening for changes to the counterpart peer data object; receiving a change notification via the change notification clearing house of a change to the counterpart peer data object from a synchronization service of the counterpart peer computing device; applying the change of the counterpart peer data object to the peer data object on the peer computing device; and sending a status of the applied change from the peer computing device to the counterpart peer computing device via the change notification clearing house. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer-implemented method of synchronizing data in a peer to peer computer system having a processor, memory, and a data storage subsystem, the computer-implemented method comprising:
-
providing a plurality of computing devices in the peer to peer computer system, the computing devices comprising a peer computing device and a counterpart peer computing device; designating one of the computing devices as a change notification clearing house; initiating data synchronization of a folder located within a peer data object of the peer computing device with the counterpart peer computing device comprising a counterpart peer data object, wherein the peer computing device and the counterpart peer computing device comprise a synchronization set; initializing a data synchronization service on the peer computing device; determining, via an application program interface of the peer computing device, if the folder is already being synchronized; managing the data synchronization of the folder by the application program interface of the peer computing device, via an object of the synchronization set; initializing a data synchronization service on the counterpart peer computing device; determining, via an application program interface of the counterpart peer computing device, if a counterpart to the folder is already being synchronized on the counterpart peer computing device; sending configuration information via the change notification clearing house to the counterpart peer computing device, wherein the counterpart peer computing device hosts synchronized copies of the folder; and synchronizing changes of the folder on the peer computing device with the counterpart folder located on the counterpart peer computing device, wherein the synchronizing changes comprises a combination of full copy synchronization and ghost copy synchronization. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A system for synchronizing data in peer to peer computing systems having processors, memories and data storage subsystems, at least one of said peer to peer computing systems comprising:
-
a file system comprising a plurality of data objects and a data synchronization service; a data synchronizer operable to detect changes in the plurality of data objects; an input/output manager to configure a plurality of communications channels, operable to transmit change notifications to a corresponding counterpart peer computing system, the change notifications received from file system drivers coupled to the data synchronizer; and a plurality of local storage drivers operable to apply changes to the plurality of data objects, resulting from changes made to corresponding data objects in the corresponding counterpart peer computing system, wherein the change notifications are transmitted over the communications channels configured by the input/output manager. - View Dependent Claims (25)
-
Specification