Skip to content
This repository has been archived by the owner on Oct 5, 2021. It is now read-only.

wso2-attic/siddhi-execution-timeseries

Repository files navigation

siddhi-execution-timeseries

The siddhi-execution-timeseries extension is an extension to Siddhi which enables users to forecast and detect outliers in time series data, using Linear Regression Models.

Find some useful links below:

Latest API Docs

Latest API Docs is 5.0.1.

How to use

Using the extension in WSO2 Stream Processor

  • You can use this extension in the latest WSO2 Stream Processor that is a part of WSO2 Analytics offering, with editor, debugger and simulation support.

  • This extension is shipped by default with WSO2 Stream Processor, if you wish to use an alternative version of this extension you can replace the component jar that can be found in the <STREAM_PROCESSOR_HOME>/lib directory.

Using the extension as a java library

  • This extension can be added as a maven dependency along with other Siddhi dependencies to your project.
     <dependency>
        <groupId>org.wso2.extension.siddhi.execution.timeseries</groupId>
        <artifactId>siddhi-execution-timeseries</artifactId>
        <version>x.x.x</version>
     </dependency>

Jenkins Build Status


Branch Build Status
master Build Status

Features

  • forecast (Stream Processor)

    This allows the user to specify a batch size (optional) that defines the number of events to be considered for the regression calculation when forecasting the Y value.

  • kalmanMinMax (Stream Processor)

    The kalmanMinMax function uses the kalman filter to smooth the values of the time series within a given window, and then determine the maxima and minima of that set of values.

  • kernelMinMax (Stream Processor)

    TBD

  • lengthTimeForecast (Stream Processor)

    This allows the user to restrict the number of events considered for the regression calculation when forecasting the Y value based on a specified time window and/or batch size.

  • lengthTimeOutlier (Stream Processor)

    This allows you to restrict the number of events considered for the regression calculation performed when finding outliers based on a specified time window and/or a batch size.
    This function should be used in one of the following formats.
    lengthTimeOutlier(time window, batch size, range, Y, X) OR
    lengthTimeOutlier(time window, batch size, range, calculation interval, confidence interval, Y, X)
    There can be different outputs and β coefficients of the regression equation and can return dynamic attributes as beta1 , beta2 ... betan.

  • lengthTimeRegress (Stream Processor)

    This allows the user to specify the time window and batch size (required). The number of events considered for the regression calculation can be restricted based on the time window and/or the batch size.

  • outlier (Stream Processor)

    This allows the user to specify a batch size (optional) that defines the number of events to be considered for the calculation of regression while finding the outliers.
    This function should be used in one of the following formats.
    outlier(range, Y, X)
    or
    outlier(calculation interval, batch size, confidence interval, range, Y, X). There can be different outputs and β coefficients of the regression equation and can return dynamic attributes as beta1 , beta2 ... betan.

  • regress (Stream Processor)

    This allows the user to specify the batch size (optional) that defines the number of events to be considered for the calculation of regression.

How to Contribute

Contact us

Support

  • We are committed to ensuring support for this extension in production. Our unique approach ensures that all support leverages our open development methodology and is provided by the very same engineers who build the technology.

  • For more details and to take advantage of this unique opportunity contact us via http://wso2.com/support/.