Stream Management Service Workload Distribution via Isolated Read Channels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management and orchestration of large, dynamically fluctuating streams of data remain challenging due to workload imbalances and resource inefficiencies in distributed systems, leading to performance issues and underutilization, especially as systems grow and face failures like connectivity loss and hardware failures.

Innovation Solution

A data stream management service (SMS) is implemented with dynamically configurable resources and isolated read channels (IRCs) to manage workload distribution, allowing for customizable read scalability and isolation, using techniques like proactive migration and partition storage reconfiguration to ensure resource allocation meets diverse application needs, and employing persistent network connections for efficient data transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

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

Engineering Contradiction:
Improvesystem capacityVSAvoidperformance consistency
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The system segments the data stream into multiple partitions that can be independently processed by different computing resources. This segmentation allows workload distribution across multiple nodes, preventing any single resource from becoming a bottleneck while maintaining balanced performance across the distributed system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adjusts workload distribution based on real-time resource availability and performance metrics. Load balancers continuously monitor system state and redirect data streams to optimize performance, ensuring that workload imbalances are corrected adaptively as conditions change.

Inventive Principle:
Principle #15Dynamics

2Productivity

If computing resources are shared among multiple customers, then resource utilization efficiency improves, but management and orchestration complexity increases

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidmanagement complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces load balancers and resource management intermediaries that abstract the complexity of multi-customer resource sharing. These intermediaries handle workload distribution, authentication, and coordination, allowing multiple customers to share resources efficiently without directly managing the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates universal resource pools that can serve multiple customers with different requirements. By designing infrastructure that handles diverse workloads through common mechanisms, the system achieves efficient multi-customer support without proportionally increasing management complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If data streams are processed in real-time, then analysis speed improves, but system reliability decreases due to connectivity losses and hardware failures

Engineering Contradiction:
Improveanalysis speedVSAvoidsystem availability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-positioning data in distributed buffers and maintaining redundant connection paths before failures occur. This allows the system to quickly recover from connectivity losses and hardware failures without significant disruption to real-time processing, as backup resources are already prepared.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements cushioning mechanisms through redundant data replication and error correction codes. Multiple copies of data are maintained across different nodes, and checksums verify data integrity, providing a buffer against data loss from failures while maintaining real-time processing capabilities.

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

Data Source

PatentUS11075984B1Workload management at streaming data service supporting persistent connections for reads
Publication Date: 2021.07.27 AMAZON TECH INC
  • US11075984B1 patent drawing
  • US11075984B1 patent drawing
  • US11075984B1 patent drawing

AI summary

At a platform at which stream data retrieval requests directed to a stream management service are processed, respective metrics of reads being performed using a first set of one or more persistent network connections established between the platform and one or more stream processing applications are collected. A request to read additional stream data requests is directed to the platform based at least in part on a decision made by a load balancer. The request is rejected based on a determination that the collected metrics satisfy a threshold.