Log-Coordinated Data Store Lifecycle Transitions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed applications face challenges in maintaining high performance and consistency as they scale, due to issues with locking mechanisms and 'stop-the-world' pauses, especially in latency-sensitive environments with complex network configurations and high rates of state transitions.

Innovation Solution

A dynamic directed acyclic graph (DAG) of replication nodes is used to manage application state changes, allowing for asynchronous propagation of configuration-delta messages and avoiding synchronization pauses, enabling fault-tolerant and efficient state management with minimal downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If locking mechanisms are used to manage application state changes, then consistency is improved, but performance becomes a bottleneck

Engineering Contradiction:
Improvestate consistencyVSAvoidstate transition throughput
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent extracts the locking mechanism from the state management process and replaces it with a log-coordinated approach. Instead of locking state information to ensure consistency, the system uses a distributed log that coordinates state transitions across multiple data stores without requiring locks, thereby eliminating the performance bottleneck while maintaining consistency through causal ordering of log entries.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a log coordinator as an intermediary component that manages state transitions. The log coordinator assigns log numbers to state changes and coordinates propagation to multiple data stores, replacing the traditional locking mechanism. This intermediary enables consistent state management without the performance overhead of locks.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If state information is propagated asynchronously, then performance is improved, but consistency may be compromised

Engineering Contradiction:
Improvestate transition throughputVSAvoidstate consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent implements feedback mechanisms where data stores send acknowledgments to the log coordinator upon receiving state transition messages. The log coordinator tracks which data stores have received which log numbers and uses this feedback to determine when propagation is complete. This feedback loop ensures consistency is maintained even during asynchronous propagation by coordinating completion across all data stores.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If stop-the-world pauses are used for synchronization, then consistency is improved, but latency increases

Engineering Contradiction:
Improvestate consistencyVSAvoidsynchronization downtime
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent enables continuous state transition processing without stop-the-world pauses. Multiple state transitions can be processed concurrently and asynchronously across different data stores, with the log coordinator coordinating propagation in the background. This eliminates the need to pause application operations for synchronization, maintaining continuous useful action while ensuring consistency through coordinated log-based propagation.

Inventive Principle:
Principle #20Continuity of useful action

4Productivity

If more servers are added to handle high state transition rates, then capacity is improved, but system complexity increases

Engineering Contradiction:
Improvestate transition handling capacityVSAvoiddistributed system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the state management functionality into a centralized log coordinator that handles coordination for multiple data stores. Instead of adding complexity at the distributed system level, the log coordinator consolidates coordination logic and uses efficient log-number-based sequencing to manage high throughput. This combining approach scales capacity without proportionally increasing system complexity.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10373247B2Lifecycle transitions in log-coordinated data stores
Publication Date: 2019.08.06 AMAZON TECH INC
  • US10373247B2 patent drawing
  • US10373247B2 patent drawing
  • US10373247B2 patent drawing

AI summary

Based at least in part on an optimization goal determined for a storage group comprising a plurality of data stores for which writes requests are coordinated by a log-based transaction manager, one or more lifecycle transitions are identified for data objects stored in a first data store. In accordance with a first lifecycle transition, a data object is to be transferred from the first data store to a second data store based at least in part on a duration for which the data object has been resident at the first data store. A transition agent is assigned by a configuration manager to implement the first lifecycle transition.