> For the complete documentation index, see [llms.txt](https://algolytics-technologies.gitbook.io/algolytics/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://algolytics-technologies.gitbook.io/algolytics/event-engine-user/engine-description.md).

# Engine description

## Architecture

**Event Engine** is a system deisgned for efficient processing of streams of events, either on-line or off-line. On-line processing is aggregation of events and scoring based on analytical model, using information from streams, while off-line processing means aggregation of events used to build models automatically. The engine is fully scalable and customizable, therefore it can be used in various branches of business, like:

* Gaming
* Recommending
* Web analytics
* Internet of Things (processing streams of events from devices' sensors)

## Functionalities <a href="#functionalities" id="functionalities"></a>

* Providing efficient service of streams of events coming from multiple sources at the same time
* Saving retail events to repositories, their off-line aggregation and creating analytical tables based on these events, which are used to create models
* Storage of off-line users' states
* Aggregation - a module used to count aggregates, both in off-line and on-line mode (used for model building and scoring respectively), connected to processing path in chosen environment
* Automatic creation of analytic models through Automatic Business Modeler
* Automatic deployment of new models through metadata
* On-line scoring - checking of conditions starting particular model scoring, score evaluation and returning the score to the client
