De-duplicated virtual machine image transfer
Abstract
Technologies are generally described for a system and method effective to copy virtual machine images from a source to a destination memory. A processor may copy a first block corresponding to a first virtual machine image from an interim memory to the destination memory. The interim memory may include de-duplicated data present in the first and the second virtual machine images. The processor may identify a second block in the interim memory that corresponds to the second virtual machine image and store the second block in a buffer. The processor may identify a third block in the interim memory that corresponds to the first virtual machine image and copy the third block from the interim memory to the destination memory.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for copying two or more virtual machine images by one or more processors, comprising:
identifying duplicated data present in the two or more virtual machine images; copying the duplicated data to an interim memory as de-duplicated data; copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images.
2 . The method of claim 1 , wherein copying the duplicated data to the interim memory generates a map.
3 . The method of claim 2 , wherein the map indicates which blocks of the de-duplicated data correspond to the two or more virtual machines, and wherein the blocks are sized portions of the de-duplicated data.
4 . The method of claim 3 , wherein the map indicates an order of the blocks in the two or more virtual machine images.
5 . The method of claim 2 , wherein the map is a data structure, wherein the data structure includes two or more files, and wherein the two or more files correspond to the one or more virtual machine images.
6 . The method of claim 5 , wherein a file of the two or more files is divided into a plurality of equal sized regions.
7 . The method of claim 6 , wherein a region of the plurality of equal sized regions includes a block identifier field, a region buffer number count field, a block size field, a presence field, and/or a number of regions field.
8 . The method of claim 6 , wherein the region includes an indication of a number and an order of consecutive blocks in the corresponding virtual machine image.
9 . The method of claim 1 , wherein the map is analyzed to determine if the blocks correspond to a particular one of the two or more virtual machine images and if the blocks do not relate to the particular one of the two or more virtual machine images.
10 . The method of claim 9 , wherein the map is updated when a block is stored in the buffer by updating the presence field and/or by incrementing the region buffer number counter field.
11 . A system for copying two or more virtual machine images by one or more processors, the system comprising the one or more processors effective to execute a number of tasks comprising:
identifying duplicated data present in the two or more virtual machine images; copying the duplicated data to an interim memory as de-duplicated data; copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images.
12 . The system of claim 11 , wherein copying the duplicated data to the interim memory generates a map.
13 . The system of claim 12 , wherein the map indicates which blocks of the de-duplicated data correspond to the two or more virtual machines, and wherein the blocks are sized portions of the de-duplicated data.
14 . The system of claim 13 , wherein the map indicates an order of the blocks in the two or more virtual machine images.
15 . The system of claim 12 , wherein the map is a data structure, wherein the data structure includes two or more files, and wherein the two or more files correspond to the one or more virtual machine images.
16 . The system of claim 15 , wherein a file of the two or more files is divided into a plurality of equal sized regions.
17 . The system of claim 16 , wherein a region of the plurality of equal sized regions includes a block identifier field, a region buffer number count field, a block size field, a presence field, and/or a number of regions field.
18 . The system of claim 16 , wherein the region includes an indication of a number and an order of consecutive blocks in the corresponding virtual machine image.
19 . The system of claim 11 , wherein the map is analyzed to determine if the blocks correspond to a particular one of the two or more virtual machine images and if the blocks do not relate to the particular one of the two or more virtual machine images.
20 . The system of claim 19 , wherein the map is updated when a block is stored in the buffer by updating the presence field and/or by incrementing the region buffer number counter field.
21 . A method for copying two or more virtual machine images by one or more processors, comprising:
identifying duplicated data present in the two or more virtual machine images; copying the duplicated data to an interim memory as de-duplicated data; copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images, wherein copying blocks of the duplicated data from the interim memory to a buffer is continued until the buffer is filled to a threshold level.
22 . The method of claim 21 , wherein after the buffer is filled to the threshold level, the buffer is freed up by writing blocks of the buffer to all virtual machine images that include the blocks, until the buffer is left filled with another threshold level.
23 . A system for copying two or more virtual machine images by one or more processors, the system comprising the one or more processors effective to execute a number of tasks comprising:
identifying duplicated data present in the two or more virtual machine images; copying the duplicated data to an interim memory as de-duplicated data; copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images, wherein copying blocks of the duplicated data from the interim memory to a buffer is continued until the buffer is filled to a threshold level.
24 . The system of claim 23 , wherein after the buffer is filled to the threshold level, the buffer is freed up by writing blocks of the buffer to all virtual machine images that include the blocks, until the buffer is left filled with another threshold level.Join the waitlist — get patent alerts
Track US2018143878A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.