Arroyo

Rust stream processing engine running SQL pipelines with checkpointed state.

Provider
default
Category
Messaging
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
checkpointIntervalSecondsinteger—no—▸ 10
checkpointStore · component propertyenumlocal | s3 | gcs | azure-blobnolocalinherited
configDatabase · component propertyenumsqlite | postgresnosqliteinherited
exactlyOnceboolean—nofalseinherited
instancesinteger—no—inherited
lateDataPolicyenumdrop | shift | sidelineno—inherited
managedboolean—nofalse▸ false
stateBackendenummemory | rocksdb | externalnomemory▸ memory
watermarkSecondsinteger—no—inherited
windowingenumnone | event-time | processing-timenonone▸ event-time
Rules that apply · 1

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

windowed-aggregation-without-watermark

Event-time windows need a watermark to know when a window is complete. Without one the processor either waits forever or closes windows early and silently drops late events.

  • — all of these hold:
  • — the node's `windowing` is "event-time"
  • — the node's `watermarkSeconds` has no value
Use it in a design
nodes:
  - { id: "arroyo", component: "arroyo" }
Other Stream processor products · 33
Realtime Compute for Apache Flinkalibaba-flinkalibabacloudstream-processorAmazon EventBridge Pipesaws-eventbridge-pipesawsstream-processorAmazon Data Firehoseaws-firehoseawsstream-processorAmazon Managed Service for Apache Flinkaws-managed-flinkawsstream-processorAmazon OpenSearch Ingestionaws-opensearch-ingestionawsstream-processorAzure Stream Analyticsazure-stream-analyticsazurestream-processorCloudflare Logpushcloudflare-logpushcloudflarestream-processorCloudflare Pipelinescloudflare-pipelinescloudflarestream-processorApache Beambeamstream-processorBytewaxbytewaxstream-processorDrasidrasistream-processorApache Flinkflinkstream-processorKafka Streamskafka-streamsstream-processorksqlDBksqldbstream-processorLogstashlogstashstream-processorMaterializematerializestream-processorApache NiFinifistream-processorNorikranorikrastream-processorRedpanda Connectredpanda-connectstream-processorRisingWaverisingwavestream-processorApache Samzasamzastream-processorSnowplowsnowplowstream-processorSpark Structured Streamingspark-streamingstream-processorApache Stormstormstream-processorGeneric stream processorstream-processorstream-processorTremortremorstream-processorGoogle Cloud Dataflowgoogle-dataflowgcpstream-processorManufacturing Data Enginegoogle-manufacturing-data-enginegcpstream-processorActivity Tracker Event Routingibm-activity-tracker-event-routingibmstream-processorIBM Cloud Logs Routingibm-logs-routingibmstream-processorIBM Cloud Metrics Routingibm-metrics-routingibmstream-processorOCI Connector Huboci-connector-hubocistream-processorOCI GoldenGate Stream Analyticsoci-goldengate-stream-analyticsocistream-processor
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Arroyo: Rust stream processing engine with SQL pipelines. pipeline.default-checkpoint-interval is
# 10s ("Arroyo, Configuration"), state is held in memory on worker nodes and checkpoints are written
# to remote object storage - S3, GCS, Azure Blob or an S3-compatible store - so pipelines can recover
# ("Arroyo, Architecture"). Watermarks use a fixed offset from the last event timestamp.
schemaVersion: "1"
type: "component"
id: "arroyo"
kind: "stream-processor"
provider: "default"
docs: "https://doc.arroyo.dev/configuration"
defaults:
  managed: false
  windowing: "event-time"
  checkpointIntervalSeconds: 10
  stateBackend: "memory"
properties:
  checkpointStore:
    type: "enum"
    values: ["local", "s3", "gcs", "azure-blob"]
    default: "local"
  configDatabase:
    type: "enum"
    values: ["sqlite", "postgres"]
    default: "sqlite"

The same page as markdown, for an agent: /catalogue/components/arroyo.md