# ArroyoSystems/arroyo

Distributed stream processing engine in Rust

Repository: https://github.com/ArroyoSystems/arroyo
Canonical: https://ross.abutalabs.com/products/arroyo
Homepage: https://arroyo.dev
Language: Rust
License: Apache-2.0
License Family: permissive
Topics: data, dev-tools, infrastructure, kafka, rust, sql, stream-processing, data-stream-processing, stream-processing-engine
Last push: 2026-08-20T20:52:20+00:00

## Health v2 (maintenance only)
Score: 78/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 47, longevity 89
- inputs: {"age_days": 1251, "days_push": 13, "days_rel": 275, "gap_med": 60.0, "n_releases_24m": 7}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 5016, forks 375 (observed 2026-08-28T04:09:04.699356+00:00)

## What it is
Arroyo is a distributed stream processing engine written in Rust that lets users run stateful computations on high-volume real-time data streams using SQL. It supports windows, joins, event-time processing, checkpointing, and connectors like Kafka and Iceberg, scaling to millions of events per second.

## Use cases
- process kafka streams with sql
- real-time fraud detection
- stream data into a data lake or iceberg tables
- real-time product analytics dashboards
- generate ml features in real time
- run streaming pipelines on kubernetes
- replace flink with a simpler sql stream processor

## When to choose
- you want to build streaming pipelines in SQL without hiring streaming experts
- you need sub-second results on high-volume event streams
- you want a lightweight single-binary engine that deploys easily to Docker or Kubernetes
- you need stateful operations like windows, joins, and checkpointing with fault tolerance
- you want to ingest real-time data into Iceberg, a data warehouse, or a data lake

## When to avoid
- your workloads are purely batch and latency is not a concern
- you need the mature ecosystem and extensive connectors of Apache Flink or Spark Streaming
- you require complex custom pipeline logic beyond SQL and UDFs
- you need Windows support, which is not well supported

## Facets
- artifact type: application
- maturity: active
- function: streaming, etl, data-science, cli, web-framework
- domain: big-data, analytics, databases, developer-tools
- platform: rust, cloud, self-hosted
- tags: stream-processing, sql-pipelines, kafka, iceberg, event-time, watermarks, stateful-computation, dataflow, flink-alternative, real-time-analytics, sql, data-engineering, real-time, linux, macos, docker, kubernetes

## Member repositories
- ArroyoSystems/arroyo (main) score 78

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:04.699356+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:17:31.431134+00:00, confidence not recorded.
  - readme: https://github.com/ArroyoSystems/arroyo (fetched 2026-08-28T04:09:04.699356+00:00, sha 77b98a3b8b47)
  - homepage: https://arroyo.dev (fetched 2026-08-29T08:58:22.148147+00:00, sha 8b529511c6ed)
  - site_page: https://doc.arroyo.dev/getting-started (fetched 2026-08-29T08:58:22.152666+00:00, sha b25a687ed45c)
  - site_page: https://www.arroyo.dev/about (fetched 2026-08-29T08:58:22.154420+00:00, sha e716daa66fb6)
  - registry_crates: https://crates.io/api/v1/crates/arroyo (fetched 2026-08-29T08:58:22.163402+00:00, sha 2cc07f67a201)
  - site_page: https://doc.arroyo.dev (fetched 2026-08-29T08:58:22.150810+00:00, sha 7a8a136ef628)
  - site_page: https://doc.arroyo.dev/sql (fetched 2026-08-29T08:58:22.156084+00:00, sha 9fedd3cfea00)
  - site_page: https://doc.arroyo.dev/deployment (fetched 2026-08-29T08:58:22.157682+00:00, sha 87f14da8c82d)
  - site_page: https://www.arroyo.dev/blog/arroyo-0-15-0 (fetched 2026-08-29T08:58:22.161310+00:00, sha fe613a992fd6)
- Data as of 2026-08-30T08:39:29.467469+00:00.
