Dynamic Data Slice Grouping for NAS Backup Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional systems for backing up file systems stored in network-attached storage (NAS) do not prioritize the distribution of slices during backup operations, leading to inefficient backup performance and inflexibility in subsequent backups due to static slice generation that does not account for changes in the file system over time.

Innovation Solution

A system that performs pre-backup tasks to generate snapshots and update slice groups based on user-configurable priority criteria, dynamically adjusting slice distribution and prioritization for efficient backup operations by using proxy hosts to copy snapshot data to backup storage, maintaining a slice queue based on availability and capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If file systems are split into slices for backup, then backup performance is improved, but slice distribution becomes static and inflexible for subsequent backups

Engineering Contradiction:
Improvebackup performanceVSAvoidslice distribution flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system dynamically adjusts slice distribution by maintaining a slice queue that re-evaluates and re-distributes slices based on current proxy host availability and capacity. This allows the backup system to adapt to changing conditions while maintaining the performance benefits of sliced backups.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms by monitoring proxy host availability and capacity, then using this information to adjust slice distribution decisions. The backup manager receives status information from proxy hosts and modifies the slice queue accordingly, creating a closed-loop control system that optimizes backup operations.

Inventive Principle:
Principle #23Feedback

2Ease of operation

If slices are distributed without prioritization, then backup operations are simple to implement, but backup efficiency decreases with limited proxy host availability

Engineering Contradiction:
Improvebackup operation simplicityVSAvoidbackup efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-calculating and maintaining a prioritized slice queue before actual backup operations begin. Slices are pre-assigned priorities based on expected proxy host availability and capacity, so that when backup operations start, the most efficient distribution is already determined, maximizing productivity without adding operational complexity.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If static slice generation is used, then initial backup setup is straightforward, but the system cannot account for changes in file system over time

Engineering Contradiction:
Improveinitial setup simplicityVSAvoidfile system change adaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system transitions from static to dynamic slice generation by continuously monitoring file system changes and updating the slice queue accordingly. The slice distribution is re-evaluated based on current file system state and proxy host availability, allowing the system to adapt to changes over time while maintaining operational simplicity through automated management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11836350B1Method and system for grouping data slices based on data file quantities for data slice backup generation
Publication Date: 2023.12.05 DELL PROD LP
  • US11836350B1 patent drawing
  • US11836350B1 patent drawing
  • US11836350B1 patent drawing

AI summary

Techniques described herein relate to a method for performing pre-backup tasks. The method includes obtaining, by a proxy host, a snapshot request associated with a full backup of a file system stored in a network attached storage (NAS) from a backup manager; in response to obtaining the snapshot request: instantiating a NAS container to obtain a snapshot of the file system; obtaining providing the snapshot using to the NAS container; after providing the snapshot to the NAS container: generating, using the snapshot, slices associated with the file system; sorting the slices based on the number of files included in each slice; grouping the slices based on the number of files and group criteria to generate slice groups; generating a slice list specifying the slices and the slice groups; and providing the slice list to the backup manager.