ishkin / Proton

IBM Proactive Technology Online
24 stars 21 forks source link

CEP - Complex Event Processing

License badge Documentation badge Docker badge Support badge

Introduction

IBM Proactive Technology Online (PROTON) is an open source complex event processing engine developed at IBM Research - Haifa. PROTON was developed as a research project and extended in the scope of the following EU projects: FINEST, FISPACE, FIWARE, SPEEDD, FERRARI, PSYMBIOSYS and DATABIO. It provides language primitives for defining, submitting, and executing event processing networks. The goal of the system is to respond to raw events and identify meaningful events within contexts. The system comes with a set of built-in operators (such as sequence, all, etc.) for determining CEP patterns. It also has extendable APIs for adding additional custom operators. The system comes with existing source/sink adapters, allowing it to extract raw events from files or pull them from RESTful services. It also provides extendable APIs for adding more adapter types.

Top

GEi overall description

This project is part of FIWARE.

Top

Build and Install

There are several options:

To work with artifacts

All build artifacts are in the [Proton github repository] (https://github.com/ishkin/Proton/tree/master/mvn-repo/com/ibm/hrl/proton). These can be used as dependencies in maven builds. In case you would like to work with simple artifacts, you can find these here

For standalone engines, use the [ProtonJ2SE artifact] (https://github.com/ishkin/Proton/tree/master/artifacts/ProtonJ2SE.zip). This is a .zip distribution, with ProtonJ2SE executable jar, launch script, sample, and docs directory.

For instructions on how to configure and install IBM Proactive Technology Online on Tomcat (web version), see the [Proton on Tomcat guide] (https://forge.fi-ware.org/plugins/mediawiki/wiki/fiware/index.php/CEP_GE_-_IBM_Proactive_Technology_Online_Installation_and_Administration_Guide)

Top

API Reference Documentation

Detailed online documentation for installation, testing, web authoring of rules and web APIs are located in https://readthedocs.org/projects/proactive-technology-online/builds/ Documentations is also available under the /documentation folder, and includes the Proton's User Guide (explaining the language building blocks and use of the authoring tool use) and Programmer's Guide (explaining possible extension points to the Proton's programming model)

Top

License

IBM Proactive Technology Online is licenced under the Apache Licence Version 2.0. For more information see the LICENCE.md

Top

Support

For working with source code, note that the projects are maven projects. They can be built using the "clean install" targets by running the mvn command on the parent pom (located in the "Proton”) directory. This command will build all the Proton projects.

In addition, by executing the "mvn deploy" command of the same parent pom after performing clean install, the target jars will be installed into a local repository named "mvn-repo" (/Proton/maven-repo).

Top