Delta Virtual Disk Images for VM Storage Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management and storage of a large number of virtual machine (VM) images are challenging due to the significant storage requirements and lack of reusability, as many VMs share similar information but are stored as complete images, leading to inefficient use of resources.

Innovation Solution

The method involves creating delta VM images that store only the differences between the base image and subsequent changes, reducing storage needs and enhancing reusability by using a delta image comprising a delta virtual disk file and an identifier of the base image, allowing for efficient deployment and identification of VMs with specific configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complete VM images are stored for each virtual machine configuration, then all VM state information is preserved, but storage requirements increase significantly

Engineering Contradiction:
ImproveVM state preservationVSAvoidstorage requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The VM image storage is segmented into two components: a base image containing the common VM state and configuration, and delta images containing only the differences or changes from the base image. This segmentation allows multiple VMs to share the common base image while storing only their unique modifications, significantly reducing total storage requirements while preserving complete VM state information when needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of storing complete duplicate VM images for each virtual machine, the system creates a single base image that is copied and shared among multiple VMs. Delta images are then created to capture only the unique changes for each VM instance, effectively using copying to reduce redundancy while maintaining the ability to restore complete VM states.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If separate VM images are created for each software configuration variation, then specific configurations are preserved, but the number of images to manage increases

Engineering Contradiction:
Improveconfiguration preservationVSAvoidimage management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The configuration management is segmented by separating common configuration elements (stored in the base image) from configuration variations (stored in delta images). This allows the system to manage diverse software configurations by only tracking the differences from the base configuration, reducing the number of complete images that need to be managed while preserving all specific configuration variations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The base image serves as a universal foundation that can be reused across multiple VMs with different configurations. By making the base image multi-functional and configurable through delta images, the system reduces management complexity while maintaining the ability to preserve and deploy various software configurations as needed.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10574524B2Increasing reusability of and reducing storage resources required for virtual machine images
Publication Date: 2020.02.25 VMWARE INC
  • US10574524B2 patent drawing
  • US10574524B2 patent drawing
  • US10574524B2 patent drawing

AI summary

Aspects of the present disclosure relate to the creation of delta virtual machine (VM) images corresponding to changes in the state of a VM's virtual disk. A delta VM image includes metadata information corresponding to its virtual disk file as well as a virtual disk file of a parent VM image. The metadata information makes delta VM image uniquely identifiable such that they may be searched for and used for creating VMs.