Events in, tables out. Nothing running in between.

Every part of this page's pipeline is paid per request. A POST is stored in S3 before it is answered; then eddy, a Lambda function, wakes, reads the new files, updates its SQL models incrementally, commits its state to S3 and freezes. Between events nothing runs and nothing bills.

1. POSTa batch of Segment events
2. S3stored as one JSONL file, then answered
3. eddy wakesreads new files, updates models
4. Frozenstate on S3, costs nothing
–
POST to tables, last wake
–
eddy awake, last wake
–
cost of the last wake
–
total, all wakes

Orders per shop and day

No wakes yet.

Funnel per shop and day

No wakes yet.

Wakes

One line per time eddy woke. A burst of POSTs shares one wake: a wake asked for while another runs is covered by it. Cost is Lambda's arm64 price for eddy's and the waker's memory over the wake's seconds, plus their requests.

No wakes yet.

Send your own

Any Segment message, a list of them, or Segment's {"batch": [...]}. Segment's webhook destination sends its key as Basic auth's user, which works too.