Benefits of Chronon over other approaches

Chronon offers the most value to AI/ML practitioners who are trying to build "online" models that are serving requests in real-time as opposed to batch workflows.

Without Chronon, engineers working on these projects need to figure out how to get data to their models for training/eval as well as production inference. As the complexity of data going into these models increases (multiple sources, complex transformation such as windowed aggregations, etc), so does the infrastructure challenge of supporting this data plumbing.

Generally, we observed ML practitioners taking one of two approaches:

The log-and-wait approach

With this approach, users start with the data that is available in the online serving environment from which the model inference will run. Log relevant features to the data warehouse. Once enough data has accumulated, train the model on the logs, and serve with the same data.

Pros:

  • Features used to train the model are guaranteed to be available at serving time
  • The model can access service call features
  • The model can access data from the the request context

Cons:

  • It might take a long to accumulate enough data to train the model
  • Performing windowed aggregations is not always possible (running large range queries against production databases doesn't scale, same for event streams)
  • Cannot utilize the wealth of data already in the data warehouse
  • Maintaining data transformation logic in the application layer is messy

The replicate offline-online approach

With this approach, users train the model with data from the data warehouse, then figure out ways to replicate those features in the online environment.

Pros:

  • You can use a broad set of data for training
  • The data warehouse is well suited for large aggregations and other computationally intensive transformation

Cons:

  • Often very error prone, resulting in inconsistent data between training and serving
  • Requires maintaining a lot of complicated infrastructure to even get started with this approach,
  • Serving features with realtime updates gets even more complicated, especially with large windowed aggregations
  • Unlikely to scale well to many models

The Chronon approach

With Chronon you can use any data available in your organization, including everything in the data warehouse, any streaming source, service calls, etc, with guaranteed consistency between online and offline environments. It abstracts away the infrastructure complexity of orchestrating and maintining this data plumbing, so that users can simply define features in a simple API, and trust Chronon to handle the rest.

Edit this page