Distributed Two-Tier State Machine for Fault-Tolerant Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing fault-tolerant distributed data store systems face challenges in maintaining consistency and efficiency due to limitations in synchronization protocols such as two-phase commit, three-phase commit, and state machine approaches, which are not resilient to all failure configurations and do not fully utilize modern multi-core architectures.

Innovation Solution

The implementation of a fault-tolerant distributed two-tier state machine using the Executive Paxos protocol, where one device acts as a leader to execute functions and broadcast commands, ensuring that commands are executed in logical precedence order and stored in stable storage, allowing for concurrent execution and fault tolerance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional synchronization protocols (two-phase commit, three-phase commit) are used to maintain consistency among replicas, then data consistency is improved, but system blocking and failure resilience deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem blocking
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the synchronization protocol into distinct phases: preparation phase (where leaders prepare commands), execution phase (where commands are executed), and recovery phase (where failures are handled). This segmentation allows non-blocking operation by separating consistency maintenance from transaction execution, enabling parallel processing of transactions while maintaining replica consistency through the prepared commands.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The protocol dynamically adapts to failure configurations through the recovery phase mechanism. When failures are detected, the system dynamically transitions to recovery mode, electing new leaders and re-executing commands. This dynamic response enables the system to maintain data consistency without blocking productive operations, as the recovery process handles failures asynchronously rather than synchronously.

Inventive Principle:
Principle #15Dynamics

2Reliability

If conventional synchronization protocols are used to maintain consistency among replicas, then data consistency is improved, but resilience to failure configurations deteriorates

Engineering Contradiction:
Improvedata consistencyVSAvoidfailure resilience
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The preparation phase performs preliminary actions by having leaders prepare commands before execution. This preliminary preparation ensures that commands are validated and ready in advance, so when failures occur during execution, the system can recover more effectively because the command structure is already established. The preliminary action of command preparation enables better failure resilience without compromising data consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The protocol implements feedback mechanisms through the recovery phase, where the system continuously monitors replica states and failure conditions. When failures are detected, the feedback loop triggers recovery procedures including leader election and command re-execution. This feedback-driven approach enables the system to adapt to various failure configurations while maintaining data consistency, improving both resilience and adaptability.

Inventive Principle:
Principle #23Feedback

3Reliability

If state machine approach is used for distributed computing, then fault tolerance is improved, but utilization of multi-core architectures deteriorates

Engineering Contradiction:
Improvefault toleranceVSAvoidmulti-core utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the state machine execution into independent preparation and execution phases that can run concurrently on different processors. Leaders prepare commands in parallel while followers execute them independently, enabling multi-core utilization. This segmentation maintains fault tolerance by ensuring all replicas follow the same prepared commands while allowing parallel processing that utilizes multiple CPU cores.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The protocol adds a temporal dimension to state machine execution by separating preparation and execution phases. Instead of executing state machine transitions sequentially as in traditional approaches, the system prepares commands in one temporal phase and executes them in another, allowing concurrent operations across multiple cores. This dimensional separation maintains fault tolerance while enabling parallel processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Reliability

If all commands are broadcast to all devices to ensure consistency, then data consistency is improved, but network bandwidth consumption increases

Engineering Contradiction:
Improvedata consistencyVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system applies local quality by having followers execute commands locally without requiring broadcast to all devices. Each follower receives and executes commands independently based on the preparation phase results. This local execution approach maintains data consistency among replicas while significantly reducing network bandwidth consumption compared to broadcasting all commands to all devices.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The protocol extracts the essential consistency requirement from the broadcasting mechanism. Instead of broadcasting all commands to ensure consistency, the system extracts the key information (prepared commands) and distributes only what is necessary. Followers execute these extracted commands locally, maintaining consistency without the network overhead of full broadcasts to all devices.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10135929B2Fault-tolerant data processing computer system and method for implementing a distributed two-tier state machine
Publication Date: 2018.11.20 ITA SPOKA KOMANDYTOWA
  • US10135929B2 patent drawing
  • US10135929B2 patent drawing
  • US10135929B2 patent drawing

AI summary

A fault-tolerant data processing computer system and method for implementing a distributed two-tier state machine aimed for distributed (replicated) data stores, in which consistency is maintained despite the failure of any number of replicas and communication paths. In the distributed two-tier state machine, one process (device) in a network of processes (devices) is chosen as the leader, and that leader is responsible for executing functions that return state machine commands, and for broadcasting the commands to the other processes. The processes execute the commands in the logical precedence order that corresponds to the order of function executions that return these commands. The system and method ensures that each of the processes issues exactly the same sequence of commands for execution, such that each command in the sequence, except the first one, has a precedent command on which the command logically depends.