Logical Time Identifier Structure for Storage Change Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In incremental backup processes, inconsistent redundancy data can lead to the entire write portion being backed up, even if only some unit portions have changed, resulting in unnecessary data transfer and potential data inconsistency.

Innovation Solution

The use of logical time identifiers associated with each unit portion of a storage system, along with redundancy data, to track changes and ensure data consistency, where inconsistent redundancy data is treated as if the entire write portion has been newly written, causing the entire write portion to be backed up for safety.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If redundancy data is used to track changes in storage portions, then backup efficiency is improved by avoiding unnecessary data transfer, but data consistency may deteriorate if redundancy data becomes inconsistent

Engineering Contradiction:
Improvebackup efficiencyVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A logical time identifier structure acts as an intermediary between the storage system and backup system. This structure tracks changes at the unit portion level with sequence numbers, providing a reliable mediation mechanism that prevents both unnecessary backups and data inconsistency. The intermediary structure verifies change status before triggering backups, resolving the contradiction between efficiency and reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the entire write portion is backed up when redundancy data is inconsistent, then data consistency is protected, but backup data transfer increases unnecessarily

Engineering Contradiction:
Improvedata consistencyVSAvoidbackup data transfer
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The storage system is segmented into unit portions, each with its own logical time identifier and sequence number. This granular segmentation allows the backup system to identify and backup only the specific unit portions that have actually changed, rather than backing up entire write portions unnecessarily. The segmentation enables precise tracking of changes at the finest granularity level.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses sequence numbers as parameters to track the logical time of changes for each unit portion. By monitoring changes in these sequence number parameters, the system can accurately determine which unit portions have changed and require backup, avoiding unnecessary backup of unchanged portions while maintaining data consistency.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If logical time identifiers are used to track changes at unit portion level, then backup precision is improved, but system complexity increases due to additional tracking structures

Engineering Contradiction:
Improvechange tracking precisionVSAvoidtracking structure complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Instead of implementing complex monitoring mechanisms, the system creates a simplified copy structure - the logical time identifier structure - that mirrors the storage system's organization. This copy structure uses sequence numbers to track changes, providing precise change detection without the complexity of sophisticated monitoring algorithms or additional hardware components.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3245589B1Change tracking using redundency in logical time
Publication Date: 2018.12.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3245589B1 patent drawingFigure 1
  • EP3245589B1 patent drawingFigure 2
  • EP3245589B1 patent drawingFigure 3

AI summary

Tracking changes amongst unit portions (e.g., blocks or files) of a storage system. A logical time identifier is associated with each unit portion and is included within a logical time identifier structure. When writing to a particular write portion, the mechanism updates the appropriate logical time identifiers, calculates redundancy data of a group of one or more logical time identifiers associated with the unit portion(s) of the write portion. Furthermore, the write portion of the storage system is written. In addition, the corresponding redundancy data for that write portion is written to the logical time identifier structure. Later, for a given write portion, the redundancy data is verified to be consistent or inconsistent with the group of one or more logical time identifiers associated with the write portion. If the redundancy data is not consistent, then a current logical time identifier is assigned to each of the logical time identifiers.