A Formal Framework for Complex Event Processing

Authors Alejandro Grez, Cristian Riveros, Martín Ugarte

Thumbnail PDF


  • Filesize: 0.56 MB
  • 18 pages

Document Identifiers

Author Details

Alejandro Grez
  • Pontificia Universidad Católica de Chile, Santiago, Chile
  • Millennium Institute for Foundational Research on Data, Santiago, Chile
Cristian Riveros
  • Pontificia Universidad Católica de Chile, Santiago, Chile
  • Millennium Institute for Foundational Research on Data, Santiago, Chile
Martín Ugarte
  • Millennium Institute for Foundational Research on Data, Santiago, Chile


Cristian and Alejandro have been funded by FONDECYT grant 11150653, and together with Martín they were partially supported by the Millennium Institute for Foundational Research on Data (IMFD). M. Ugarte also acknowledges support from the Brussels Captial Region - Innoviris (project SPICES). We also thank the anonymous referees for their helpful comments.

Cite AsGet BibTex

Alejandro Grez, Cristian Riveros, and Martín Ugarte. A Formal Framework for Complex Event Processing. In 22nd International Conference on Database Theory (ICDT 2019). Leibniz International Proceedings in Informatics (LIPIcs), Volume 127, pp. 5:1-5:18, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2019)


Complex Event Processing (CEP) has emerged as the unifying field for technologies that require processing and correlating distributed data sources in real-time. CEP finds applications in diverse domains, which has resulted in a large number of proposals for expressing and processing complex events. However, existing CEP languages lack from a clear semantics, making them hard to understand and generalize. Moreover, there are no general techniques for evaluating CEP query languages with clear performance guarantees. In this paper we embark on the task of giving a rigorous and efficient framework to CEP. We propose a formal language for specifying complex events, called CEL, that contains the main features used in the literature and has a denotational and compositional semantics. We also formalize the so-called selection strategies, which had only been presented as by-design extensions to existing frameworks. With a well-defined semantics at hand, we discuss how to efficiently process complex events by evaluating CEL formulas with unary filters. We start by studying the syntactical properties of CEL and propose rewriting optimization techniques for simplifying the evaluation of formulas. Then, we introduce a formal computational model for CEP, called complex event automata (CEA), and study how to compile CEL formulas with unary filters into CEA. Furthermore, we provide efficient algorithms for evaluating CEA over event streams using constant time per event followed by constant-delay enumeration of the results. Finally, we gather the main results of this work to present an efficient and declarative framework for CEP.

Subject Classification

