🤖 AI Summary
This work addresses the inefficiency of existing serverless computing and stream processing systems in handling short-lived, lightweight, and unpredictable stateful data streams. To bridge this gap, the paper proposes “stream functions”—an extension to the function-as-a-service model that elevates short streams to first-class units of execution, state management, and autoscaling. Stream functions express inter-event logic through iterator-based interfaces, effectively integrating stream processing semantics with the elasticity of serverless architectures. This approach is the first to treat short streams as fundamental execution units, thereby filling a critical void in lightweight stateful stream processing. Experimental evaluation in video processing scenarios demonstrates that the proposed system reduces runtime overhead by approximately 99% compared to mainstream stream processing engines, while maintaining performance comparable to conventional serverless functions.
📝 Abstract
Serverless computing and stream processing represent two dominant paradigms for event-driven data processing, yet both make assumptions that render them inefficient for short-running, lightweight, and unpredictable streams that require stateful processing. We propose stream functions as a novel extension of the Function-as-a-Serivce model that treat short streams as the unit of execution, state, and scaling. Stream functions process streams via an iterator-based interface, enabling seamless inter-event logic while retaining the elasticity and scale-to-zero capabilities offered by serverless platforms. Our evaluation shows that stream functions reduce the processing overhead by ~99 % compared to a mature stream process- ing engine in a video-processing use case. By providing comparable performance to serverless functions with stream semantics, stream functions provide an effective and efficient abstractions for a class of workloads underserved by existing models.