Aggregate Transformation

Description

Allows a user to aggregate a set of data (e.g. average, min, max, etc.) on a window of time.  When used in time series data, it runs using a snapshot, which is created using a window.

Configuration

To add the Aggregate Transformation agent to a stream, follow the steps below:

  1. Ensure you have a use case open in the stream designer, this can be a new use case or an existing use case
  2. From the toolbox on the left expand the Transformations option and scroll down until you can see “Aggregate”
    • You can also use the search in the header to find the agent quickly
  3. Click and drag the Aggregate transformation agent from the toolbox onto the canvas
  4. Rename the transformation agent by clicking into the text area to the right of the icon
  5. Save the stream by clicking the save button in the action bar
  6. Hover over the icon for the agent until it turns orange and then double click to open the configuration page
    • You can also click on the configure option in the action bar after selecting the agent
  7. Configuration options
    • The Collection drop-down allows you to associate this agent with a specific collection.  The selected option would be, by default, the same as the collection that was selected for the use case. If you do need to change it to another collection, select a different collection from the drop-down.
  8.  Group By options
    • Select the field you would like to group on,
      • For example, if you select a date column, the aggregate function that you specify will be calculated for all records that have the same date.
  9. Aggregate options
    • Click on the “+”-icon to add a new row.
    • Select the Aggregate function you would like to apply, e.g. “Average”.
    • Under the Parameter column, select the field that you would like to apply the aggregate function on, e.g. “Temperature”.
    • Under the Alias column, choose a column name that can be used to output the calculated value under, e.g. “TempAverage”
  10. Window options
    • Select the Unit, e.g. “Seconds”
    • Add a value for the unit under the Size option, e.g. “5”
  11. Click Apply on the action bar, and then save the stream using the Save button.
Limitations
  • None at this time
Release Notes
Version: 3.12
Released: 23-Jan-2020
Release Notes: Updated to work within a 3.0 .Net Environment
Version Released Release Notes
3.08 04-Sept-2019 Updated System.Reactive and System.Linq.Dynamic.Core.
3.07 15-Aug-2018 Changed WindowSize field to drop-down to accept input parameter as its value. It can still accept custom hard-coded value as before.
3.06 15-Aug-2018 Saved options in the Function grid with invalid input parameters are blanked.
3.05 15-Aug-2018 Updated description and URL link.
3.04 17-July-2018
  • Fixed Configuration throwing NullReferenceExceptions when called on an unconfigured object.
  • Fixed Validation throwing KeyNotFoundExceptions when called on an unconfigured object.
3.03 28-May-2018
  • Removed unsupported configuration options.
  • Outputs for aggregate functions now determine their output type instead of defaulting to double.
  • Added validation for function parameters and group by fields.
  • Added try/catch to functions subscribed to observables.
  • Moved remaining startup logic earlier in the object lifecycle.
3.02 15-May-2018 Fixed VARP/STDEVP functions returning the same result as VAR/STDEV.
3.01 26-April-2018 Input Bux Fixes.
3.0 17-April-2018 Initial Release.

This is the legacy version of the XMPro Documentation site. For the latest XMPro documentation, please visit documentation.xmpro.com

X