ACM Subject Classification
  • Information systems → Data streams
  • Theory of computation → Data structures and algorithms for data management
  • Theory of computation → Database query languages (principles)
  • Theory of computation → Automata extensions
  • Complex event processing
  • streaming evaluation
  • constant delay enumeration


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Esper Enterprise Edition website. Accessed on 2018-01-05. URL: http://www.espertech.com/.
  2. D. Abadi, D. Carney, U. Çetintemel, M. Cherniack, C. Convey, C. Erwin, E. Galvez, M. Hatoun, A. Maskey, A. Rasin, A. Singer, M. Stonebraker, N. Tatbul, Y. Xing, R. Yan, and S. Zdonik. Aurora: A Data Stream Management System. In SIGMOD, 2003. Google Scholar
  3. Serge Abiteboul, Richard Hull, and Victor Vianu. Foundations of databases: the logical level. Addison-Wesley, 1995. Google Scholar
  4. Asaf Adi and Opher Etzion. Amit-the situation manager. VLDB Journal, 2004. Google Scholar
  5. Jagrati Agrawal, Yanlei Diao, Daniel Gyllstrom, and Neil Immerman. Efficient pattern matching over event streams. In SIGMOD, 2008. Google Scholar
  6. Alfred V. Aho. Algorithms for Finding Patterns in Strings. In Handbook of Theoretical Computer Science. Elsevier, 1990. Google Scholar
  7. Mert Akdere, Uǧur Çetintemel, and Nesime Tatbul. Plan-based complex event detection across distributed sources. VLDB, 2008. Google Scholar
  8. Darko Anicic, Paul Fodor, Sebastian Rudolph, Roland Stühmer, Nenad Stojanovic, and Rudi Studer. A rule-based language for complex event processing and reasoning. In RR, 2010. Google Scholar
  9. Arvind Arasu, Brian Babcock, Shivnath Babu, Mayur Datar, Keith Ito, Itaru Nishizawa, Justin Rosenstein, and Jennifer Widom. STREAM: The Stanford Stream Data Manager (Demonstration Description). In SIGMOD, 2003. Google Scholar
  10. Arvind Arasu, Shivnath Babu, and Jennifer Widom. The CQL Continuous Query Language: Semantic Foundations and Query Execution. The VLDB Journal, 2006. Google Scholar
  11. Alexander Artikis, Alessandro Margara, Martin Ugarte, Stijn Vansummeren, and Matthias Weidlich. Complex Event Recognition Languages: Tutorial. In DEBS, pages 7-10. ACM, 2017. Google Scholar
  12. Alexander Artikis, Marek Sergot, and Georgios Paliouras. An event calculus for event recognition. IEEE Transactions on Knowledge and Data Engineering, 27(4):895-908, 2015. Google Scholar
  13. Alexander Artikis, Anastasios Skarlatidis, François Portet, and Georgios Paliouras. Logic-based event recognition. The Knowledge Engineering Review, 27(4):469-506, 2012. Google Scholar
  14. Guillaume Bagan, Arnaud Durand, and Etienne Grandjean. On Acyclic Conjunctive Queries and Constant Delay Enumeration. In CSL, 2007. Google Scholar
  15. Roger S. Barga, Jonathan Goldstein, Mohamed H. Ali, and Mingsheng Hong. Consistent Streaming Through Time: A Vision for Event Stream Processing. In CIDR, 2007. Google Scholar
  16. Jean Berstel. Transductions and context-free languages. Springer-Verlag, 2013. Google Scholar
  17. Alejandro Buchmann and Boris Koldehofe. Complex event processing. IT-Information Technology Methoden und innovative Anwendungen der Informatik und Informationstechnik, 2009. Google Scholar
  18. Jan Carlson and Björn Lisper. A resource-efficient event algebra. Science of Computer Programming, 2010. Google Scholar
  19. Jianjun Chen, David J. DeWitt, Feng Tian, and Yuan Wang. NiagaraCQ: A Scalable Continuous Query System for Internet Databases. In SIGMOD, 2000. Google Scholar
  20. Federico Chesani, Paola Mello, Marco Montali, and Paolo Torroni. A logic-based, reactive calculus of events. Fundamenta Informaticae, 105(1-2):135-161, 2010. Google Scholar
  21. Gianpaolo Cugola and Alessandro Margara. Raced: an adaptive middleware for complex event detection. In Middleware, 2009. Google Scholar
  22. Gianpaolo Cugola and Alessandro Margara. TESLA: a formally defined event specification language. In DEBS, 2010. Google Scholar
  23. Gianpaolo Cugola and Alessandro Margara. Complex Event Processing with T-REX. The Journal of Systems and Software, 2012. Google Scholar
  24. Gianpaolo Cugola and Alessandro Margara. Processing flows of information: From data stream to complex event processing. ACM Computing Surveys (CSUR), 2012. Google Scholar
  25. Alan Demers, Johannes Gehrke, Mingsheng Hong, Mirek Riedewald, and Walker White. A general algebra and implementation for monitoring event streams. Technical report, Cornell University, 2005. Google Scholar
  26. Alan Demers, Johannes Gehrke, Mingsheng Hong, Mirek Riedewald, and Walker White. Towards expressive publish/subscribe systems. In EDBT, 2006. Google Scholar
  27. Antony Galton and Juan Carlos Augusto. Two approaches to event definition. In DEXA, 2002. Google Scholar
  28. Lukasz Golab and M Tamer Özsu. Issues in data stream management. Sigmod Record, 2003. Google Scholar
  29. Mikell P Groover. Automation, production systems, and computer-integrated manufacturing. Prentice Hall, 2007. Google Scholar
  30. Daniel Gyllstrom, Jagrati Agrawal, Yanlei Diao, and Neil Immerman. On supporting kleene closure over event streams. In ICDE 2008, pages 1391-1393. IEEE, 2008. Google Scholar
  31. Yeye He, Siddharth Barman, and Jeffrey F. Naughton. On Load Shedding in Complex Event Processing. In ICDT, pages 213-224, 2014. Google Scholar
  32. Yeye He, Siddharth Barman, Di Wang, and Jeffrey F Naughton. On the complexity of privacy-preserving complex event processing. In PODS, pages 165-174, 2011. Google Scholar
  33. John E. Hopcroft and Jeffrey D. Ullman. Introduction to Automata Theory, Languages and Computation. Addison-Wesley, 1979. Google Scholar
  34. Elena Ikonomovska and Mariano Zelke. Algorithmic Techniques for Processing Data Streams. Dagstuhl Follow-Ups, 2013. Google Scholar
  35. Mo Liu, Elke Rundensteiner, Kara Greenfield, Chetan Gupta, Song Wang, Ismail Ari, and Abhay Mehta. E-cube: multi-dimensional event sequence analysis using hierarchical pattern query sharing. In SIGMOD, pages 889-900, 2011. Google Scholar
  36. D Luckham. Rapide: A language and toolset for simulation of distributed systems by partial orderings of events, 1996. Google Scholar
  37. Masoud Mansouri-Samani and Morris Sloman. GEM: A generalized event monitoring language for distributed systems. Distributed Systems Engineering, 1997. Google Scholar
  38. Yuan Mei and Samuel Madden. Zstream: a cost-based query processor for adaptively detecting composite events. In SIGMOD, pages 193-206. ACM, 2009. Google Scholar
  39. Biswanath Mukherjee, L Todd Heberlein, and Karl N Levitt. Network intrusion detection. IEEE network, 1994. Google Scholar
  40. Peter Pietzuch, Brian Shand, and Jean Bacon. A framework for event composition in distributed systems. In Middleware, 2003. Google Scholar
  41. Raghu Ramakrishnan and Johannes Gehrke. Database management systems (3 ed.). McGraw-Hill, 2003. Google Scholar
  42. BS Sahay and Jayanthi Ranjan. Real time business intelligence in supply chain analytics. Information Management &Computer Security, 2008. Google Scholar
  43. Jacques Sakarovitch. Elements of automata theory. Cambridge University Press, 2009. Google Scholar
  44. Nicholas Poul Schultz-Møller, Matteo Migliavacca, and Peter Pietzuch. Distributed complex event processing with query rewriting. In DEBS, 2009. Google Scholar
  45. Luc Segoufin. Automata and logics for words and trees over an infinite alphabet. In CSL, 2006. Google Scholar
  46. Luc Segoufin. Enumerating with constant delay the answers to a query. In ICDT 2013, pages 10-20, 2013. Google Scholar
  47. Margus Veanes. Applications of symbolic finite automata. In CIAA, 2013. Google Scholar
  48. Walker White, Mirek Riedewald, Johannes Gehrke, and Alan Demers. What is next in event processing? In PODS, pages 263-272, 2007. Google Scholar
  49. Eugene Wu, Yanlei Diao, and Shariq Rizvi. High-performance complex event processing over streams. In SIGMOD, 2006. Google Scholar
  50. Haopeng Zhang, Yanlei Diao, and Neil Immerman. On complexity and optimization of expensive queries in complex event processing. In SIGMOD, 2014. Google Scholar
  51. Detlef Zimmer and Rainer Unland. On the semantics of complex events in active database management systems. In ICDE, 1999. Google Scholar
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail