Complex event processing: Difference between revisions

Content deleted Content added
m <ref></ref>
m Filled in 7 bare reference(s) with reFill ()
Line 30:
 
==History==
The CEP area has roots in [[discrete event simulation]], the [[active database]] area and some programming languages. The activity in the industry was preceded by a wave of research projects in the 1990s. According to<ref>{{citation|last=Leavit|first=Neal|title=Complex-Event Processing Poised for Growth|url= http://www.computer.org/csdl/mags/co/2009/04/mco2009040017-abs.html|publisher=Computer, vol. 42, no. 4, pp. 17-20 Washington|date=April 2009}}</ref> the first project that paved the way to a generic CEP language and execution model was the Rapide project in [[Stanford University]], directed by [[David Luckham]]. In parallel there have been two other research projects: Infospheres in [[California Institute of Technology]], directed by [[K. Mani Chandy]], and Apama in [[University of Cambridge]] directed by John Bates. The commercial products were dependents of the concepts developed in these and some later research projects. Community efforts started in a series of event processing symposiums organized by the [[Event Processing Technical Society]], and later by the ACM DEBS conference series. One of the community efforts was to produce the event processing manifesto.<ref>[{{cite web|url=http://drops.dagstuhl.de/opus/volltexte/2011/2985/|title=10201 Executive Summary and Manifesto – Event Processing|first1=Mani K. |last1=Chandy and |first2=Opher |last2=Etzion|first3=Rainer andvon|last3=Ammon|editor-first1=K. Mani|editor-last1=Chandy|editor-first2=Opher|editor-last2=Etzion|editor-first3=Rainer von |editor-last3=Ammon(eds),|date=22 10201December Executive2017|publisher=Schloss SummaryDagstuhl and- Manifesto -Leibniz-Zentrum Eventfuer ProcessingInformatik, Germany|via=Dagstuhl seminarResearch ProcesdingsOnline 10201,Publication ISSN 1862-4405, 2011]Server}}</ref>
 
==Related concepts==
Line 71:
A [[time series database]] is a software system that is optimized for the handling of data organized by time. Time series are finite or infinite sequences of data items, where each item has an associated timestamp and the sequence of timestamps is non-decreasing. Elements of a time series are often called ticks. The timestamps are not required to be ascending (merely non-decreasing) because in practice the time resolution of some systems such as financial data sources can be quite low (milliseconds, microseconds or even nanoseconds), so consecutive events may carry equal timestamps.
 
Time series data provides a historical context to the analysis typically associated with complex event processing. This can apply to any vertical industry such as finance<ref>[{{cite web|url=http://cs.nyu.edu/shasha/papers/jagtalk.html "|title=Time Series in Finance", Retrieved May 16, 2012]|website=cs.nyu.edu}}</ref> and cooperatively with other technologies such as BPM.
 
Consider the scenario in finance where there is a need to understand historic price volatility to determine statistical thresholds of future price movements. This is helpful for both trade models and transaction cost analysis.
Line 78:
 
==Internet of Things and Smart Cyber-physical systems==
Complex event processing is a key enabler in [[Internet of Things]] (IoT) settings and Smart [[Cyber-physical system]]s (CPS) as well. Processing dense and heterogeneous streams from various sensors and matching patterns against those streams is a typical task in such cases.<ref>[{{cite web|url=http://msdl.cs.mcgill.ca/people/istvan/pub/mtcps2016 |title=Balogh, Dávid, Ráth, Varró, Vörös: Distributed and Heterogeneous Event-based Monitoring in Smart Cyber-Physical Systems, In 1st Workshop on Monitoring and Testing of Cyber-Physical Systems, Vienna, Austria. 2016.]|publisher=}}</ref> The majority of these techniques rely on the fact that representing the IoT system's state and its changes is more efficient in the form of a data stream, instead of having a static, materialized model. Reasoning over such stream-based models fundamentally differs from traditional reasoning techniques and typically require the combination of [[model transformation]]s and CEP.<ref>I. Dávid, I. Ráth, D. Varró: Foundations for Streaming Model Transformations by Complex Event Processing, International Journal on Software and Systems Modeling, pp 1--28, 2016. {{doi|10.1007/s10270-016-0533-1}}</ref>
 
==See also==
Line 101:
* [[GigaSpaces]] XAP
* ''Informatica RulePoint'' by [[Informatica]]
* [[Microsoft|Microsoft StreamInsight]] Microsoft CEP Engine implementation<ref>[{{cite web|url=https://technet.microsoft.com/en-us/library/ee362541(v=sql.111).aspx |title=Microsoft StreamInsight product page]|website=technet.microsoft.com}}</ref>
* [[openPDC]] — A set of applications for processing streaming time-series data in real-time.
* [[Oracle SOA Suite|Oracle Event Processing]] - for building applications to filter, correlate, and process events in real time.
* BRMS - A rules management engine by [[Red Hat]] based on [[Drools]]
* [[SAP SE|SAP ESP]] - A low-latency, rapid development and deployment platform that allows processing multiple streams of data in real time<ref>[http://scn.sap.com/community/developer-center/esp SAP ESP - Developers community]</ref>
* [[SAS ESP]] - A platform that is built for speed to analyse (apply SAS' and third-party analytics, including machine learning algorithms) millions of data records in motion (events) with low-latency response time (milliseconds and sub-milliseconds). Deployable at the edge, on premises and to the Cloud. Flexible platform that is built with openness in mind to make Analytics pervasive everywhere.<ref>{{cite web|url=https://www.sas.com/en_gb/software/data-management/event-stream-processing.html|title=SAS Event Stream Processing|publisher=}}</ref>
* [[Sqlstream|SQLstream]] SQLstream’s stream processing platform, s-Server, provides a relational stream computing platform for analyzing large volumes of service, sensor and machine and log file data in real-time.
* [[TIBCO| TIBCO BusinessEvents & Streambase ]] - CEP platform and High Performance Low Latency Event Stream Processing
* VIATRA-CEP<ref>{{cite web|url=https://wiki.eclipse.org/VIATRA/CEP|title=VIATRA/CEP - Eclipsepedia|website=wiki.eclipse.org}}</ref> - A model-driven CEP engine, part of the 3rd generation of the [[VIATRA]] [[model transformation]] framework
* [[WebSphere Business Events]]
* [[WSO2|WSO2 Siddhi]] Complex event processing written in Java. Designed as part of a series of middleware components.
* [[Apache Flink]] Open-source distributed stream processing framework with a CEP API<ref>{{cite web|url=https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/libs/cep.html|title=Apache Flink 1.2 Documentation: FlinkCEP - Complex event processing for Flink|website=ci.apache.org}}</ref> for Java and Scala.
 
==References==