User Space Incremental Tracking for Backup Drivers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing backup systems require system reboots to track changes in data volumes, leading to interruptions and delays in incremental backups, especially on mission-critical servers where unscheduled downtime is undesirable.

Innovation Solution

The User Space Incremental Tracking Apparatuses, Methods, and Systems (USIT) utilize user space components to track changes without rebooting, employing a changed file to changed block tracking (CF2CBT) component that monitors write operations and maintains a bitmap of changed data blocks, enabling incremental backups without system interruptions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If kernel-based changed block tracking is used to monitor write operations, then tracking precision is improved, but system reliability deteriorates due to required reboots causing interruptions

Engineering Contradiction:
Improvetracking precisionVSAvoidsystem availability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent introduces a user-space intermediary component (backup driver) that mediates between the file system and the backup system. This driver intercepts I/O requests and monitors write operations without requiring kernel-level changes or system reboots, thus maintaining tracking precision while preserving system availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical reboot requirement with a software-based solution in user space. Instead of relying on kernel-level mechanisms that require system restarts, the solution uses a user-space backup driver that can operate continuously without interruptions, substituting the reboot mechanism with persistent software monitoring.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Device complexity

If system reboots are performed to install backup drivers, then device complexity is reduced, but loss of time increases due to interruptions in backup operations

Engineering Contradiction:
Improvesystem configuration simplicityVSAvoidbackup time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by installing the backup driver in user space before backup operations begin. The driver is configured to intercept I/O requests and monitor changes proactively, so that when backup operations are initiated, the system is already prepared and can immediately begin tracking changes without requiring reboots or interruptions.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If user space components are used for incremental tracking, then system availability is improved by eliminating reboots, but device complexity increases due to additional tracking mechanisms

Engineering Contradiction:
Improvesystem availabilityVSAvoidtracking system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The backup driver in user space is designed to perform multiple functions: it monitors write operations, maintains change tracking information, and interfaces with the backup system. This multi-functional approach consolidates what could be separate complex components into a single unified driver, reducing overall system complexity while maintaining high availability.

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

Data Source

PatentUS11003545B2User space incremental tracking apparatuses, methods and systems
Publication Date: 2021.05.11 DATTO LLC
  • US11003545B2 patent drawing
  • US11003545B2 patent drawing
  • US11003545B2 patent drawing

AI summary

The User Space Incremental Tracking Apparatuses, Methods and Systems (“USIT”) transforms backup driver installation request, backup data store request inputs via USIT components into backup driver installation response, backup data store response outputs. A new most recent activity entry in a file system journal associated with a data volume is determined by a user space tracking agent. Newly changed files on the data volume are determined by processing journal entries between a previous most recent activity entry, as indicated by a last entry marker, and the new most recent activity entry. Changed data blocks associated with the newly changed files are determined. The changed data blocks are marked as changed in a tracking store. The last entry marker is updated to reflect the new most recent activity entry. Data blocks flagged as changed are sent to a backup device. The sent data blocks are marked as unchanged.