Stream Adapter for Batch Processing Frameworks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management and orchestration of large, dynamically fluctuating streams of data for processing remains challenging due to the mismatch between batch-oriented data processing environments and streaming data, which flows continuously with varying arrival rates, and existing technologies struggle to efficiently utilize streaming data for processing.

Innovation Solution

A stream management service (SMS) and a stream-to-batch adapter are introduced to group data stream records for batch-oriented processing, providing a programmatic interface to create, configure, and process streams, and dynamically resizing resources based on performance metrics, allowing for seamless integration with batch-oriented processing frameworks like MapReduce.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If batch-oriented data processing environments use static, fixed data sets input during each processing iteration, then processing stability is improved, but the ability to handle continuously flowing streaming data with varying arrival rates deteriorates

Engineering Contradiction:
Improveprocessing stabilityVSAvoidability to handle streaming data
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent introduces an adapter as an intermediary component between the streaming data source and the batch processing environment. This adapter buffers incoming streaming data and releases it in controlled batches that match the static input requirements of batch-oriented processing frameworks, thereby resolving the contradiction between processing stability and streaming data adaptability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The adapter dynamically adjusts its buffering and batching behavior based on varying data arrival rates. It can resize its internal buffers and adjust batch formation timing to accommodate fluctuations in streaming data while maintaining compatibility with static batch processing requirements

Inventive Principle:
Principle #15Dynamics

2Loss of time

If streaming data flows continuously with varying data arrival rates, then data freshness is improved, but compatibility with batch-oriented processing environments deteriorates

Engineering Contradiction:
Improvedata freshnessVSAvoidcompatibility with batch processing
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The adapter performs preliminary buffering of streaming data before it reaches the batch processing system. By pre-collecting data in buffers and preparing batches in advance, it ensures that batch processing can proceed without waiting for continuous data streams, thus maintaining both data freshness and batch processing compatibility

Inventive Principle:
Principle #10Preliminary action

3Productivity

If virtualization technologies are used to share computing resources among multiple users, then resource utilization efficiency is improved, but management and orchestration complexity deteriorates

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

Solution Approach 1:

The adapter is designed as a universal component that can work with multiple different batch processing frameworks and streaming data sources simultaneously. This multi-functionality simplifies management by providing a single standardized interface layer that handles diverse scenarios without requiring separate complex orchestration for each case

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

Data Source

PatentUS10338958B1Stream adapter for batch-oriented processing frameworks
Publication Date: 2019.07.02 AMAZON TECH INC
  • US10338958B1 patent drawing
  • US10338958B1 patent drawing
  • US10338958B1 patent drawing

AI summary

An indication of an input data stream comprising data records, stored at a stream management service, that are to be batched for a computation at a batch-oriented data processing service is received. A set of data records of the input data stream are identified, based on respective sequence numbers associated with the records, for a particular iteration of the computation. Metadata associated with the particular iteration, comprising identification information associated with the set of records on which the computation is performed during the particular iteration, is saved in a repository.