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 |
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
-
Please report issues at GitHub Issue Tracker.
-
Send your contributions as pull requests to master branch.
Contact us
-
Post your questions with the "Siddhi" tag in Stackoverflow.
-
Siddhi developers can be contacted via the mailing lists:
Developers List : [email protected]
Architecture List : [email protected]
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/.