Fluvio Stateful Service Development Kit is in Dev Preview. State operations, windows are part of SSDK.
A decent analog for Fluvio the core functionality of Kafka + Flink + Airflow. Distributed streaming + stateful stream processing + workflow orchestration.
Arroyo and Flink are great stream processing engines with SQL interfaces. Flink is more mature and Arroyo is fast and light since it is written in Rust.
The 2 key differences are:
- The implementation of Fluvio SSDK is using the wasm component model, which natively enables polyglot interfaces. Fluvio operates using YAML to express schema, operators, state, and windows.
- Fluvio SSDK provides a scaffolding for composing end to end event streaming flows in a single composable paradigm to reduce context switching and make the process of development simpler and uniform.
Thank you for the comment. This is certainly not a novel concept. Its an opinionated implementation that is geared towards solving some business problems.
Wasm component model enables the stream processing operations to be natively available to wasm compatible languages.
Fluvio core streaming engine is implemented in Rust.
The first generation stream processing, transformations were initially implemented in Rust needed binding generators to work in Python, JavaScript, Go etc. Also state and window operations and offset management needed to be expressed in application logic.
In the current generation of stream processing wasm component model enables a native support for polyglot stream processing.