Distributed Key-Value Store Metadata Consistency via Paxos and Scribe

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed computer systems face challenges in maintaining high availability, scalability, and performance for metadata management in file systems, particularly in ensuring consistency and fault-tolerance across multiple nodes.

Innovation Solution

A distributed key-value store system that replicates data across N+1 nodes, uses a consensus protocol like Paxos for fault-tolerance and consistency, and employs a scribe process with distributed locks and sequence numbers to manage metadata, ensuring read-after-read and read-after-write consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is replicated across N+1 nodes in a distributed key-value store, then fault-tolerance and availability are improved, but system complexity and overhead increase

Engineering Contradiction:
Improvefault-toleranceVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements data replication by creating N+1 copies of each key-value pair and distributing them across different nodes in the distributed system. This copying approach ensures that if any single node fails, the data remains accessible through other replicas, thereby achieving fault-tolerance without requiring complex error correction mechanisms

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the distributed key-value store into multiple independent nodes, each holding a portion of the replicated data. This segmentation allows the system to isolate failures to individual nodes while maintaining overall system availability, and enables independent management of each node reducing overall system complexity

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If a consensus protocol like Paxos is used to ensure consistency across nodes, then data consistency is improved, but operation speed and latency increase

Engineering Contradiction:
Improvedata consistencyVSAvoidoperation speed
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

The patent employs preliminary action by pre-establishing quorum thresholds and consensus rules before write operations occur. The system pre-configures which nodes form the quorum and what constitutes a successful write, allowing consensus to be reached more efficiently during actual operations without requiring complex real-time negotiations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where nodes continuously report their state and acknowledgment of writes to the consensus protocol. This feedback allows the system to track which replicas have successfully received and stored data, enabling the consensus protocol to terminate earlier once the required quorum is achieved, thus improving operation speed while maintaining consistency

Inventive Principle:
Principle #23Feedback

3Manufacturing precision

If distributed locks and sequence numbers are employed to manage metadata, then consistency control is improved, but operation overhead and processing time increase

Engineering Contradiction:
Improveconsistency controlVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent introduces distributed locks as intermediary mechanisms that coordinate access to shared metadata between multiple nodes. These locks act as mediators that serialize access to critical sections without requiring complex inter-node communication for every operation, reducing processing time while maintaining consistency control

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses sequence numbers copied with each metadata operation to track and verify consistency across nodes. By attaching sequence numbers to lock acquisitions and releases, the system can efficiently verify consistency without requiring heavy communication overhead, as nodes can independently validate sequences against their local copies

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20220261387A1Performing file system operations in a distributed key-value store
Publication Date: 2022.08.18 COHESITY INC
  • US20220261387A1 patent drawing
  • US20220261387A1 patent drawing
  • US20220261387A1 patent drawing

AI summary

Techniques are disclosed for managing a high performance, fault-tolerant, strongly consistent, distributed key-value store system. The key-value store may store information, such as metadata for a distributed file system. Fault-tolerance means that the distributed key-value store continues to provide access to values in the key-value store in spite of a certain number of node failures. To provide this capability, the key-value store may store copies of (key, value) pair on N+1 nodes in order to provide fault tolerance for the failure of up to N nodes. In addition, metadata describing which nodes store a given value is stored on 2N+1 nodes and the distributed key-value store is sized such that there are 3N+1 nodes in a cluster. Doing so allows the key, value store to tolerate a failure of N nodes, while still maintaining a consistent and available key-value store.