System and method for performing multistream storage operations
First Claim
1. 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, whereinthe 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.
4 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for performing storage operations over multi-stream data paths are provided. Prior to performing a storage operation, it may be determined whether multi-streaming resources are available to perform a multi-stream storage operation. Availability of multi-streaming resources may be related to network pathways capable of supporting multi-stream storage operations, existing network load related to other storage operations being or to be performed, availability of components capable of supporting multi-stream storage operation, and other factors. If system resources to support multi-stream storage operations are not available, the system may optionally perform a traditional storage operation that does not incorporate multiple data streams.
145 Citations
20 Claims
-
1. 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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for performing a multi-stream storage operation in a data storage system, 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 a first streaming communication path is available to transmit the data based on a first pathway characteristic; determining whether a second streaming communication path is available to transmit the data based on a second pathway characteristic; 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 in the first sub-client; dynamically dividing the folders in the first sub-client into two or more subsets based at least in part on the file type, the weighting, and an impact of scheduled data transmissions; associating a first subset of the two or more subsets to the first streaming communication path based at least in part on the characteristics of the streaming communication paths and on the weighting associated with the folders; associating a second subset of the two or more subsets to the second streaming communication path based at least in part on the characteristics of the streaming communication paths and on the weighting associated with the folders; and transmitting data from each of the two or more subsets of the first sub-client to one or more storage devices via at least one of the two or more streaming communications paths based at least in part on the characteristics of the streaming communication paths and on the weighting, wherein the determining whether the second streaming communication path is available further includes determining whether a transmission time threshold is exceeded by transmitting data over the first streaming communication path. - View Dependent Claims (13, 14, 15)
-
-
16. A multi-stream storage operation device comprising:
-
a non-transitory computer readable medium storing a data agent executing in one or more processors on a client computer, the executing comprising; receiving a request for a storage operation from a storage manager; subdividing at least one client storage volume into a plurality of sub-clients, wherein each sub-client comprises one or more folders; identifying folders of a first sub-client of the plurality of sub-clients based on one or more file types in the folders of the first sub-client; weighting the folders of the first sub-client based on the amount of data in the folders of the first sub-client; subdividing the folders of the first sub-client into two or more subsets based at least in part on one of the file types in the folders and the weighting of the folders; and transmitting 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 on the pathway characteristics, wherein the pathway characteristics include a determination whether a transmission time threshold is exceeded by transmitting data over at least one of the two or more streaming communication paths. - View Dependent Claims (17, 18, 19, 20)
-
Specification