Fault Domain Manager for Distributed Cache Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed cache data systems, replication of data across virtual machines is challenging due to the fluid movement of virtual machines between computing systems, leading to potential loss of replication advantages when data is copied on the same physical machine or machines equally impacted by faults, requiring users to maintain knowledge of overlapping fault exposures.

Innovation Solution

The method involves obtaining a default and defined fault domain configuration, specifying host associations, detecting operating faults, and reconfiguring data replication based on user-defined policies and fault domains to ensure data replication occurs across distinct host systems, maintaining replication benefits without user intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data replication is performed on the same physical machine or machines in the same fault domain, then replication speed and response time are improved, but fault tolerance is reduced because all replicas are equally impacted by faults

Engineering Contradiction:
Improveresponse timeVSAvoidfault tolerance
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system segments the cluster into multiple fault domains based on physical characteristics (rack, data center, availability zone). Replicas are distributed across different fault domains rather than being concentrated on single machines, ensuring that failures in one domain do not affect all replicas.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different fault domains are created with distinct physical characteristics and failure modes. The system assigns replicas to specific fault domains based on the primary node's domain, creating a localized replication strategy that balances speed (same-domain replicas) with fault tolerance (cross-domain replicas).

Inventive Principle:
Principle #3Local quality

2Reliability

If users manually configure replication policies based on fault domain knowledge, then fault tolerance can be optimized, but system complexity and operational burden increase

Engineering Contradiction:
Improvefault toleranceVSAvoidpolicy management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system automatically discovers physical infrastructure characteristics and creates fault domain definitions without user intervention. The fault domain manager autonomously configures replication policies by analyzing the cluster topology and distributing replicas across appropriate fault domains, eliminating the need for users to manually track or configure fault domain assignments.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The fault domain manager acts as an intermediary layer between the replication manager and the physical infrastructure. It abstracts the complex physical topology into logical fault domains and automatically translates replication requirements into appropriate domain assignments, shielding users from underlying system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9588855B2Management and utilization of fault domains in distributed cache systems
Publication Date: 2017.03.07 PERNIXDATA INC
  • US9588855B2 patent drawing
  • US9588855B2 patent drawing
  • US9588855B2 patent drawing

AI summary

Fault domains are defined which reflect, either physically or virtually, the topology of a networked computing environment. These defined fault domains are then used to control where cached data is replicated when running in a write back cache mode. Unlike known replication approaches, the present approach replicates such data according to a user's defined data policy and based on the defined fault domains thereby avoiding the user having to keep track of changes in computing system configurations or update their data policy when virtual machines migrate from one host computing system to another.