Parallel Partitioned Data Container Backup via Snapshot Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current backup processes for large data containers, such as virtual machines, are inefficient due to serial data reading and high resource wastage, leading to long backup windows and network latency issues.

Innovation Solution

A system and method that generates a snapshot image of a data container, allowing simultaneous data reading from multiple partitions using multiple threads over transport paths, ensuring the data retains its physical block sequence and is backed up efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If serial data reading is used to backup data containers, then resource usage is reduced, but backup throughput decreases and backup time increases

Engineering Contradiction:
Improvebackup throughputVSAvoidbackup time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the data container into multiple partitions and assigns each partition to a separate thread for parallel reading. This segmentation allows simultaneous access to different portions of the data container, thereby increasing backup throughput and reducing overall backup time without overwhelming system resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-threaded serial reading to multi-threaded parallel reading by adding the dimension of concurrency. Multiple threads operate simultaneously on different partitions, effectively utilizing available I/O bandwidth and processor capacity to improve backup performance.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple threads are used for simultaneous data reading, then backup throughput increases, but system resource consumption increases

Engineering Contradiction:
Improvebackup throughputVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent uses multiple threads to read from different partitions simultaneously, applying partial parallelism rather than full system-wide parallelism. This approach increases throughput by utilizing available I/O capacity without requiring proportional increases in overall system resources, as each thread operates on a specific partition independently.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If data is read simultaneously from multiple partitions, then backup speed increases, but data sequence integrity may be compromised

Engineering Contradiction:
Improvebackup speedVSAvoidphysical block sequence
Core Design Contradiction:
SpeedVSStability of the object's composition

Solution Approach 1:

The patent implements a coordination mechanism where multiple reading threads report their progress and the system tracks the physical block sequences being read. This feedback allows the system to maintain proper sequencing of data blocks during parallel reading operations, ensuring integrity while achieving speed improvements through concurrency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8495317B2System and method for improving performance of data container backups
Publication Date: 2013.07.23 CA TECH INC
  • US8495317B2 patent drawing
  • US8495317B2 patent drawing
  • US8495317B2 patent drawing

AI summary

A method for improving performance of data container backups comprises identifying a data container on a source computer to be backed up. A snapshot image of the data container is generated, wherein the snapshot image comprises one or more partitions. Data is read simultaneously from each of the one or more partitions to a destination computer over one or more transport paths. Each of the one or more transport paths comprises one or more threads. The data read to the destination computer is backed up such that the data retains a physical block sequence of the data container.