Transaction Processing via Non-Volatile Memory State Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing transaction processing methods require writing transaction data to both internal and external memory twice, leading to low processing speed due to the need for write-ahead logging, which complicates the transaction processing process.

Innovation Solution

A transaction processing method and apparatus that utilize a non-volatile memory to record transaction status information, allowing transaction data to be written directly to external memory after being committed in the non-volatile memory, eliminating the need for a log area and simplifying the processing flow by setting different states to track data write status.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If transaction data is written to internal memory before external memory using write-ahead logging, then data integrity and atomicity are ensured, but transaction processing speed decreases due to double writing

Engineering Contradiction:
Improvedata integrityVSAvoidtransaction processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the memory system into non-volatile memory (acting as internal memory) and external memory, with distinct status states (uncommitted, committed, backup) for transaction data. This segmentation allows the system to track write status without requiring traditional write-ahead logging to external memory, thereby improving processing speed while maintaining data integrity through state management.

Inventive Principle:
Principle #1Segmentation

2Reliability

If write-ahead logging is used to ensure atomicity, then transaction consistency is maintained, but the processing process becomes complex with multiple write operations

Engineering Contradiction:
Improvetransaction consistencyVSAvoidprocessing process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the logging function from the traditional write-ahead logging mechanism by using status information stored directly in the non-volatile memory. Instead of writing to a separate log area in external memory, the system uses status flags (uncommitted, committed, backup) within the non-volatile memory to track transaction state, simplifying the processing process while maintaining consistency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The status information acts as an intermediary between the transaction data and the commit process. By introducing status flags that mediate the transition between uncommitted, committed, and backup states, the system maintains transaction consistency without requiring complex multi-step write-ahead logging procedures.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10467044B2Transaction processing method and apparatus, and computer system
Publication Date: 2019.11.05 HUAWEI TECH CO LTD
  • US10467044B2 patent drawing
  • US10467044B2 patent drawing
  • US10467044B2 patent drawing

AI summary

A transaction processing method, an apparatus, and a computer system are provided. According to the method, after receiving a transaction processing request, status information of the transaction is recorded in a non-volatile memory, where the transaction processing request carries transaction data of a transaction, where the status information of the transaction includes a transaction status, a transaction identifier, and an address, and where the transaction status is an uncommitted state. The transaction data is written to the non-volatile memory according to the address. Then, the transaction status of the transaction is modified to a committed state according to the transaction identifier. Further, after writing the transaction data to an external memory of the computer system from the non-volatile memory, the transaction status of the transaction is modified to a backup state according to the transaction identifier. A transaction data processing speed can be increased in the foregoing manner.