Distributed Saga Execution Coordinator Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional saga implementations face scalability issues and complexity in microservice environments, particularly in cloud settings, due to the need for centralized coordination and management of transactions, which can lead to single points of failure and difficulty in handling cyclic dependencies and increased workloads.

Innovation Solution

A distributed saga execution and coordination system is introduced, where saga execution coordinators (SECs) are collocated with services and share a distributed saga log, allowing multiple SEC instances to manage transactions, process actions, and document status, thereby providing a fault-tolerant and scalable solution that eliminates single points of failure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a centralized saga coordinator is used to manage distributed transactions, then transaction coordination is simplified, but the system creates a single point of failure and reduces scalability

Engineering Contradiction:
Improvetransaction coordinationVSAvoidsingle point of failure
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The centralized saga coordinator is segmented into multiple distributed saga execution coordinator instances, each capable of independently managing saga transactions. This segmentation eliminates the single point of failure while maintaining coordination capabilities through the shared distributed saga log that all instances access.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If a centralized saga coordinator is used to manage distributed transactions, then transaction coordination is simplified, but system scalability is reduced

Engineering Contradiction:
Improvetransaction coordinationVSAvoidsystem scalability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The coordinator function is segmented across multiple independent instances that can scale horizontally. Each instance handles a portion of the transaction coordination load, enabling the system to scale with increased throughput while maintaining simplified coordination through the shared distributed saga log.

Inventive Principle:
Principle #1Segmentation

3Reliability

If multiple saga coordinator instances are deployed to improve reliability and scalability, then fault tolerance increases, but system complexity increases

Engineering Contradiction:
Improvefault toleranceVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Multiple saga coordinator instances are merged through a shared distributed saga log, which consolidates the state and coordination information. This merging approach allows multiple instances to provide fault tolerance while avoiding the complexity of inter-instance communication and synchronization protocols.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The distributed saga log acts as an intermediary between multiple coordinator instances, mediating their interactions and providing a unified view of saga state. This intermediary simplifies the system architecture by eliminating the need for direct peer-to-peer communication between coordinator instances.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If a distributed saga execution model is implemented, then workload distribution improves, but coordination overhead increases

Engineering Contradiction:
Improveworkload distributionVSAvoidcoordination overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The distributed saga log serves as an intermediary that automates coordination tasks, reducing the manual coordination overhead. While the log introduces some access overhead, it eliminates the need for complex inter-instance communication and synchronization, resulting in net reduced coordination time.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11799740B2Distributed saga execution and coordination
Publication Date: 2023.10.24 RED HAT LLC
  • US11799740B2 patent drawing
  • US11799740B2 patent drawing
  • US11799740B2 patent drawing

AI summary

A system includes a distributed saga log, a first service, a second service, a first saga execution coordinator (SEC) instance collocated to the first service, and a second SEC instance collocated to the second service. The first SEC instance is configured to manage a transaction for the first service, access the distributed saga log, perform a task identified in the distributed saga log, and document actions initiated by the first SEC instance in the distributed saga log. The distributed saga log is accessible to the first SEC instance and the second SEC instance. Additionally, the distributed saga log is configured to maintain saga processing information associated with the actions initiated by the first SEC instance and the actions initiated by the second SEC instance.