Siddhi Extensions¶
Following are some supported Siddhi extensions;
Extensions released under Apache 2.0 License¶
Execution Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
execution-string | Provides basic string handling capabilities such as concat, length, replace all, etc. | 4.1.1 |
execution-regex | Provides basic RegEx execution capabilities. | 4.1.2 |
execution-math | Provides useful mathematical functions. | 4.1.2 |
execution-time | Provides time related functionality such as getting current time, current date, manipulating/formatting dates, etc. | 4.1.1 |
execution-map | Provides the capability to generate and manipulate map data objects. | 4.1.0 |
execution-json | Provides the capability to retrieve, insert, and modify JSON elements. | 1.1.1 |
execution-unitconversion | Converts various units such as length, mass, time and volume. | 1.1.1 |
execution-reorder | Orders out-of-order event arrivals using algorithms such as K-Slack and alpha K-Stack. | 4.2.2 |
execution-geo | Provides geo data related functionality such as such as geocode, reverse geocode and finding places based on IP. | 4.1.1 |
execution-env | Dynamically read environment properties inside Siddhi Apps. | 1.1.0 |
execution-graph | Provides graph related functionality such as getting size of largest connected component, maximum clique size of a graph, etc. | 1.1.1 |
execution-priority | Keeps track of the events based on priority. | 4.1.1 |
execution-extrema | Extract the extrema from the event streams such as min, max, topK and bottomK. | 4.1.1 |
execution-unique | Retains and process unique events based on the given parameters. | 4.1.2 |
execution-stats | Provides statistical functions such as median calculation. | 1.1.1 |
execution-timeseries | Enables forecast and detection of outliers in time series data, using Linear Regression models. | 4.1.2 |
execution-streamingml | Performs streaming machine learning (clustering, classification and regression) on event streams. | 1.1.1 |
execution-tensorflow | Supports running pre-built TensorFlow models. | 1.1.1 |
execution-markov | Detects abnormal sequence of event occurrences using probability. | 4.1.1 |
execution-kalmanfilter | Provides Kalman filtering capabilities to estimate values and detect outliers of input data. | 4.1.1 |
execution-sentiment | Performs sentiment analysis using Afinn Wordlist. | 4.1.1 |
execution-approximate | Performs approximate computing on event streams. | 1.1.1 |
Input/Output Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
io-http | Receives and publishes events via http and https transports, calls external services, and serves incoming requests and provide synchronous responses. | 1.2.1 |
io-nats | Receives and publishes events from/to NATS. | 1.0.5 |
io-kafka | Receives and publishes events from/to Kafka. | 4.2.1 |
io-email | Receives and publishes events via email using smtp , pop3 and imap protocols. |
1.1.1 |
io-cdc | Captures change data from databases such as MySQL, MS SQL, Postgresql, H2 and Oracle. | 1.0.10 |
io-tcp | Receives and publishes events through TCP transport. | 2.1.2 |
io-googlepubsub | Receives and publishes events through Google Pub/Sub. | 1.0.4 |
io-websocket | Receives and publishes events through WebSocket. | 1.1.1 |
io-file | Receives and publishes event data from/to files. | 1.1.1 |
io-jms | Receives and publishes events via Java Message Service (JMS), supporting Message brokers such as ActiveMQ | 1.1.2 |
io-mqtt | Receives and publishes events from/to Kafka MQTT broker. | 1.1.1 |
io-sqs | Receives and publishes events from/to AWS SQS Services. | 1.1.1 |
io-rabbitmq | Receives and publishes events from/to RabbitMQ broker. | 1.1.1 |
io-ibmmq | Receives and publishes events from/to IBM MQ broker. | 1.1.2 |
io-hl7 | Receives and publishes events through hl7 transport. | 1.0.4 |
io-snmp | Receives and publishes events through SNMP transport. | 1.0.1 |
io-prometheus | Consumes and expose Prometheus metrics from/to Prometheus server. | 1.0.3 |
io-twitter | Publishes events to Twitter. | 1.1.1 |
io-wso2event | Receives and publishes events in the WSO2Event format via Thrift or Binary protocols. | 4.1.1 |
Data Mapping Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
map-json | Converts JSON messages to/from Siddhi events. | 4.1.2 |
map-xml | Converts XML messages to/from Siddhi events. | 4.1.2 |
map-text | Converts text messages to/from Siddhi events. | 1.1.2 |
map-avro | Converts AVRO messages to/from Siddhi events. | 1.0.67 |
map-keyvalue | Converts events having Key-Value maps to/from Siddhi events. | 1.1.2 |
map-csv | Converts messages with CSV format to/from Siddhi events. | 1.1.1 |
map-binary | Converts binary events that adheres to Siddhi format to/from Siddhi events. | 1.1.1 |
map-wso2event | Converts WSO2 events to/from Siddhi events. | 4.1.1 |
Store Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
store-rdbms | Persist and retrieve events to/from RDBMS databases such as MySQL, MS SQL, Postgresql, H2 and Oracle. | 5.1.7 |
store-mongodb | Persist and retrieve events to/from MongoDB. | 1.1.0 |
store-elasticsearch | Persist and retrieve events to/from Elasticsearch. | 2.0.0 |
store-redis | Persist and retrieve events to/from Redis. | 2.1.0 |
store-cassandra | Persist and retrieve events to/from Cassandra. | 1.1.1 |
store-hbase | Persist and retrieve events to/from HBase. | 4.1.1 |
store-solr | Persist and retrieve events to/from Apache Solr. | 1.1.1 |
store-influxdb | Persist and retrieve events to/from InfluxDB. | 1.0.2 |
Script Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
script-js | Allows writing user defined JavaScript functions within Siddhi Applications to process events. | 4.1.1 |
Extensions released under GPL License¶
Execution Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
execution-pmml | Process pre built PMML Machine Learning models. | |
execution-streamingml | Performs streaming machine learning on event streams. | |
execution-geo | Provides geo data related functionality such as geo-fence, distance, closest points, etc. | |
execution-nlp | Process natural language processing functionality. |
Script Extensions¶
Name | Description | Latest Tested Version |
---|---|---|
execution-r | Allows writing user defined R functions within Siddhi Applications to process events. |