Three Phase Commit Protocol for Distributed File System Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed file systems face challenges in ensuring consistent views of file system data and facilitating partition tolerance, particularly in scenarios where primary storage nodes fail, leading to issues in committing file operations transactions reliably and transparently.

Innovation Solution

A three-phase commit protocol is employed in a distributed file system, utilizing primary and backup commit coordinators to ensure consistent data views and partition tolerance. The protocol involves checkpointing transactions, releasing locks, and allowing backup coordinators to take over in case of primary node failures, ensuring non-blocking commit transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a distributed file system uses traditional commit protocols, then data consistency can be maintained, but system availability and fault tolerance deteriorate when primary storage nodes fail

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by maintaining checkpointed transaction states at backup coordinators before primary node failures occur. This allows the backup coordinator to immediately take over and continue commit operations without waiting for failure detection, thereby maintaining both data consistency and system availability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a backup commit coordinator as an intermediary that can assume the role of the primary commit coordinator when failures occur. The backup coordinator maintains checkpointed states and can seamlessly take over commit operations, ensuring continuous system operation and availability while preserving data consistency through the established checkpoint mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the system implements transparent takeover by backup nodes, then fault tolerance improves, but device complexity increases

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

Solution Approach 1:

The system creates a copy of the commit coordinator's essential state information at the backup coordinator through checkpointing. This copy contains sufficient information for the backup to take over commit operations, providing fault tolerance without requiring complex real-time synchronization mechanisms or redundant hardware systems.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The commit coordinator functionality is segmented into essential state information that can be checkpointed and transferred to a backup coordinator. This segmentation allows the backup to assume specific commit operations without requiring a complete system redesign or complex distributed consensus protocols, thereby improving fault tolerance with manageable complexity.

Inventive Principle:
Principle #1Segmentation

3Reliability

If checkpointing is performed frequently to ensure consistency, then data consistency improves, but processing time and system performance deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs partial checkpointing only of the essential commit state information that is necessary for backup takeover, rather than checkpointing all transaction data. This selective approach maintains data consistency for commit operations while minimizing the overhead and processing time associated with frequent checkpointing.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10242027B2Three phase commit for a distributed file system
Publication Date: 2019.03.26 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10242027B2 patent drawing
  • US10242027B2 patent drawing
  • US10242027B2 patent drawing

AI summary

A technique includes using a primary commit coordinator in a distributed file system as a participant in at least one transaction associated with a file operation to commit the transaction(s) to an associated storage segment of the file system. The primary commit coordinator is used to communicate with at least one other participant in the transaction(s) using a three phase commit protocol to generate transaction states associated with committing the transaction(s). The technique includes selectively checkpointing the transaction states to a backup commit coordinator that is associated with the primary commit coordinator to allow the backup commit coordinator to takeover committing the transaction.