Content deleted Content added
Updating Siddhi and WSO2 Stream Processor with proper links |
RandFreeman (talk | contribs) Adding local short description: "Method of analysing information about events", overriding Wikidata description "approach to processing events in software engineering, aiming to identify meaningful events such as opportunities or threats in real-time situations and respond as quickly as possible" |
||
(34 intermediate revisions by 24 users not shown) | |||
Line 1:
{{Short description|Method of analysing information about events}}
'''Event processing''' is a method of tracking and [[data analytics|analyzing]] (processing) streams of information (data) about things that happen (events),<ref name=LuckhamD>{{cite book|last=Luckham|first=David C.|title=Event Processing for Business: Organizing the Real-Time Enterprise|url=http://ee.stanford.edu/~luckham/|publisher=John Wiley & Sons, Inc.
These events may be happening across the various layers of an organization as sales leads, orders or [[customer service]] calls. Or, they may be news items,<ref>{{citation|last=Crosman|first=Penny|title=Aleri, Ravenpack to Feed News into Trading Algos|url=http://www.wallstreetandtech.com/articles/217500395|publisher=Wall Street & Technology|date=May 18, 2009}}{{Dead link|date=July 2019 |bot=InternetArchiveBot |fix-attempted=yes }}</ref> [[text
Analysts The vast amount of information available about events is sometimes referred to as the event cloud.<ref name=LuckhamD />
Line 19 ⟶ 21:
* Event-[[pattern detection]]
* Event [[Abstraction (computer science)|abstraction]]
* Event filtering
* Event aggregation and transformation
Line 26 ⟶ 28:
* Abstracting [[event-driven programming|event-driven]] processes
Commercial applications of CEP exist in variety of industries and include
[http://www.complexevents.com Details of commercial products and use cases]</ref>
==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 (software)|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
==Related concepts==
CEP is used in [[operational intelligence]] (OI) products to provide insight into business operations by running query analysis against live feeds and event data. OI collects real-time data and correlates against historical data to provide insight and analysis. Multiple sources of data can be combined to provide a common operating picture that uses current information.
In [[network management]], [[systems management]], [[application management]] and [[service management]], people usually refer instead to [[event correlation]]. As CEP engines, event correlation engines (''event correlators'') analyze a mass of events, pinpoint the most significant ones, and trigger actions. However, most of them do not produce new inferred events. Instead, they relate high-level events with low-level events.<ref>J.P. Martin-Flatin, G. Jakobson and L. Lewis, "Event Correlation in Integrated Management: Lessons Learned and Outlook", Journal of Network and Systems Management, Vol. 17, No. 4, December 2007.</ref>
Line 59 ⟶ 61:
Computation-oriented CEP's role can arguably be seen to overlap with Business Rule technology.
For example, customer service centers are using CEP for click-stream analysis and customer experience management. CEP software can factor real-time information about millions of events (clicks or other interactions) per second into [[business intelligence]] and other [[decision-support]] applications. These "[[recommendation
==Integration with time series databases==
Line 72 ⟶ 67:
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|website=cs.nyu.edu}}</ref> and cooperatively with other technologies such as BPM.
The ideal case for CEP analysis is to view historical time series and real-time streaming data as a single time continuum. What happened yesterday, last week or last month is simply an extension of what is occurring today and what may occur in the future. An example may involve comparing current market volumes to historic volumes, prices and volatility for trade execution logic. Or the need to act upon live market prices may involve comparisons to benchmarks that include sector and index movements, whose intra-day and historic trends gauge volatility and smooth outliers.
==Internet of
Complex event processing is a key enabler in [[Internet of
==See also==
Line 94 ⟶ 87:
===Vendors and products===
*
* [[Azure Stream Analytics]]
* [[Drools|Drools Fusion]]
* [[Esper (software)|Esper]] Complex event processing for Java and C# (GPLv2).
* [[Feedzai|Feedzai - Pulse]]
* [[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|website=technet.microsoft.com|date=28 July 2016 }}</ref>▼
▲* [[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|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.
* [[SAP SE|SAP ESP]] - A low-latency, rapid development and deployment platform that allows processing multiple streams of data in real time<ref>
*
▲* [[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>
▲* [[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
* [[WebSphere Business Events]]
* [[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.
* [[Apache Storm]] Free and open source distributed realtime computation system. Storm processes unbounded streams of data in realtime.
==References==
{{reflist}}
|