1. A method of allocating data in a storage system, the method comprising: performing with a media agent, a storage operation that transfers data from at least a first storage device to at least a second storage device, the media agent communicates with the first storage device via at least a first communications path and the media agent communicates with the second storage device via at least a second communications path; upon determining that the data associated with the storage operation exceeds a threshold, dynamically associating with the media agent at least a third communication path to a third storage device; subdividing the data associated with the storage operation into smaller data units based on the transmission capacity of at least the second and third communication paths to perform load balancing; creating metadata identifying that a first portion of the smaller data units are stored on the second storage device and that a second portion of the smaller data units are stored on the third storage device, wherein the metadata defines how to reconstruct the first and second portions of the smaller data units during retrieval of the data; performing the storage operation by transmitting with the media agent, based on the metadata the first portion of the smaller data units from the first storage device to the second storage device via the second communications path; transmitting with the media agent based on the metadata, the second portion of the smaller data units from the first storage device to the third storage device via the third communications path; and retrieving with the media agent, the first and second portions of the smaller data units from the second and third storage devices and reconstructing the first and second portions of the smaller data units based on the metadata.