Backup Optimizer Prioritizing Data Streams by Time Estimates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing backup applications for distributed systems inefficiently back up data streams from multiple computers due to random queuing, leading to increased time requirements for data object restoration.

Innovation Solution

Implementing a backup optimizer that queries multiple computers to identify data streams scheduled for backup, creates a ranked relational sequence based on backup time estimates, and instructs them to provide data streams according to this sequence, optimizing the concurrent backup process within a concurrency limit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data streams are queued randomly for backup, then the backup process is simple to implement, but the total backup time increases and resource utilization decreases

Engineering Contradiction:
Improvebackup speedVSAvoidbackup management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by querying multiple computers to identify data streams scheduled for backup and estimating their backup times before the actual backup process. This advance preparation enables the creation of an optimized backup sequence, allowing the system to process larger data streams first and minimize total backup time without adding operational complexity during execution.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If multiple data streams are backed up concurrently without prioritization, then the backup process is straightforward, but the total time required for backing up all data streams increases

Engineering Contradiction:
Improvetotal backup timeVSAvoidbackup process simplicity
Core Design Contradiction:
Loss of timeVSEase of operation

Solution Approach 1:

The system changes the parameter of backup prioritization by introducing backup time estimates as a new criterion. Instead of treating all data streams equally or using simple FIFO queuing, the system estimates the time required to back up each data stream and uses this parameter to prioritize larger data streams for concurrent processing, thereby reducing total backup time while maintaining operational simplicity through automated estimation and sequencing.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the backup application processes data streams in random order, then resource allocation is simple, but resource utilization efficiency decreases

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidbackup scheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements feedback by querying multiple computers to obtain data stream information and backup time estimates before creating the backup sequence. This feedback mechanism allows the backup optimizer to make informed decisions about prioritization, ensuring that resources are allocated efficiently to larger data streams first. The feedback loop continues during backup execution, monitoring progress and dynamically adjusting resource allocation to maintain optimal utilization.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9772908B1Method and system for concurrently backing up data streams of multiple computers based on backup time estimates
Publication Date: 2017.09.26 EMC IP HLDG CO LLC
  • US9772908B1 patent drawing
  • US9772908B1 patent drawing
  • US9772908B1 patent drawing

AI summary

Concurrently backing up data streams of multiple computers based on backup time estimates is described. A system queries multiple computers to identify multiple data streams scheduled for backup. The system queries the multiple computers to identify multiple backup time estimates corresponding to the multiple data streams. The system creates a ranked relational sequence based on the multiple backup time estimates. The system instructs the multiple computers to provide the multiple data streams based on the ranked relational sequence. The system concurrently backs up the multiple data streams based on a concurrency limit and the ranked relational sequence.