Data suppression for faster migration
First Claim
1. A system associated with a first data center providing cloud based services, the system comprising:
- at least one processor;
an interface;
a local storage device;
a first hash database including a plurality of hash-data pair entries; and
memory including instructions that, which when executed by the at least one processor, cause the system to;
select, at a first time, a first data chunk from a virtual machine image, the virtual machine image being divided into a plurality of data chunks;
compute a hash identifier (ID) value for the first data chunk, the hash ID value being a key generated using a hash function;
determine whether the hash ID value matches a part of one of the plurality of hash-data pair entries in the first hash database; and
send, using the interface, the hash ID value without the first data chunk to a second data center if the hash ID value matches the part of the one of the plurality of hash-data pair entries in the first hash database, wherein the second data center does not store a replica of the virtual machine image at the first time, the second data center having a second hash database from which a corresponding processor retrieves the first data chunk.
1 Assignment
0 Petitions
Accused Products
Abstract
The subject technology addresses the need in the art for improving intra-cloud migration of virtual machines in a cloud computing environment. A hash database may be prepopulated with key-value pairs corresponding to hash IDs and associated data chunks of a virtual machine image. In this regard, the virtual machine image may be divided into chunks using boundaries chosen by a Rabin fingerprinting technique. A hash (e.g., MD5 or SHA-1) may be computed over each chunk and act as a unique identifier for the data contained in each chunk. At appropriate times, one or more hash IDs are sent instead of the actual data chunks between clouds when performing the inter-cloud migration of a virtual machine.
16 Citations
19 Claims
-
1. A system associated with a first data center providing cloud based services, the system comprising:
-
at least one processor; an interface; a local storage device; a first hash database including a plurality of hash-data pair entries; and memory including instructions that, which when executed by the at least one processor, cause the system to; select, at a first time, a first data chunk from a virtual machine image, the virtual machine image being divided into a plurality of data chunks; compute a hash identifier (ID) value for the first data chunk, the hash ID value being a key generated using a hash function; determine whether the hash ID value matches a part of one of the plurality of hash-data pair entries in the first hash database; and send, using the interface, the hash ID value without the first data chunk to a second data center if the hash ID value matches the part of the one of the plurality of hash-data pair entries in the first hash database, wherein the second data center does not store a replica of the virtual machine image at the first time, the second data center having a second hash database from which a corresponding processor retrieves the first data chunk. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method, comprising:
-
selecting, at a first time, a first data chunk from a virtual machine image on a first data center providing cloud based services, the virtual machine image being divided into a plurality of data chunks; computing a hash identifier (ID) value for the first data chunk, the hash ID value being a key generated using a hash function; determining whether the hash ID value matches a part of one of a plurality of hash-data pair entries in a first hash database; and sending the hash ID value without the first data chunk to a second data center if the hash ID value matches the part of the one of the plurality of hash-data pair entries in the first hash database, wherein the second data center does not store a replica of the virtual machine image at the first time, the second data center having a second hash database from which a corresponding processor retrieves the first data chunk. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer-readable medium including instructions stored therein that, when executed by at least one computing device, cause the at least one computing device to:
-
select, at a first time, a first data chunk from a virtual machine image on a first data center providing cloud based services, the virtual machine image being divided into a plurality of data chunks; compute a hash identifier (ID) value for the first data chunk, the hash ID value beinq a key generated using a hash function; determine whether the hash ID value matches a part of one of a plurality of hash-data pair entries in a first hash database; and send the hash ID value without the first data chunk to a second data center upon determining that the hash ID value matches the part of the one of the plurality of hash-data pair entries in the first hash database, wherein the second data center does not store a replica of the virtual machine image at the first time, the second data center having a second hash database from which a corresponding processor retrieves the first data chunk. - View Dependent Claims (18, 19)
-
Specification