Virtual Machine Restore with Filter Module I/O Redirection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Restoring virtual machines and virtual disks from backup storage often results in performance degradation due to the need to wait for complete data copying and inefficient I/O operations, leading to delays and potential data corruption.

Innovation Solution

Implementing a system with a filter module and redirect module that allows virtual machines to operate during restoration by redirecting I/O requests to backup storage and managing data writes and reads efficiently, using a sparse virtual disk file and migration metadata to track progress and prevent data overwrites.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtual machine and virtual disk data are copied from backup storage to local storage before allowing operations, then data integrity is ensured, but restoration time and system downtime increase significantly

Engineering Contradiction:
Improvedata integrityVSAvoidrestoration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by creating a sparse virtual disk file structure before complete data restoration, allowing the virtual machine to be registered and partially operational while data copying continues in the background. The sparse file structure pre-allocates space but only actually writes data as it is accessed or copied.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A filter module is introduced as an intermediary between the virtual machine I/O operations and the storage system. This filter module intercepts and manages read/write requests, redirecting them appropriately during the restoration process, allowing operations to proceed without waiting for complete data copying while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If virtual machine operations are allowed during restoration by redirecting I/O requests to backup storage, then productivity is maintained, but performance degradation occurs due to slow backup storage access

Engineering Contradiction:
Improvevirtual machine operational capabilityVSAvoidI/O operation speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system segments I/O operations into different paths: reads are redirected to backup storage while writes are directed to local storage. This segmentation allows the virtual machine to remain operational with acceptable performance for write operations, while read operations tolerate the slower backup storage speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adjusts I/O routing based on the restoration progress and operation type. As data is copied from backup to local storage, the system can transition operations from backup storage to local storage, optimizing performance dynamically throughout the restoration process.

Inventive Principle:
Principle #15Dynamics

3Productivity

If data writing is allowed during restoration before complete copying, then operational continuity is maintained, but data corruption risk increases from potential overwrites

Engineering Contradiction:
Improveoperational continuityVSAvoiddata corruption risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A migration metadata file serves as feedback mechanism, tracking which data blocks have been copied from backup to local storage. The filter module queries this metadata to determine whether to allow writes to specific blocks, preventing overwrites of blocks that have not yet been fully restored from backup.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The filter module acts as an intermediary that intercepts write requests and checks the migration metadata before allowing the write to proceed. This intermediary layer prevents data corruption by blocking writes to blocks that are still being restored, while allowing writes to blocks that have been fully copied.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9354907B1Optimized restore of virtual machine and virtual disk data
Publication Date: 2016.05.31 COHESITY INC
  • US9354907B1 patent drawing
  • US9354907B1 patent drawing
  • US9354907B1 patent drawing

AI summary

Various systems and methods for restoring a virtual machine and virtual machine data. For example, one method can involve receiving a request to restore the virtual machine and virtual machine data. The virtual machine data can include part or all of a virtual disk associated with the virtual machine. Both the virtual machine and the virtual machine data are stored in one or more backup storage devices. In response to the request, the virtual machine is restored from the backup storage device to a local storage device, and restoration of the virtual machine data is initiated. While the virtual machine data is being migrated from backup to local storage, I/O requests are received and processed. Processing the I/O request can involve performing the I/O requests to both the backup storage device and the local storage device.