Virtual Machine Backup System Parent-Child Inheritance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Backup systems for virtual machines struggle to efficiently manage and preserve the relationships between parent and child virtual machines, leading to unnecessary data duplication and increased backup times due to the complexity of interrelated VMs, especially when child VMs have multiple parents or intermediate VMs in the inheritance chain.

Innovation Solution

A backup system that determines the disk layout of a child VM, identifies snapshots for both the child and parent VMs, and backs up only the changed blocks, while optimizing by tagging and tracking current parent VMs to avoid redundant backups and using deduplication techniques to reduce storage requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If backup systems back up all virtual machines independently without recognizing parent-child relationships, then each VM is backed up completely ensuring data completeness, but storage space is wasted due to duplication and backup time increases

Engineering Contradiction:
Improvedata completenessVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the backup processes of parent and child virtual machines into a unified operation. By identifying parent-child relationships and inheritance patterns, the system combines backup activities so that common data blocks are backed up only once at the parent level, while child VMs reference these shared blocks, eliminating redundant storage while maintaining complete data protection.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The backup system implements multi-functionality by creating a universal backup mechanism that handles both parent and child VMs through a single process. The system can backup entire VMs or selectively backup only changed blocks based on the VM type and backup requirements, making the backup operation adaptable and efficient for different scenarios within the same framework.

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

2Reliability

If backup systems back up all virtual machines independently without recognizing parent-child relationships, then each VM is backed up completely ensuring data completeness, but backup time increases due to processing all data

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

Solution Approach 1:

The patent extracts and separates the unchanged data blocks from child VMs, identifying them as inherited from parent VMs. Instead of backing up the entire child VM data, the system extracts only the changed blocks that differ from the parent, significantly reducing backup time while ensuring complete data protection through the parent-child linkage.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system applies partial action by backing up only the necessary portions of child VM data - specifically, only the changed blocks that are not present in the parent VM. This selective approach avoids the excessive action of backing up entire VMs when most data is already protected through inheritance, thereby reducing backup time while maintaining data completeness.

Inventive Principle:
Principle #16Partial or excessive action

3Ease of operation

If backup systems treat child VMs as independent entities, then backup simplicity is maintained, but data relationships are lost leading to redundant storage

Engineering Contradiction:
Improvebackup simplicityVSAvoidstorage efficiency
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent introduces an intermediary mechanism - the parent-child relationship identification system - that automatically detects and establishes links between related VMs. This intermediary layer transparently handles the complexity of relationship mapping, allowing the backup system to maintain operational simplicity while achieving storage efficiency through automated recognition of inheritance patterns without requiring manual configuration.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If backup systems create separate backups for each child VM including full parent data, then restoration flexibility is improved, but storage requirements increase significantly

Engineering Contradiction:
Improverestoration flexibilityVSAvoidstorage requirements
Core Design Contradiction:
Adaptability or versatilityVSVolume of stationary object

Solution Approach 1:

The patent implements a nested structure where child VM backups are nested within the parent VM backup framework. The parent VM backup contains the base data blocks, and child VM backups contain only the additional changed blocks that differ from the parent. This nested arrangement preserves restoration flexibility - any VM can be restored independently - while dramatically reducing storage requirements by eliminating redundant parent data copies in each child backup.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS9189342B1Generic process for determining child to parent inheritance for fast provisioned or linked clone virtual machines
Publication Date: 2015.11.17 EMC IP HLDG CO LLC
  • US9189342B1 patent drawing
  • US9189342B1 patent drawing
  • US9189342B1 patent drawing

AI summary

A method for backing up virtual machine (VM) data is described, and includes, in response to a request to back up a first VM of a first storage system, determining a disk layout of a VM disk associated with the first VM, the disk layout having nodes in a hierarchical structure, each node corresponding to a VM. The method includes traversing the disk layout to derive a first storage location of a first VM configuration data of the first VM and a second storage location of a second VM configuration data associated with a second VM that is a parent VM to the first VM, identifying a first VM snapshot from the first configuration data and a second VM snapshot from the second configuration data, determining a list of changed blocks representing data blocks that are different between the first and second VM snapshots, and backing up the changed blocks.