The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems
The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems
A Case for Message Oriented Middleware
Proceedings of the 13th International Symposium on Distributed Computing
The many faces of publish/subscribe
ACM Computing Surveys (CSUR)
The VLDB Journal — The International Journal on Very Large Data Bases
Temporal management of RFID data
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Distributed Event-Based Systems
Distributed Event-Based Systems
Linear algebra operators for GPU implementation of numerical algorithms
SIGGRAPH '05 ACM SIGGRAPH 2005 Courses
Cayuga: a high-performance event processing engine
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
Efficient pattern matching over event streams
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Composite subscriptions in content-based publish/subscribe systems
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
On Supporting Kleene Closure over Event Streams
ICDE '08 Proceedings of the 2008 IEEE 24th International Conference on Data Engineering
Distributed complex event processing with query rewriting
Proceedings of the Third ACM International Conference on Distributed Event-Based Systems
RACED: an adaptive middleware for complex event detection
Proceedings of the 8th International Workshop on Adaptive and Reflective MIddleware
SAGE: A Logical Agent-Based Environment Monitoring and Control System
AmI '09 Proceedings of the European Conference on Ambient Intelligence
Accelerating large graph algorithms on the GPU using CUDA
HiPC'07 Proceedings of the 14th international conference on High performance computing
An introduction to Microsoft SQL server StreamInsight
Proceedings of the 1st International Conference and Exhibition on Computing for Geospatial Research & Application
TESLA: a formally defined event specification language
Proceedings of the Fourth ACM International Conference on Distributed Event-Based Systems
Evaluation of streaming aggregation on parallel hardware architectures
Proceedings of the Fourth ACM International Conference on Distributed Event-Based Systems
Event Processing in Action
Towards expressive publish/subscribe systems
EDBT'06 Proceedings of the 10th international conference on Advances in Database Technology
Processing flows of information: From data stream to complex event processing
ACM Computing Surveys (CSUR)
Complex event processing with T-REX
Journal of Systems and Software
High-performance location-aware publish-subscribe on GPUs
Proceedings of the 13th International Middleware Conference
Opportunistic spatio-temporal event processing for mobile situation awareness
Proceedings of the 7th ACM international conference on Distributed event-based systems
Hi-index | 0.00 |
Most complex information systems are event driven: each part of the system reacts to the events happening in the other parts, potentially generating new events. Complex event processing (CEP) engines in charge of interpreting, filtering, and combining primitive events to identify higher level composite events according to a set of rules are the new breed of message-oriented middleware, which is being proposed today to better support event-driven interactions. A key requirement for CEP engines is low latency processing, even in presence of complex rules and large numbers of incoming events. In this paper, we investigate how parallel hardware may speed up CEP processing. In particular, we consider the most common operators offered by existing rule languages (i.e., sequences, parameters, and aggregates); we consider different algorithms to process rules built using such operators; and we discuss how they can be implemented on a multi-core CPU and on CUDA, a widespread architecture for general-purpose programming on GPUs. Our analysis shows that the use of GPUs can bring impressive speedups in the presence of complex rules. On the other hand, it shows that multi-core CPUs scale better with the number of rules. Our conclusion is that an advanced CEP engine should leverage a multi-core CPU for processing the simplest rules, using the GPU as a coprocessor devoted to process the most complex ones.