Reducing data transmitted during backup
First Claim
1. A method for reducing an amount of data transmitted during a backup process, the method comprising:
- receiving input data to insert into a rating hash table during the backup process;
selecting, based on a hash function, a bucket of the rating hash table in which the input data will be inserted, the bucket including a plurality of blocks;
in response to determining that the input data has already been inserted in one of the plurality of blocks;
increasing a rating corresponding to the one of the plurality of blocks by a popularity rating increment;
in response to determining that the input data has not already been inserted in one of the plurality of blocks;
determining a first block with a smallest rating from the plurality of blocks;
inserting the input data in the first block with the smallest rating;
in response to determining that the input data has already been inserted in one of the plurality of blocks;
decreasing a rating corresponding to the other blocks of the plurality of blocks by an aging rating increment; and
determining data that does not need to be transmitted from a client to a server using the backup process based on hash values having higher assigned ratings from popularity increment increases, wherein hash values from the client are rated and data associated with such hash values is selectively backed up to the server.
5 Assignments
0 Petitions
Accused Products
Abstract
A method for reducing an amount of data transmitted during a backup process is described. The method may include receiving input data to insert into a rating hash table during the backup process. The method may further include selecting, based on a hash function, a bucket of the rating hash table in which the input data will be inserted, the bucket including a plurality of blocks. The method may also include, in response to determining that the input data has already been inserted in one of the plurality of blocks, increasing a rating corresponding to the one of the plurality of blocks by a popularity rating increment. The method may additionally include, in response to determining that the input data has not already been inserted in one of the plurality of blocks, determining a first block with a smallest rating from the plurality of blocks.
-
Citations
18 Claims
-
1. A method for reducing an amount of data transmitted during a backup process, the method comprising:
-
receiving input data to insert into a rating hash table during the backup process; selecting, based on a hash function, a bucket of the rating hash table in which the input data will be inserted, the bucket including a plurality of blocks; in response to determining that the input data has already been inserted in one of the plurality of blocks; increasing a rating corresponding to the one of the plurality of blocks by a popularity rating increment; in response to determining that the input data has not already been inserted in one of the plurality of blocks; determining a first block with a smallest rating from the plurality of blocks; inserting the input data in the first block with the smallest rating; in response to determining that the input data has already been inserted in one of the plurality of blocks; decreasing a rating corresponding to the other blocks of the plurality of blocks by an aging rating increment; and determining data that does not need to be transmitted from a client to a server using the backup process based on hash values having higher assigned ratings from popularity increment increases, wherein hash values from the client are rated and data associated with such hash values is selectively backed up to the server. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product residing on a computer readable storage medium having a plurality of instructions stored thereon, which, when executed by a processor, causes the processor to perform operations for reducing an amount of data transmitted during a backup process, the operations comprising:
-
receiving input data to insert into a rating hash table during the backup process; selecting, based on a hash function, a bucket of the rating hash table in which the input data will be inserted, the bucket including a plurality of blocks; in response to determining that the input data has already been inserted in one of the plurality of blocks; increasing a rating corresponding to the one of the plurality of blocks by a popularity rating increment; in response to determining that the input data has not already been inserted in one of the plurality of blocks; determining a first block with a smallest rating from the plurality of blocks; inserting the input data in the first block; in response to determining that the input data has already been inserted in one of the plurality of blocks; decreasing a rating corresponding to the other blocks of the plurality of blocks by an aging rating increment; and determining data that does not need to be transmitted from a client to a server using the backup process based on hash values having higher assigned ratings from popularity increment increases, wherein hash values from the client are rated and data associated with such hash values is selectively backed up to the server. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computing system for reducing an amount of data transmitted during a backup process, the computing system comprising one or more processors, wherein the one or more processors are configured to:
-
receive input data to insert into a rating hash table during the backup process; select, based on a hash function, a bucket of the rating hash table in which the input data will be inserted, the bucket including a plurality of blocks; in response to determining that the input data has already been inserted in one of the plurality of blocks; increase a rating corresponding to the one of the plurality of blocks by a popularity rating increment; in response to determining that the input data has not already been inserted in one of the plurality of blocks; determine a first block with a smallest rating from the plurality of blocks; insert the input data in the first block; in response to determining that the input data has already been inserted in one of the plurality of blocks; decrease a rating corresponding to the other blocks of the plurality of blocks by an aging rating increment; and determine data that does not need to be transmitted from a client to a server using the backup process based on hash values having higher assigned ratings from popularity increment increases, wherein hash values from the client are rated and data associated with such hash values is selectively backed up to the server. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A system for reducing an amount of data transmitted during a backup process, the system comprising:
-
a rating hash table residing in a cloud computing client; a plurality of buckets residing in the rating hash table, each bucket including a plurality of blocks, wherein each block includes data and a rating corresponding to the data; and a processor configured to run an insertion operation on the rating hash table, the processor configured to increase rating of a first set of hash values of data at a client based on popularity rating of such first set of hash values, and the processor configured to decrease rating of a second set of hash values of data at the client based on aging rating of such second set of hash values, wherein the data in each block is rated based on how often the data is sent or requested at the client and a reduced amount of data is transmitted to a backup server during a compare operation of the backup process based on the rating hash table, wherein the processor is further configured to determine a first block with a smallest rating from the plurality of blocks of a bucket; and
insert the input data in a first block with the smallest rating, wherein hash values from the client are rated to generate first and second hash values, wherein the data associated with such first set of hash values is selectively backed up to the backup server.
-
Specification