Patent ID: 7574418

Claim:
A computer implemented method for storing data comprising: receiving a composite data stream from a server; storing the received composite data stream that is to be restored to the server subsequently, said storing including, decomposing the composite data stream into a plurality of constituent data streams, the plurality of constituent data streams including at least a first constituent data stream of user data and a second constituent data stream of administrative data, wherein the composite data stream is further sectioned into one or more sections, each section including data from both the first and second constituent data streams, and wherein said decomposing includes, storing a composite data stream map that indicates how to recompose the plurality of constituent data streams into the composite data stream, wherein the composite data stream map includes a map header and one or more map blocks, each map block corresponding to a section, wherein the map header includes a composite data stream identifier identifying the associated composite data stream, a total number of constituent data streams associated with the composite data stream, and a constituent data stream identifier identifying each of the constituent data streams, and wherein each map block includes information identifying a location of each of the identified constituent data streams; segmenting at least one of the plurality of constituent data streams decomposed from the composite data stream; determining which segments resulting from the segmenting match segments already stored; in lieu of storing those of the segments resulting from the segmenting which are determined to match already stored segments, storing pointers to those already stored segments; and storing those of the segments resulting from the segmenting determined not to match already stored segments.