Eon Yukon

Power real-time AI and ML applications on live data

Eon Yukon computes features and aggregates as events land and serves them by key in under 1 ms, from the same tables your models train on.

Illustration of one data store serving a live app and a model training job at the same time

Real-time AI needs the same data online and offline

Recommendations, personalization and customer-facing agents need each user's latest state at the moment of the request. Teams usually build it twice: a streaming job that computes features into a cache for serving, and a batch pipeline that computes them again in the lake for training. The two drift apart, and the cache needs its own sync jobs and on-call.

Features computed twice

Online features come from a streaming job and offline features from a batch pipeline, so the values a model trains on and the values it serves disagree.

Caches to fill and sync

Jobs copy state computed from your streams into Redis or Aerospike, and every failed sync serves stale state to the application.

Stateful jobs to operate

Windowed aggregations in Flink keep state on local disks, with checkpoints and savepoints to size, tune and recover.

Telemetry too big to keep

Model calls, traces and evaluations arrive at high volume, and naive sampling drops the rare failures you most need to evaluate.

How Eon powers real-time AI

Eon Yukon reads each event once, keeps windowed aggregates current in the same pass that writes the Apache Iceberg table, and serves the result by key in under 1 ms, on 4× to 7× less compute than open-source Spark and Flink in Eon's benchmark. One definition computes what applications read online and what models train on, so there's no second pipeline to drift. Eon is the data layer: it computes and serves features, and your models train and run where they do today (no training, GPUs, model hosting or vector search).

Aggregations kept current as data lands

Windows, distinct counts and top-k are updated in the same pass that deduplicates and writes each event, with no stateful job to run and no state to size.

Live counts as data lands: public GitHub events counted by type as they arrive, in a live demo built on Eon Yukon

Live state by key in under 1 ms

Eon Yukon serves each key's aggregate through a Redis-compatible API: hot keys from memory, warm keys from local disk, everything else from the lake. A checkout service or support agent gets a customer profile back current to within seconds of the last event, in 0.4 ms in the example shown.

One read by key returns a customer's live profile in 0.4 ms from memory

Features computed once for training and serving

Each feature is computed once as data lands, from one definition that writes the Iceberg tables models train on and serves the value applications read by key in under 1 ms, so there's no second pipeline to drift. Eon replaces the streaming feature jobs, the batch backfill and the cache sync; keep your training and model-serving tools.

The same steps, in one pass: every table from one pipeline that reads each event once.

AI telemetry at full volume

Model calls, traces and evaluations become Apache Iceberg tables, queryable within seconds. Keep every event, or sample smartly so rare cases survive and totals still add up. Teams query them with Eon Yukon's serverless SQL or any Iceberg engine to evaluate models and build training sets.

Classified as they land: public GitHub pull requests and commits, classified and counted in a live demo built on Eon Yukon

See how Eon works in your environment

Bring a feature you compute twice today and we will show you Eon Yukon computing it once and serving it by key in under 1 ms.