Incremental Database Backup via Identifier Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current incremental backup technologies are inefficient, requiring significant space and time for full backups and lacking effective incremental backup capabilities, especially for page-based databases that do not natively support snapshot or point-in-time backups.

Innovation Solution

A method for performing incremental backups by retrieving identifiers from a prior database backup, comparing them to determine modified portions, and backing up only those portions that have been updated since the last full backup, using a stream of backup portions to create a virtual database image and store offsets for restoration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full backups are performed, then complete database backup is achieved, but storage space and backup time increase significantly

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

Solution Approach 1:

The patent extracts only the modified portions (delta data) from the full database backup by comparing identifiers between the current snapshot and the previous backup. This extraction principle allows the system to store only the necessary changed data blocks rather than the entire database, significantly reducing storage space while maintaining backup completeness through the ability to reconstruct full backups by combining the base backup with incremental backups.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If full backups are performed, then complete database backup is achieved, but backup time increases significantly

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

Solution Approach 1:

The system extracts only the modified portions by comparing identifiers, which dramatically reduces backup time. Instead of copying the entire database, the system identifies and backs up only the changed data blocks, making the backup process much faster while still ensuring complete backup capability through the incremental backup chain.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by performing only the necessary portion of the backup operation - backing up only the modified data blocks rather than the entire database. This partial backup approach maintains reliability because the combination of base and incremental backups provides complete restoration capability, while significantly reducing the time and resources required for each backup operation.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If incremental backup is implemented by comparing identifiers, then backup efficiency improves, but system complexity increases

Engineering Contradiction:
Improvebackup efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system uses feedback by comparing identifiers from the current snapshot with identifiers from the previous backup to determine which data blocks have changed. This feedback mechanism enables the system to automatically identify modified portions and perform incremental backups only for those blocks, improving backup efficiency while managing complexity through automated comparison and decision-making processes.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9817834B1Techniques for performing an incremental backup
Publication Date: 2017.11.14 COHESITY INC
  • US9817834B1 patent drawing
  • US9817834B1 patent drawing
  • US9817834B1 patent drawing

AI summary

Techniques for performing an incremental backup are disclosed. In one particular exemplary embodiment, the techniques may be realized as a method for performing an incremental backup comprising retrieving a first identifier from a first portion of a prior backup of a database, backing up a first portion of a snapshot of the database, retrieving, using at least one computer processor, a second portion of the snapshot of the database, determining whether a second identifier of the second portion of the snapshot of the database is greater than the first identifier, and in the event the second identifier is greater than the first identifier, backing up the second portion of the snapshot of the database.