Application level support for selectively accessing files in cloud-based storage
First Claim
1. A method for data backup, comprising:
- receiving, at a datacenter, an incremental backup from a client, wherein any new and modified blocks of the incremental backup are received at the datacenter from the client in an encrypted form;
storing the incremental backup at the datacenter;
creating a table of contents relating to the incremental backup;
identifying differences between the incremental backup and a dataset previously stored at the datacenter;
identifying and recording offsets imposed by any new or modified blocks present in the incremental backup;
using the offsets to identify respective data ranges in the incremental backup for any new and modified blocks, and recording the data ranges, wherein, for one of the new or modified blocks of the incremental backup, one of the offsets identifies a difference between an incremental backup data range that is associated with that block and a previously stored dataset data range that is associated with that block;
creating a reference block for each block of the previously stored dataset that was not modified in the incremental backup; and
storing the reference blocks at the datacenter in association with the incremental backup.
9 Assignments
0 Petitions
Accused Products
Abstract
In one example, a method is provided for backing up client data at a datacenter. Initially, an incremental backup is received from a client and stored at the datacenter. Next, a table of contents for the incremental backup is created, and differences identified between the incremental backup and a dataset previously stored at the datacenter. The offsets imposed by any new or modified blocks present in the incremental backup can then be identified and recorded, and used to identify respective data ranges in the incremental backup for any new and modified blocks, which data ranges can then be recorded. Next, a reference block can be created for each block of the previously stored dataset that was not modified in the incremental backup. The reference block can then be stored at the datacenter in association with the incremental backup.
39 Citations
20 Claims
-
1. A method for data backup, comprising:
-
receiving, at a datacenter, an incremental backup from a client, wherein any new and modified blocks of the incremental backup are received at the datacenter from the client in an encrypted form; storing the incremental backup at the datacenter; creating a table of contents relating to the incremental backup; identifying differences between the incremental backup and a dataset previously stored at the datacenter; identifying and recording offsets imposed by any new or modified blocks present in the incremental backup; using the offsets to identify respective data ranges in the incremental backup for any new and modified blocks, and recording the data ranges, wherein, for one of the new or modified blocks of the incremental backup, one of the offsets identifies a difference between an incremental backup data range that is associated with that block and a previously stored dataset data range that is associated with that block; creating a reference block for each block of the previously stored dataset that was not modified in the incremental backup; and storing the reference blocks at the datacenter in association with the incremental backup. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory storage medium having stored therein computer-executable instructions which, when executed by one or more hardware processors, creates a data backup by performing the following:
-
receiving, at a datacenter, an incremental backup from a client, wherein any new and modified blocks of the incremental backup are received at the datacenter from the client in an encrypted form; storing the incremental backup at the datacenter; creating a table of contents relating to the incremental backup; identifying differences between the incremental backup and a dataset previously stored at the datacenter; identifying and recording offsets imposed by any new or modified blocks present in the incremental backup; using the offsets to identify respective data ranges in the incremental backup for any new and modified blocks, and recording the data ranges, wherein, for one of the new or modified blocks of the incremental backup, one of the offsets identifies a difference between an incremental backup data range that is associated with that block and a previously stored dataset data range that is associated with that block; creating a reference block for each block of the previously stored dataset that was not modified in the incremental backup; and storing the reference blocks at the datacenter in association with the incremental backup. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A physical device, wherein the physical device comprises:
-
one or more hardware processors; and a non-transitory storage medium having stored therein computer-executable instructions which, when executed by one or more hardware processors, creates a data backup by performing the following; receiving, at a datacenter, an incremental backup from a client, wherein any new and modified blocks of the incremental backup are received at the datacenter from the client in an encrypted form; storing the incremental backup at the datacenter; creating a table of contents relating to the incremental backup; identifying differences between the incremental backup and a dataset previously stored at the datacenter; identifying and recording offsets imposed by any new or modified blocks present in the incremental backup; using the offsets to identify respective data ranges in the incremental backup for any new and modified blocks, and recording the data ranges, wherein, for one of the new or modified blocks of the incremental backup, one of the offsets identifies a difference between an incremental backup data range that is associated with that block and a previously stored dataset data range that is associated with that block; creating a reference block for each block of the previously stored dataset that was not modified in the incremental backup; and storing the reference blocks at the datacenter in association with the incremental backup. - View Dependent Claims (20)
-
Specification