Coordinator Election for Distributed Transaction Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed object-based storage systems, the two-phase commitment protocol can lead to blocking issues when the coordinator is faulty, causing participants to wait excessively for a transaction conclusion, and existing solutions like state acknowledgment increase interactive processes, reducing system performance.
Innovation Solution
A method where a new coordinator is elected from participants after the original coordinator fails, and by sending query messages with transaction IDs and object versions, the system determines the transaction conclusion based on response messages from participants, allowing for efficient transaction processing even if the original coordinator is not faulty.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the two-phase commitment protocol is used to ensure atomicity of distributed transaction commitment, then transaction consistency is improved, but system blocking occurs when the coordinator is faulty causing participants to wait excessively
Solution Approach 1:
The patent applies preliminary action by having participants proactively query each other's transaction states before the coordinator can fail. Participants send query messages to determine if transactions should be committed or aborted, eliminating the need to wait for coordinator conclusions and preventing blocking while maintaining consistency through predefined query-response protocols
2Loss of time
If state acknowledgment technology is used to avoid blocking by having participants query transaction states, then blocking is reduced, but excessive interactive processes reduce system performance
Solution Approach 1:
The patent extracts the essential function of state acknowledgment by having participants query only critical transaction state information from each other, rather than engaging in excessive interactive processes. This selective information exchange maintains blocking avoidance while improving system performance by minimizing unnecessary communications
Solution Approach 2:
Participants perform preliminary queries to determine transaction states before conflicts arise, allowing them to make commit/abort decisions based on pre-collected information rather than engaging in prolonged interactive negotiations, thus reducing both blocking and performance overhead
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention provides a transaction processing method, which is applied to a coordinator, where the coordinator is communicatively connected to participants. The method includes: sending, by the coordinator, a query message to each participant; drawing, by the coordinator, a conclusion according to the response messages, executing, by the coordinator, the conclusion, and sending the conclusion to the participants, where the conclusion includes at least one of the following: if any one of the response messages carries first information, the conclusion is to execute the transaction, where the first information indicates that the participant does not contain the transaction ID and contains the object ID, and change information of the object in the participant is the same as change information of the object in the coordinator; and if any one of the response messages carries second information, the conclusion is to abort the transaction, where the second information indicates that the participant does not contain the transaction ID and contains the object ID, and change information of the object in the participant is different from change information of the object in the coordinator.