Delta Component Placement for Distributed Data Durability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed data objects face reduced data availability and durability when components go into maintenance mode, leading to stale data upon recovery due to missed I/O traffic, and existing solutions do not effectively manage this downtime.
Innovation Solution
Generating a delta component that mirrors changes during downtime and placing it on a selected fault domain different from the base component's domain, ensuring data redundancy and balancing bandwidth usage across fault domains.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If components are placed in maintenance mode for server updates, then system maintenance can be performed, but data availability and durability are reduced during the maintenance period
Solution Approach 1:
A delta component is created before the base component enters maintenance mode. This delta component is configured to receive and process I/O traffic that would otherwise be directed to the base component, ensuring data availability is maintained during the maintenance period.
Solution Approach 2:
The delta component acts as an intermediary between the I/O traffic and the base component during maintenance. It receives I/O traffic, processes it, and stores the changes, thereby mediating the data flow while the base component is unavailable for updates.
2Ease of manufacture
If components remain in maintenance mode for extended periods, then thorough maintenance can be performed, but data becomes stale due to missed I/O traffic
Solution Approach 1:
The delta component serves as a mediator that captures all I/O traffic during the maintenance period. When the base component exits maintenance mode, the delta component synchronizes the captured changes back to the base component, preventing data staleness.
Solution Approach 2:
The delta component creates a copy of the base component's data structure and continuously updates this copy with received I/O traffic. This copying mechanism ensures that when synchronization occurs, the base component receives all missed updates and becomes current again.
3Productivity
If delta components are placed on the same fault domain as base components, then resource utilization is improved, but data durability is compromised due to single point of failure
Solution Approach 1:
The system segments fault domains to separate the placement of base components and delta components. This segmentation ensures that they reside in different fault domains, eliminating the single point of failure risk while maintaining resource utilization efficiency.
Solution Approach 2:
The system applies different placement strategies to base components and delta components based on their functional roles. Delta components are specifically placed in different fault domains than their associated base components, creating local quality differentiation that enhances data durability.
4Reliability
If multiple fault domains are used for delta component placement, then data durability is enhanced, but system complexity increases
Solution Approach 1:
The system implements self-service mechanisms where the delta component automatically selects an appropriate fault domain for placement based on predefined criteria. This automated selection process reduces the complexity of manual fault domain management while ensuring data durability through diverse placement.
Data Source
AI summary
The disclosure herein describes placing a delta component of a base component in a target fault domain. A delta component associated with a base component is generated. The generation includes selecting a first fault domain as a target fault domain for the delta component based on the first fault domain including a witness component associated with the distributed data object of the base component. Otherwise, the generation includes selecting a second fault domain as the target fault domain based on the second fault domain including at least one data component that includes a different address space than the base component. Otherwise, the generation includes selecting a third fault domain as the target fault domain based on the third fault domain being unused. Then, the delta component is placed on the target fault domain, whereby data durability of the distributed data object is enhanced, and available fault domains are preserved.


