Semi-Durable Transaction Log Storage for Two-Phase Commit
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed transaction processing systems face performance issues due to slow write speeds in durable storage, which affect the reliability and consistency of transactions and hinder the ability to survive system failures effectively.
Innovation Solution
Implementing a semi-durable storage system that uses non-volatile random-access memory (NVRAM), Magnetoresistive RAM (MRAM), or Ferroelectric RAM (F-RAM) to store transaction logs, allowing for faster write speeds and temporary survival of system failures before data is transferred to durable storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If durable storage is used to store transaction logs, then reliability and system failure survival are improved, but write speed deteriorates
Solution Approach 1:
The patent segments the storage system into two distinct parts: semi-durable storage (NVRAM/MRAM/F-RAM) for transaction log writing and durable storage for long-term data preservation. This segmentation allows each storage type to operate in its optimal performance range, with semi-durable storage handling high-speed write operations and durable storage ensuring reliability.
Solution Approach 2:
The patent introduces semi-durable storage as an intermediary layer between the transaction processing system and durable storage. This intermediary accepts transaction logs at high speed, temporarily stores them, and then transfers them to durable storage asynchronously, thereby decoupling the write speed requirements from the reliability requirements.
2Reliability
If durable storage is used to ensure ACID properties, then transaction reliability is improved, but transaction processing performance deteriorates
Solution Approach 1:
The patent implements preliminary action by writing transaction logs to semi-durable storage immediately during transaction processing, before transferring them to durable storage. This allows the transaction processing system to proceed without waiting for the slower durable storage write operations to complete, while still maintaining ACID properties through the semi-durable storage's persistence capabilities.
Data Source
AI summary
Systems and methods are provided for semi-durable transaction log storage in a two-phase commit protocol transaction processing. An exemplary method includes receiving a distributed transaction comprising a plurality of processes for processing, wherein the processing uses a two-phase commit protocol and preparing, by a main coordinator, at least one participant comprising at least one of the plurality of processes to prepare for execution by the at least one participant. The method further includes receiving, by the main coordinator, information comprising prepared processes of the at least one of the plurality of processes and storing, by the main coordinator, a transaction log comprising the at least one participant and the information to a semi-durable storage. The semi-durable storage may comprise a crash-proof storage that survives system failure. Thus, the semi-durable storage may write the transaction log to the durable storage if there is a system failure.


