Configuring History Aggregation

Sometimes storing all raw events and value updates will cause too large amount of data to be stored persistently. In such cases, it is possible to use pre-aggregation of historical values.

There are two different pre-aggregation methods available in Iotellect Server:

  • Round-Robin Database

  • Granules

Aggregation in Round-Robin Database

Iotellect Server includes an embedded Round-Robin Database that helps to keep aggregated time series statistics.

Aggregation in Granules

Granules are special events that contain various aggregated values for different periods in a time series. Each time a new event or value update arrives, the server finds a proper granule and merges its aggregate value with the newly arrived value, calculating and persistently keeping the new aggregated value.

Comparison or History Aggregation Methods

Metric

Statistics in Round-Robin Database

Aggregate Values in Granules

Aggregated data footprint size

Constant, lower

Varying, higher

Aggregated data update speed

Higher

Lower

Aggregated data retrieval speed

Higher

Lower

Aggregate value type and format

Only numeric

Any

Aggregation functions

Fixed (average, minimum, maximum, total, first, last)

Custom

Time slicing

Fixed-length periods

Periods that match real calendar periods (such as days or months), time zones respected

In-memory aggregation supported

Yes

No

Counter-type source values natively supported

Yes

No

Was this page helpful?