Non-blocking Transaction Registration for Distributed Data Servers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed computing environments, traditional relational database systems face challenges in coordinating large numbers of data servers with complex transactions, leading to registration delays that hinder processing efficiency and increase response times due to blocking registration methods.
Innovation Solution
A non-blocking transaction registration method allows each process to proceed before registration is complete, utilizing a two-phase commit protocol and internal rollback mechanisms to ensure ACID properties while reducing unnecessary messaging and bandwidth usage, enabling higher parallelism and throughput.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional blocking registration method is used, then database consistency is maintained through two-phase commit protocol, but processing efficiency decreases and response time increases due to processes being blocked during registration
Solution Approach 1:
The patent applies preliminary action by performing data processing operations before registration completion. Processes execute their intended operations (reads, writes, computations) on partitioned data while the registration is still being processed asynchronously in the background, rather than waiting for registration to complete first. This allows the system to maintain consistency through two-phase commit while significantly improving processing efficiency by eliminating the blocking wait time.
2Reliability
If registration is performed for all processes before processing, then transaction coordination is ensured, but response time increases due to the blocking nature of registration
Solution Approach 1:
The system performs data processing operations in advance before registration is complete. Child service processes execute their processing tasks on partitioned data while the parent process continues with registration procedures asynchronously. This preliminary execution of processing operations eliminates the time loss associated with blocking registration, while transaction coordination is maintained through the two-phase commit protocol that commits or rolls back all processes atomically.
3Reliability
If blocking registration is used to ensure proper transaction enlistment, then ACID properties are maintained, but concurrency and throughput decrease due to processes waiting for registration
Solution Approach 1:
The patent enables processes to perform their intended operations on partitioned data before registration completion, thereby maintaining high concurrency and throughput. The ACID properties are preserved because the two-phase commit protocol ensures that all processes are atomically committed or rolled back. By separating the timing of data processing from registration completion, the system achieves both high productivity and reliability.
4Reliability
If traditional registration approach is used, then transaction manager can coordinate all processes, but messaging overhead and bandwidth usage increase due to sequential registration requirements
Solution Approach 1:
The system performs data processing operations before registration completion, allowing processes to proceed with their work while registration is handled asynchronously. This approach reduces messaging overhead and bandwidth usage because the transaction manager doesn't need to maintain blocking communication channels with all processes. The two-phase commit protocol still ensures proper coordination, but with reduced communication overhead since processes aren't blocked waiting for registration responses.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for transaction registration is described herein. The method includes sending, for a transaction manager, a registration request for a transaction. The method also performing data accesses on a data server. The registration request is non-blocking to the data accesses. The method further includes performing a two-phase commit process for the data server if the registration request is accepted. Additionally, the method includes handling the rollback if the transaction registration is rejected.