Chained Replication for Data Stream Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management and orchestration of large, dynamically fluctuating streams of data pose challenges due to workload imbalances, security concerns, and the risk of data duplication and loss in distributed systems, leading to performance issues and resource wastage.

Innovation Solution

A stream management system (SMS) with programmatic interfaces and a stream processing service (SPS) that implements dynamic resource provisioning, redundancy groups, and decentralized de-duplication mechanisms to manage and process data streams efficiently, ensuring data integrity and security across distributed nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If more resources are added to handle large data streams, then processing capacity increases, but workload imbalances and performance problems arise

Engineering Contradiction:
Improvedata processing capacityVSAvoidsystem performance stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic resource allocation and load balancing mechanisms that automatically adjust resource distribution based on real-time workload conditions. The system monitors resource utilization and dynamically migrates data processing tasks to maintain balanced workloads across the distributed system, preventing performance degradation while scaling capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system segments data streams into multiple partitions that can be independently processed by different resource groups. This segmentation allows for granular load management and enables the system to handle imbalances by redistributing specific partitions rather than requiring system-wide resource reallocation.

Inventive Principle:
Principle #1Segmentation

2Reliability

If data is stored at external facilities for security, then client control is reduced, but security concerns increase

Engineering Contradiction:
Improvedata securityVSAvoidclient control
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces a trusted intermediary layer that manages data storage and processing at external facilities while maintaining client control through cryptographic mechanisms. Clients retain control over their data via encryption keys and access policies, while the intermediary handles secure storage and processing, resolving the conflict between security and control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements different security and control mechanisms for different data sensitivity levels. Highly sensitive data maintains client-side control with enhanced security measures, while less sensitive data can be processed with greater automation and external management, allowing clients to optimize the balance between security and control on a per-data-set basis.

Inventive Principle:
Principle #3Local quality

3Productivity

If distributed systems grow in size, then processing capability increases, but failure frequency increases

Engineering Contradiction:
Improvesystem processing capabilityVSAvoidsystem failure resistance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements proactive failure prevention mechanisms including predictive monitoring of resource health, automated resource replacement before failures occur, and pre-configured failover paths. The system monitors resource conditions and initiates remediation actions before actual failures impact data processing, cushioning against the increased failure probability inherent in larger distributed systems.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Solution Approach 2:

The system implements automated phase transitions in resource states, moving resources between active, standby, and retired states based on health monitoring and workload conditions. When resources show signs of degradation, the system transitions them to standby mode and activates replacement resources, maintaining system reliability as the distributed system scales.

Inventive Principle:
Principle #36Phase transitions

4Reliability

If de-duplication is implemented to prevent data duplicates, then data integrity improves, but processing overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements selective de-duplication that applies full de-duplication checks only to critical data streams or high-value data, while using lighter-weight duplicate detection mechanisms for other data. This partial application of de-duplication maintains data integrity for essential data while reducing overall processing overhead across the entire system.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system uses cryptographic hashing to create compact representations of data for duplicate detection, replacing expensive full-data comparison operations with efficient hash-based checks. This copying approach maintains data integrity verification while dramatically reducing the processing overhead associated with de-duplication in large-scale distributed systems.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10467105B2Chained replication techniques for large-scale data streams
Publication Date: 2019.11.05 AMAZON TECH INC
  • US10467105B2 patent drawing
  • US10467105B2 patent drawing
  • US10467105B2 patent drawing

AI summary

A replication chain comprising one or more replication nodes of a multi-tenant stream management system is assigned to store data records of a partition of a particular data stream. A data record of the partition is received at a selected replication node of the replication chain. In a sequential order, a respective replica of the data record is stored at each replication node of the chain. An acknowledgement of a successful storage of the data record is provided after the replications are completed.