CPC G06F 16/183 (2019.01) [G06F 16/119 (2019.01); G06F 16/1734 (2019.01); G06F 16/188 (2019.01); H04L 67/10 (2013.01)] | 18 Claims |
1. A method for implementing context-based intelligent placement of files in aggregated cloud storage, the method comprising:
obtaining, on a user computing device, a cloud storage provider property table that defines a plurality of properties for each of a plurality of cloud storage providers, the plurality of properties including available space on the respective cloud storage provider, a network speed for the respective cloud storage provider, and a cost for storing files on the respective cloud storage provider;
obtaining on the user computing device, a weights table that defines a number of modes and, for each mode, a set of weights for each of the plurality of properties defined in the cloud storage provider property table;
creating, on the user computing device, a virtual volume to function as an aggregated interface for aggregated cloud storage, the aggregated cloud storage including cloud storage provided by each of the plurality of cloud storage providers;
receiving an I/O request, which is generated by a first application executing on the user computing device, for creating a file on the virtual volume that was created on the user computing device;
in response to receiving the I/O request, using a placement algorithm to calculate a score for each of the plurality of cloud storage providers, wherein the placement algorithm calculates the score for each of the plurality of cloud storage providers using the plurality of properties and the set of weights corresponding to a selected mode;
selecting the cloud storage of one of the plurality of cloud storage providers in which the file is to be created based on the score calculated for each of the plurality of cloud storage providers; and
interfacing, by the virtual volume, with one or more aggregator components to cause the file to be created in the cloud storage of the selected cloud storage provider such that the I/O request to create the file on the virtual volume results in the file being created in the cloud storage of the selected cloud storage provider.
|