Patent ID: 8112543

Claim:
A method for performing a dynamic multi-stream storage operation to transmit data from a sub-client within a data store to one or more storage devices, the method comprising: subdividing at least one client storage volume into a plurality of sub-clients, wherein each sub-client comprises one or more folders; receiving a request to transmit data from a first sub-client of the plurality of sub-clients to one or more storage devices; determining whether two or more streaming communication paths are available to transmit the data based on pathway characteristics of the two or more streaming communication paths, wherein the pathway characteristics comprise bandwidth of network pathways, existing network load, and predicted network load; identifying folders in the first sub-client based on a file type in the folders in the first sub-client; weighting the folders in the first sub-client based on the amount of data in the folders of the first sub-client; subdividing the folders in the first sub-client into two or more subsets based at least in part on the file type and the weighting; transmitting the data from each of the two or more subsets of the first sub-client to the one or more storage devices via at least one of the two or more streaming communications paths based at least in part on the pathway characteristics and on the weighting; and storing the transmitted data from each of the two or more subsets of the first sub-client in the one or more storage devices, wherein the determining whether the two or more streaming communication paths are available further includes determining whether a transmission time threshold is exceeded by transmitting data over one streaming communication path.