FIFO Queue Replication via Transaction Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Message queues are prone to data loss due to power failures or other events, leading to operational disruptions and significant financial losses, as existing recovery methods are difficult and time-consuming, and may not fully restore lost data.

Innovation Solution

Implementing a global queue system through replication, where transactions in a local queue are replicated to a remote queue, maintaining transaction order and reducing bandwidth usage, allowing for efficient recovery with minimal data loss.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If message queue data is replicated to multiple regions, then data loss is reduced and reliability is improved, but bandwidth consumption increases

Engineering Contradiction:
Improvedata loss preventionVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary actions by replicating only the necessary transaction metadata (send and delete requests) to remote regions before failures occur. This allows the system to have backup data ready in advance without continuously syncing all queue operations, reducing bandwidth consumption while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system extracts only the essential transaction information (send and delete requests) from the complete queue operations and replicates only this extracted data to remote regions. By taking out only what is necessary for recovery rather than replicating entire queue states, bandwidth consumption is significantly reduced while still preventing data loss.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If all queue transactions are replicated to remote regions, then data recovery capability is improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system extracts and replicates only the essential transaction metadata (send and delete requests) rather than all queue operations. This extraction approach reduces processing overhead while maintaining data recovery capability, as only the critical information needed for reconstruction is replicated.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system applies partial action by replicating only a subset of queue transactions (specifically send and delete requests) rather than all operations. This partial replication is sufficient for data recovery purposes while reducing the complexity and processing overhead associated with replicating every queue operation.

Inventive Principle:
Principle #16Partial or excessive action

3Stability of the object's composition

If transaction order is maintained across replicated queues, then data integrity is improved, but processing time and system complexity increase

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system performs preliminary action by capturing and preserving transaction order information in advance during the replication process. By pre-organizing replicated transactions in their correct sequence, the system maintains data integrity without incurring processing time penalties during failure recovery, as the ordering work is already done.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates simplified copies of transaction metadata that inherently preserve order information. By copying the essential transaction structure with its embedded sequencing data, the system maintains data integrity while reducing processing complexity compared to implementing complex ordering mechanisms during recovery.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11080113B1Fifo queue replication
Publication Date: 2021.08.03 AMAZON TECH INC
  • US11080113B1 patent drawing
  • US11080113B1 patent drawing
  • US11080113B1 patent drawing

AI summary

A fifo queue service of a provider network allows clients replicate a fifo queue to a secondary backup queue of another region. A local instance of the queue service receives and stores send/receive/delete transactions in an order. The service instance applies the transactions to a primary fifo and replicates only the send requests and delete requests to secondary fifo queue of a remote instance of the fifo queue service (e.g., at another region). The remote instance determines, based on ordering metadata of a replicated request, that the replicated request can be stored in accordance with the ordering metadata (e.g., the replicated request depends on another request that has also been received/replicated). In response, the remote secondary instance stores and applies the replicated request to a secondary fifo queue.