Virtual Machine Suspend-Resume Using Data De-duplication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for suspending virtual machines (VMs) incur significant time and disk space costs due to the need to stop virtual CPUs, flush I/O operations, and store the VM's state, which increases with more virtual CPUs, I/O operations, and disk latency.
Innovation Solution
Implementing data de-duplication by dividing VM data into blocks, generating keys for each block, and storing only unique data in a key-data map, reducing the need to store duplicate data and minimizing disk I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the VM state is serialized and written to a file using conventional approaches, then the VM suspension is completed, but the time taken increases significantly and large disk space is required
Solution Approach 1:
The patent extracts only the essential unique data from the VM state using de-duplication techniques. Instead of serializing and writing the entire VM state to a file, the system identifies and stores only the unique portions of data that are not already present in the host's memory or other VM states, significantly reducing the amount of data that needs to be persisted to disk.
Solution Approach 2:
The patent segments the VM state data into manageable blocks and applies de-duplication to each block. This segmentation allows the system to process and store only the necessary portions of the VM state, rather than treating the entire state as a single unit that must be fully persisted to disk.
2Reliability
If the entire VM state is written to disk, then the suspension is completed, but large amounts of disk space are consumed
Solution Approach 1:
The patent extracts only the essential unique data from the VM state using de-duplication techniques. Instead of serializing and writing the entire VM state to a file, the system identifies and stores only the unique portions of data that are not already present in the host's memory or other VM states, significantly reducing the amount of data that needs to be persisted to disk.
Solution Approach 2:
The patent leverages the host's existing memory and storage systems as part of the VM state persistence mechanism. By checking if data already exists in the host's memory or can be shared with other VMs, the system uses these existing resources to avoid redundant disk storage, making the persistence system more efficient and reducing the disk space burden.
3Loss of information
If duplicate data is stored in the suspension file, then the VM state is fully captured, but processing time and I/O operations increase
Solution Approach 1:
The patent extracts only the essential unique data from the VM state using de-duplication techniques. Instead of serializing and writing the entire VM state to a file, the system identifies and stores only the unique portions of data that are not already present in the host's memory or other VM states, significantly reducing the amount of data that needs to be persisted to disk.
Solution Approach 2:
The patent performs preliminary de-duplication analysis before writing the VM state to disk. By pre-processing the VM state data to identify and remove duplicate portions, the system prepares a minimized data set that requires less I/O processing during the actual suspension operation, reducing the time and resources needed for data transfer and storage.
Data Source
AI summary
A technique for data de-duplication is applied to suspend and resume operations for virtual machines (VMs) to reduce the time needed to suspend or resume a virtual machine and store the suspended VMs in a space-efficient and time-efficient manner. A VM's state is serialized and written to disk in the form of key values that are used to retrieve data from a key-data map. The key-data map stores unique data blocks for suspended VM images. The key-data map can be stored in a solid-state drive to further reduce latency and access time.


