Content-Based Read Cache Digest File Creation for Instant Clones
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The creation of digest files for clone virtual machines is resource-intensive and time-consuming, particularly when using instant clones, leading to performance degradation and increased load on physical computing resources due to the need for cryptographic hash computations for each data block.
Innovation Solution
A method that determines the mapping between logical and physical block addresses to identify and copy relevant information from a source VM's digest file to a clone VM's digest file, reducing the need for redundant hash computations and enabling fast, resource-efficient digest file creation for clone VMs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If cryptographic hash computations are performed for each data block to create a digest file for a clone VM, then the digest file enables content-based read cache functionality, but the processing resource utilization and time required for digest file creation increases significantly
Solution Approach 1:
The digest file for the clone VM is created in advance during the cloning operation by copying and mapping entries from the parent VM's digest file, rather than performing hash computations after cloning. This preliminary action enables the content-based read cache to function immediately without delaying the cloning process or consuming excessive resources at clone activation.
Solution Approach 2:
Instead of computing hashes for each data block of the clone VM, the invention copies digest file entries from the parent VM's digest file and remaps them to the clone VM's logical block addresses. This copying approach leverages the fact that clone VMs share the same underlying data blocks as their parent, eliminating redundant hash computations while maintaining accurate content identification for the cache.
2Reliability
If cryptographic hash computations are performed for each data block to create a digest file for a clone VM, then the digest file enables content-based read cache functionality, but the load on physical computing resources increases
Solution Approach 1:
The digest file is generated in advance during the cloning operation itself, utilizing the already-available parent VM digest file. This preliminary generation avoids the need for intensive hash computations at clone activation, thereby reducing the instantaneous load on physical computing resources such as CPU cycles and energy consumption while still enabling content-based read cache functionality.
Solution Approach 2:
The invention copies digest file entries from the parent VM rather than computing new hashes for each clone VM data block. Since clone VMs share underlying data blocks with their parent, copying the digest entries and remapping logical block addresses eliminates redundant cryptographic hash computations, significantly reducing CPU load and energy consumption while maintaining accurate content identification for the content-based read cache.
3Reliability
If a digest file is created for a clone VM through traditional methods, then the content-based read cache can be used, but the clone VM performance is degraded during digest file creation
Solution Approach 1:
The digest file for the clone VM is created in advance during the cloning operation by copying and remapping entries from the parent VM's digest file. This preliminary creation occurs in the background without blocking clone VM activation or performance-critical operations, allowing the content-based read cache to be enabled immediately while avoiding performance degradation during digest file generation.
Solution Approach 2:
By copying digest file entries from the parent VM and remapping them to the clone VM's logical block addresses, the invention eliminates the need for time-consuming hash computations that would otherwise block clone VM startup. This copying approach enables rapid digest file creation that does not impede clone VM performance while still providing the content identification necessary for read cache functionality.
Data Source
AI summary
The disclosure provides an approach for content based read cache (CBRC) digest file creation. Embodiments include determining a mapping between entries in a CBRC and physical block addresses (PBAs) associated with a source virtual machine (VM). Embodiments include creating a clone VM based on the source VM. Embodiments include, for each data block associated with the clone VM: determining a PBA associated with a logical block address (LBA) of the data block, determining, based on the mapping, whether data associated with the PBA is cached in the CBRC, and, if the data associated with the PBA is cached in the CBRC, copying a hash of the data from a first digest file of the source VM to a second digest file of the clone VM and associating the hash with the LBA in the second digest file.


