Partition Tolerance in Cluster Object Store Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems face challenges in managing node failures, which can lead to 'split brain' scenarios where data inconsistencies arise due to partitioning of clusters, resulting in conservative access restrictions that may not be necessary, especially when some data could be safely accessed within a partition.

Innovation Solution

A method that determines the majority of data components for each object within a partition, allowing configuration operations while denying access from other partitions, and permits I/O operations if a quorum of data components is present within a partition, ensuring data integrity and availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If at most one partition of cluster is allowed to be functional at any point in time, then data consistency is maintained, but data availability decreases as access is disallowed to data that could be safely accessed within a partition

Engineering Contradiction:
Improvedata consistencyVSAvoiddata availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by making access permissions object-specific rather than partition-wide. Each object independently determines whether its data components form a quorum within a partition, allowing some objects to be accessed while others remain restricted. This resolves the contradiction by enabling data availability for safe objects while maintaining data consistency for objects that require full cluster coordination.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the cluster into independent object-level access decisions rather than treating the entire partition as a single unit. By evaluating quorum conditions for each object separately, the system allows different objects to have different access states within the same partition, thereby improving overall data availability while maintaining consistency for critical objects.

Inventive Principle:
Principle #1Segmentation

2Reliability

If conservative access restrictions are applied to prevent split brain scenarios, then data inconsistency is prevented, but system availability and operational flexibility are reduced

Engineering Contradiction:
Improvedata consistencyVSAvoidaccess flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic access control where partition availability is not fixed but determined in real-time based on quorum conditions for each object. The system continuously evaluates whether a quorum of data components exists within a partition and adjusts access permissions accordingly, allowing the system to adapt to changing cluster conditions while maintaining data consistency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of access control from a static binary state (entire partition accessible or entirely restricted) to a dynamic state based on quorum thresholds. By using quorum parameters to determine object-level access, the system achieves both data consistency and access flexibility, allowing partitions to be accessed when sufficient data components are present.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If all nodes in a partition are restricted from accessing data, then data consistency across the entire cluster is maintained, but unnecessary access restrictions reduce system productivity

Engineering Contradiction:
Improvecluster-wide data consistencyVSAvoidpartition data access
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by allowing access to only those objects within a partition that meet the quorum condition, rather than restricting access to all objects in the partition. This selective approach enables productive access to data that can be safely accessed while maintaining consistency for objects that require full cluster coordination, thereby improving overall system productivity.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements local quality by applying different access permissions to different objects within the same partition based on their individual quorum status. Objects with sufficient data components within the partition are accessible, while objects requiring data from multiple partitions remain restricted, optimizing both consistency and productivity at the object level.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3528124B1Partition tolerance in cluster membership management
Publication Date: 2020.12.02 VMWARE INC
  • EP3528124B1 patent drawingFigure 1
  • EP3528124B1 patent drawingFigure 2
  • EP3528124B1 patent drawingFigure 3

AI summary

Techniques are disclosed for managing a cluster of computing nodes following a division of the cluster into at least a first and second partition, where the cluster aggregates local storage resources of the nodes to provide an object store, and objects stored in the object store are divided into data components stored across the nodes. In accordance with one method, it is determined that a majority of data components comprising a first object are stored within nodes in the first partition. It is determined that a majority of data components comprising a second object are stored within nodes in the second partition. In one aspect, configuration objects are permitted to be performed on the first object in the first partition while denying access to the first object from the second partition, and on the second object in the second partition while denying access to the second object from the first partition. In another aspect, I/O operations are permitted upon determining that that a quorum number of the component objects contain a full copy of the data of the first virtual disk object.