arkflow-rs/arkflow

High performance Rust stream processing engine seamlessly integrates AI capabilities, providing powerful real-time data processing and intelligent analysis.

ArkFlow

Summary High‑performance Rust stream processing engine that integrates AI capabilities for real‑time data processing, inference, anomaly detection, and complex event processing.

Purpose Provides a durable, extensible platform to ingest data from many sources, process it with SQL, Python UDFs, JSON/Protobuf transforms, etc., and write results to various sinks while enabling the loading and execution of machine learning models for intelligent streaming analytics.

How it works

  • Built on Rust and the Tokio async runtime for low‑latency, high‑throughput processing.
  • Users define streams in a YAML config: an input (Kafka, MQTT, HTTP, file, generate, SQL, etc.), a pipeline with processors (json_to_arrow, SQL, Python UDFs, VRL, batch, Protobuf), an output, optional error_output, and optional buffer (memory, session/sliding/tumbling windows).
  • Events flow asynchronously through the pipeline; durability is achieved via per‑stream write‑ahead log (WAL) giving at‑least‑once delivery, with exactly‑once available for transactional sinks.
  • An optional Hub and web console form a control plane to observe, configure, and operate multiple ArkFlow nodes as a fleet.

Key features

  • High performance: Rust + Tokio.
  • Durable delivery: WAL‑based at‑least‑once, optional exactly‑once for transactional sinks.
  • Multiple data sources: Kafka, MQTT, HTTP, files (CSV/JSON/Parquet/Avro/Arrow), SQL, NATS, Pulsar, Redis, WebSocket, Modbus, memory, generate, and combinable multi‑input.
  • Powerful processing: SQL queries, Python UDFs, JSON/Protobuf transforms, VRL, batch processing.
  • Streaming codecs: JSON, Protobuf, Debezium CDC envelopes, Confluent Schema Registry wire‑format.
  • Control plane: Hub + web console for fleet management.
  • Extensible: modular design to add new input, buffer, output, processor components.
  • Buffers: memory, session window, sliding window, tumbling window for backpressure and windowing.

Limitations

  • The README does not specify any particular limitations; details about AI/ML model loading or exact‑once guarantees beyond transactional sinks are not elaborated.

Best for Developers and operators who need a cloud‑native, high‑throughput stream processing engine that can run machine learning models on streaming data for real‑time inference, anomaly detection, and complex event processing across heterogeneous data sources.

Related

  • Project
  • Project
  • Project
  • Project
  • Project