Delta Components Synchronize Stale Distributed Objects

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed data objects face reduced data availability and durability when components become unavailable for maintenance, leading to stale data upon reactivation, and require multiple redundancy levels to ensure data integrity.

Innovation Solution

Generating multiple temporary delta components to track and mirror data changes during downtime, with each delta component having an address space matching the base component and a tracking bitmap, allowing write operations to be routed to them, and synchronizing data blocks upon the base component's availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If a component is placed in maintenance mode, then maintenance operations can be performed, but data availability and durability are reduced

Engineering Contradiction:
Improvemaintenance operationVSAvoiddata availability and durability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The system creates delta components before the base component enters maintenance mode. These delta components are pre-configured with the same address space and tracking bitmap structure, ready to immediately take over data tracking functions during the maintenance period, thus preventing data availability loss before it occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Delta components act as intermediary elements between the maintenance-mode base component and the active data storage system. They receive write operations intended for the unavailable base component and maintain data integrity during the maintenance period, serving as a bridge that preserves data availability despite the base component being offline.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If a component becomes unavailable for maintenance, then maintenance can be performed, but the component becomes stale due to missing input/output traffic

Engineering Contradiction:
Improvemaintenance operationVSAvoiddata staleness
Core Design Contradiction:
Ease of manufactureVSLoss of information

Solution Approach 1:

The system creates copies of the base component in the form of delta components during maintenance mode. These delta components replicate the address space and tracking bitmap of the base component, capturing all write operations that occur during maintenance. When the base component returns, these copies provide the missing input/output traffic information, preventing data staleness.

Inventive Principle:
Principle #26Copying

3Reliability

If multiple redundancy levels are implemented, then data integrity is improved, but system complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the redundancy mechanism into distinct delta components that are created only when needed during maintenance events. Each delta component is a self-contained unit with its own tracking bitmap, separating the redundancy function from the base component architecture. This segmentation allows multiple redundancy levels to be implemented without proportionally increasing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11182261B1Synchronizing a stale component of a distributed object using multiple delta components during maintenance
Publication Date: 2021.11.23 VMWARE INC
  • US11182261B1 patent drawing
  • US11182261B1 patent drawing
  • US11182261B1 patent drawing

AI summary

The disclosure herein describes enhancing data durability of a base component using multiple delta components. A first and second delta component are generated based on the base component becoming unavailable. A write operation targeted for the base component is routed to the first delta component and to the second delta component. Based on routing the write operation targeted for the base component to the first delta component and to the second delta component, a bit associated with a data block affected by the write operation is changed in each of the tracking bitmaps of the first and second delta components. Based on detecting the base component becoming available, one delta component of the first and second delta components is selected, and the data block affected by the routed write operation is synchronized from the selected delta component to the base component. Later, the first and second delta components are removed.