Grafana provides a set of statistical reducer functions that allow you to summarize time series data into a single value. Learn more about these functions in the VMX-Explorer User Guide.
We use the following Grafana reducer functions in the BAM dashboards. Note that they are applied after the query has returned time-series data.
Function | Description |
|---|---|
Low (Min) | The smallest value in the series over the selected time range. |
Mean (Average) | The arithmetic average of all values in the time range. |
High (Max) | The largest value in the series. |
Time Weighted Mean | Averages values weighted by how long each value persists. More accurate when data points are spaced unevenly. |
Difference | The difference between the last and first value in the time range. |
Range | The span between the highest and lowest values ( |
Which Reducer function is most helpful for different data types?
The table below summarises which Reducer function to use in each different circumstance. Beeks Analytics allows the user full flexibility to choose the appropriate reducer function to their needs:
Reducer Function | Counter (bytes, packets, messages) - monotonically increasing cumulative total e.g. message count | Gauge / Level (utilisation, throughput, avg latency) - represents the current value of a metric, which can increase or decrease over time, e.g. messages-per-second rate. | Percentile per Time Bucket (e.g. P99 latency) |
|---|---|---|---|
High / Max | ⚠ Sometimes useful | ✅ Valid | ✅ Sometimes Valid – shows the highest value recorded for that percentile over the time window |
Low / Min | ⚠ Sometimes useful | ✅ Valid | ✅ Sometimes Valid – shows the lowest value recorded for that percentile over the time window |
Time Weighted Mean | ❌ Not meaningful | ✅ Recommended | ⚠ Descriptive |
Mean | ❌ Not meaningful | ⚠ Acceptable | ⚠ Descriptive |
Difference | ✅ Recommended | ❌ Not meaningful | ❌ Not meaningful |
Range | ⚠ Rarely useful | ⚠ Shows variability | ⚠ Shows variability |