Stream Adapter for Batch Processing Frameworks
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
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
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
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
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
Data Source
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.


