Documentation
An overview of how EdgeFlowHub is put together and the concepts you will work with.
Architecture
EdgeFlowHub runs on a network of origin nodes deployed in multiple regions. Each node terminates client connections, executes pipeline stages locally and forwards results to configured destinations. Nodes are stateless; configuration is distributed from the control plane and cached on every node.
Nodes are addressed by role, region code and index, for example
origin-tll-01. Region codes follow IATA airport codes.
Core concepts
Streams
A stream is an ordered sequence of events from a single producer. Events are JSON or binary payloads up to 1 MB with an optional key used for partitioning.
Pipelines
A pipeline is a chain of stages applied to a stream on the edge node:
- filter — drop events that don't match a predicate;
- transform — reshape or enrich payloads;
- aggregate — window events by time or count;
- route — deliver results to one or more destinations.
pipeline "sensor-rollup" {
source = stream("sensors")
filter = "temperature != null"
aggregate = window("60s", avg("temperature"))
route = destination("analytics")
}
Destinations
Destinations are external endpoints that receive processed data: HTTP webhooks, object storage buckets or message queues. Delivery is at-least-once with exponential back-off retries.
Health checks
Every node exposes GET /healthz, which returns 200 ok when the node
accepts traffic. Load balancers should remove a node after three consecutive failures.
Access
EdgeFlowHub is in private preview and access is by invitation only. Public sign-up is not available yet. To request access, write to access@edgeflowhub.net with a short description of your workload and the regions you need.