Utilizing user devices for backing up and retrieving data in a distributed backup system
First Claim
1. A computer-implemented method comprising:
- receiving, at a server in a computing system where multiple data files of a user are backed up based on multiple data backup policies to the server or across multiple computing devices associated with the user, a request from a first computing device of the computing devices to access a data file of the data files stored at the server, each of the computing devices associated with one or more of the data backup policies for storing the data files;
determining, by the server, whether a second computing device of the computing devices contains the data file;
responsive to a determination that the second computing device contains the data file, determining, by the server, whether the second computing device is in proximity to the first computing device; and
responsive to a determination that the second computing device is in proximity to the first computing device, causing, by the server, the first computing device to access the data file from the second computing device, the second computing device being an edge cache of the computing system for the data file.
4 Assignments
0 Petitions
Accused Products
Abstract
Technology is disclosed for backing up and retrieving data in a distributed backup system (“the technology”). Files of a user can be stored across multiple computing devices (“the devices”) of the user, e.g., mobile devices, and/or at a server, e.g., a cloud storage server, in the distributed backup system. The user can define various policies for storing different files at different devices. For example, the user may define a policy for storing video files on a device that has a bigger display. The devices can be used as an edge cache of the distributed backup system in serving files to the user. Upon receiving a request for retrieving a file, the technology determines if any of the user devices that are in proximity to the requesting device has the file. If yes, the file is transmitted to the user from the proximate device instead of from the server.
-
Citations
20 Claims
-
1. A computer-implemented method comprising:
- receiving, at a server in a computing system where multiple data files of a user are backed up based on multiple data backup policies to the server or across multiple computing devices associated with the user, a request from a first computing device of the computing devices to access a data file of the data files stored at the server, each of the computing devices associated with one or more of the data backup policies for storing the data files;
determining, by the server, whether a second computing device of the computing devices contains the data file;
responsive to a determination that the second computing device contains the data file, determining, by the server, whether the second computing device is in proximity to the first computing device; and
responsive to a determination that the second computing device is in proximity to the first computing device, causing, by the server, the first computing device to access the data file from the second computing device, the second computing device being an edge cache of the computing system for the data file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
- receiving, at a server in a computing system where multiple data files of a user are backed up based on multiple data backup policies to the server or across multiple computing devices associated with the user, a request from a first computing device of the computing devices to access a data file of the data files stored at the server, each of the computing devices associated with one or more of the data backup policies for storing the data files;
-
12. A computer-implemented method of using one of multiple computing devices of a user as an edge cache of a distributed backup system for retrieving a data file of the user, the method comprising:
- receiving, at a data backup application in a first computing device of the computing devices, a request to retrieve the data file stored in the distributed back up system, the distributed back up system backing up multiple data files of the user across the computing devices;
determining, by the data backup application, whether a second computing device of the computing devices contains the data file;
responsive to a determination that the second computing device contains the data file, determining, by the data backup application, whether the second computing device is in proximity to the first computing device; and
responsive to a determination that the second computing device is in proximity, retrieving, by the first computing device, the data file from the second computing device, the second computing device being the edge cache of the distributed backup system for the data file. - View Dependent Claims (13, 14, 15)
- receiving, at a data backup application in a first computing device of the computing devices, a request to retrieve the data file stored in the distributed back up system, the distributed back up system backing up multiple data files of the user across the computing devices;
-
16. A computing device comprising:
- a processor;
a network component that works in cooperation with the processor to request a server in a computing system having a set of computing devices associated with the user to obtain a data file of multiple data files of a user, wherein the data files are stored in the server or across the set of computing devices based on multiple data backup policies, each of the set of computing devices associated with one or more of the data backup policies for storing the data files;
a device identification module to identify a first computing device of the set of computing devices containing the data file;
a device proximity determination module to determine whether the first computing device is in proximity to the computing device; and
an access redirection module to redirect the request from the server to the first computing device to obtain the data file from the first computing device, the first computing device being an edge cache of the computing system for the data file. - View Dependent Claims (17, 18, 19, 20)
- a processor;
Specification