Patent ID: 7610291
Filing Date: 2009-10-27
Classification: G06F,Y10S

Abstract:
1. A method, comprising: maintaining a plurality of client nodes coupled to a server node, wherein the plurality of client nodes includes at least a first client node and a second client node; determining that a current object corresponding to the first client node has to be stored; determining, by the first client node, whether a base object corresponding to a current object exists on both the first client node and the server node; generating, by the first client node, a delta object by calculating a difference between the current object and the base object, in response to determining that the base object corresponding to the current object exists on both the first client node and the server node; sending, by the first client node, the generated delta object to the server, in response to determining by the server node that the generated delta object does not exist on the server node, wherein objects and representations of objects stored in the server node form a plurality of groups, wherein group relationships between the objects stored on the server are preserved while reducing redundancy among the objects stored on the server; referencing, by the server node, a previously stored delta object sent by the second client node, in response to determining by the server node that the generated delta object exists on the server node, wherein the previously stored delta object is included a group; determining a need for restoring to the first client node the group stored in the server node, wherein the group has been updated at a selected time at the server node, wherein the group includes selected objects sent to the server node by at least the first client node and the second client node, wherein any object that is already present in the server node is not sent once again to the server node by any client node of the plurality of client nodes; and restoring, by the server node to the first client node, the selected objects included in the group stored in the server node, by using at least the referenced previously stored delta object.