Skip to main content

A CEP Babelfish: Languages for Complex Event Processing and Querying Surveyed

  • Chapter
Reasoning in Event-Based Distributed Systems

Part of the book series: Studies in Computational Intelligence ((SCI,volume 347))

Abstract

Complex Event Processing (CEP) denotes algorithmic methods for making sense of events by deriving higher-level knowledge, or complex events, from lower-level events in a timely fashion and permanently. At the core of CEP are queries incessantly monitoring the incoming stream of “simple” events and recognizing “complex” events from these simple events. Event queries monitoring incoming streams of simple events serve the specification of situations that manifest themselves as certain combinations of simple events occurring, or not occurring, over time and that cannot be detected alone from each or only a few single events involved.

Special purpose Event Query Languages (EQLs) have been developed for the expression of the complex events in a convenient, concise, cost-effective and maintainable manner. This chapter identifies five language styles for CEP, namely composition operators, data stream query languages, production rules, timed state machines, and logic languages, describes their main traits, illustrates them on a sensor network use case and discusses suitable application areas of each language style.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, D.J., Carney, D., Çetintemel, U., Cherniack, M., Convey, C., Lee, S., Stonebraker, M., Tatbul, N., Zdonik, S.B.: A new model and architecture for data stream management. The VLDB Journal 12(2), 120–139 (2003)

    Article  Google Scholar 

  2. Adaikkalavan, R., Chakravarthy, S.: Formalization and detection of events using interval-based semantics. In: Proc. Int. Conf. on Management of Data (COMAD), pp. 58–69. Computer Society of India (2005)

    Google Scholar 

  3. Adaikkalavan, R., Chakravarthy, S.: SnoopIB: Interval-based event specification and detection for active databases. Data and Knowledge Engineering 1(59), 139–165 (2006)

    Article  Google Scholar 

  4. Adi, A., Etzion, O.: Amit — the situation manager. The VLDB Journal 13(2), 177–203 (2004)

    Article  Google Scholar 

  5. Alur, R., Dill, D.: Automata for modeling real-time systems. In: Paterson, M. (ed.) ICALP 1990. LNCS, vol. 443, pp. 322–335. Springer, Heidelberg (1990)

    Chapter  Google Scholar 

  6. Arasu, A., Babu, S., Widom, J.: The CQL continuous query language: Semantic foundations and query execution. The VLDB Journal 15(2), 121–142 (2006)

    Article  Google Scholar 

  7. Barga, R.S., Caituiro-Monge, H.: Event correlation and pattern detection in CEDR. In: Grust, T., Höpfner, H., Illarramendi, A., Jablonski, S., Fischer, F., Müller, S., Patranjan, P.-L., Sattler, K.-U., Spiliopoulou, M., Wijsen, J. (eds.) EDBT 2006. LNCS, vol. 4254, pp. 919–930. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Bernauer, M., Kappel, G., Kramler, G.: Composite events for XML. In: Proc. Int. Conf. on World Wide Web, pp. 175–183. ACM, New York (2004)

    Google Scholar 

  9. Berstel, B., Bonnard, P., Bry, F., Eckert, M., Pătrânjan, P.-L.: Reactive rules on the web. In: Antoniou, G., Aßmann, U., Baroglio, C., Decker, S., Henze, N., Patranjan, P.-L., Tolksdorf, R. (eds.) Reasoning Web. LNCS, vol. 4636, pp. 183–239. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  10. Bry, F., Eckert, M.: Rule-Based Composite Event Queries: The Language XChangeEQ and Its Semantics. In: Marchiori, M., Pan, J.Z., de Sainte Marie, C. (eds.) RR 2007. LNCS, vol. 4524, pp. 16–30. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Bry, F., Eckert, M.: On static determination of temporal relevance for incremental evaluation of complex event queries. In: Proc. Int. Conf. on Distributed Event-Based Systems, pp. 289–300. ACM, New York (2008)

    Chapter  Google Scholar 

  12. Bry, F., Eckert, M., Etzion, O., Paschke, A., Riecke, J.: Event processing language tutorial. In: 3rd ACM Int. Conf. on Distributed Event-Based Systems, ACM, New York (2009)

    Google Scholar 

  13. Bry, F., Eckert, M., Pătrânjan, P.-L.: Querying composite events for reactivity on the web. In: Shen, H.T., Li, J., Li, M., Ni, J., Wang, W. (eds.) APWeb Workshops 2006. LNCS, vol. 3842, pp. 38–47. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  14. Bry, F., Eckert, M., Pătrânjan, P.-L.: Reactivity on the Web: Paradigms and applications of the language XChange. J. of Web Engineering 5(1), 3–24 (2006)

    Google Scholar 

  15. Carlson, J., Lisper, B.: An event detection algebra for reactive systems. In: Proc. ACM Int. Conf. On Embedded Software, pp. 147–154. ACM, New York (2004)

    Chapter  Google Scholar 

  16. Chakravarthy, S., Adaikkalavan, R.: Events and streams: Harnessing and unleashing their synergy! In: Proc. Int. Conf. on Distributed Event-Based Systems, pp. 1–12. ACM, New York (2008)

    Chapter  Google Scholar 

  17. Chakravarthy, S., Krishnaprasad, V., Anwar, E., Kim, S.-K.: Composite events for active databases: Semantics, contexts and detection. In: Proc. Int. Conf. on Very Large Data Bases, pp. 606–617. Morgan Kaufmann, San Francisco (1994)

    Google Scholar 

  18. Chandrasekaran, S., Cooper, O., Deshpande, A., Franklin, M.J., Hellerstein, J.M., Hong, W., Krishnamurthy, S., Madden, S., Raman, V., Reiss, F., Shah, M.A.: Telegraphcq: Continuous dataflow processing for an uncertain world. In: CIDR (2003)

    Google Scholar 

  19. Coulouris, G., Dollimore, J., Kindberg, T.: Distributed Systems: Concepts and Design, 3rd edn. Addison-Wesley, Reading (2001)

    Google Scholar 

  20. Demers, A.J., Gehrke, J., Panda, B., Riedewald, M., Sharma, V., White, W.M.: Cayuga: A general purpose event monitoring system. In: CIDR, pp. 412–422 (2007)

    Google Scholar 

  21. Eckert, M.: Reactivity on the Web: Event Queries and Composite Event Detection in XChange. Master’s thesis (Diplomarbeit), Institute for Informatics. University of Munich (2005)

    Google Scholar 

  22. Eckert, M.: Complex Event Processing with XChangeEQ: Language Design, Formal Semantics and Incremental Evaluation for Querying Events. PhD thesis, Institute for Informatics. University of Munich (2008)

    Google Scholar 

  23. Event Processing Technical Society (EPTS), http://www.ep-ts.com

  24. EsperTech Inc. Event stream intelligence: Esper & NEsper, http://esper.codehaus.org

  25. Forgy, C.: OPS5 user’s manual. Technical Report CMU-CS-81-135, Carnegie Mellon University (1981)

    Google Scholar 

  26. Forgy, C., McDermott, J.P.: OPS, a domain-independent production system language. In: Proc. Int. Joint Conf. on Artificial Intelligence, pp. 933–939. William Kaufmann, San Francisco (1977)

    Google Scholar 

  27. Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)

    Article  Google Scholar 

  28. Galton, A., Augusto, J.C.: Two approaches to event definition. In: Hameurlain, A., Cicchetti, R., Traunmüller, R. (eds.) DEXA 2002. LNCS, vol. 2453, pp. 547–556. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  29. Garg, V., Adaikkalavan, R., Chakravarthy, S.: Extensions to stream processing architecture for supporting event processing. In: Bressan, S., Küng, J., Wagner, R. (eds.) DEXA 2006. LNCS, vol. 4080, pp. 945–955. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  30. Gatziu, S., Dittrich, K.R.: Events in an active object-oriented database system. In: Proc. Int. Workshop on Rules in Database Systems, pp. 23–39. Springer, Heidelberg (1993)

    Google Scholar 

  31. Gatziu, S., Dittrich, K.R.: Detecting composite events in active database systems using petri nets. In: Proc. Int. Workshop on Research Issues in Data Engineering: Active Database Systems, pp. 2–9. IEEE, Los Alamitos (1994)

    Chapter  Google Scholar 

  32. Gehani, N.H., Jagadish, H., Shmueli, O.: Event specification in an active object-oriented database. In: Proc. Int. ACM Conf. on Management of Data (SIGMOD), pp. 81–90. ACM, New York (1992)

    Google Scholar 

  33. Gehani, N.H., Jagadish, H.V., Shmueli, O.: Composite event specification in active databases: Model & implementation. In: Proc. Int. Conf. on Very Large Data Bases, pp. 327–338. Morgan Kaufmann, San Francisco (1992)

    Google Scholar 

  34. Gehani, N.H., Jagadish, H.V., Shmueli, O.: Compose: A system for composite specification and detection. In: Adam, N.R., Bhargava, B.K. (eds.) Advanced Database Systems. LNCS, vol. 759, pp. 3–15. Springer, Heidelberg (1993)

    Google Scholar 

  35. Gualtieri, M., Rymer, J.R.: The Forrester WaveTM: Complex Event Procecessing (CEP) Platforms, http://www.forrester.com/rb/Research/wave/26trade/B_complex_event_processing_cep_platforms/2C_q3/q/id/48084/t/2

  36. Henzinger, T.A., Raskin, J.-F., Schobbens, P.-Y.: The regular real-time languages. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 580–591. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  37. Hinze, A., Voisard, A.: A parameterized algebra for event notification services. In: Proc. Int. Symp. on Temporal Representation and Reasoning, pp. 61–65. IEEE, Los Alamitos (2002)

    Chapter  Google Scholar 

  38. ILOG. ILOG JRules, http://www.ilog.com/products/jrules

  39. Jain, N., Mishra, S., Srinivasan, A., Gehrke, J., Widom, J., Balakrishnan, H., Çetintemel, U., Cherniack, M., Tibbetts, R., Zdonik, S.: Towards a streaming SQL standard. In: Proc. Int. Conf. on Very Large Data Bases. VLDB Endowment, vol. 1, pp. 1379–1390 (2008)

    Google Scholar 

  40. Jain, N., Mishra, S., Srinivasan, A., Gehrke, J., Widom, J., Balakrishnan, H., Çetintemel, U., Cherniack, M., Tibbetts, R., Zdonik, S.B.: Towards a streaming sql standard. PVLDB 1(2), 1379–1390 (2008)

    Google Scholar 

  41. JBoss.org. Drools, http://www.jboss.org/drools

  42. Krämer, J., Seeger, B.: Pipes: a public infrastructure for processing and exploring streams. In: Proceedings of the 2004 ACM SIGMOD International Conference on Management of Data, SIGMOD 2004, pp. 925–926. ACM, New York (2004)

    Chapter  Google Scholar 

  43. Krämer, J., Seeger, B.: Semantics and implementation of continuous sliding window queries over data streams. ACM Trans. Database Syst. 34, 4:1–4:49 (2009)

    Google Scholar 

  44. Kersten, M., Liarou, E., Goncalves, R.: A query language for a data refinery cell. In: Proc. Int. Workshop on Event-Driven Architecture, Processing and Systems (2007)

    Google Scholar 

  45. Kowalski, R.A., Sergot, M.J.: A logic-based calculus of events. New Generation Compututing 4(1), 67–95 (1986)

    Article  Google Scholar 

  46. Kozlenkov, A., Penaloza, R., Nigam, V., Royer, L., Dawelbait, G., Schröder, M.: Prova: Rule-based java scripting for distributed web applications: A case study in bioinformatics. In: Grust, T., Höpfner, H., Illarramendi, A., Jablonski, S., Fischer, F., Müller, S., Patranjan, P.-L., Sattler, K.-U., Spiliopoulou, M., Wijsen, J. (eds.) EDBT 2006. LNCS, vol. 4254, pp. 899–908. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  47. Krákora, J., Waszniowski, L., Hanzálek, Z.: Timed automata approach to real time distributed system verification. In: Proc. of EEE Int. Workshop on Factory Communication Systems (WFCS), pp. 407–410 (2004)

    Google Scholar 

  48. Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Communications of the ACM 21(7), 558–565 (1978)

    Article  MATH  Google Scholar 

  49. Li, Q., Rus, D.: Global clock synchronization in sensor networks. IEEE Transactions on Computers 55(2), 214–226 (2006)

    Article  Google Scholar 

  50. Liarou, E., Goncalves, R., Idreos, S.: Exploiting the power of relational databases for efficient stream processing. In: Int. Conf. on Extending Database Technology (EDBT), vol. 360, pp. 323–334. ACM, New York (2009)

    Chapter  Google Scholar 

  51. Luckham, D.C.: The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems. Addison-Wesley, Reading (2002)

    Google Scholar 

  52. Madden, S.R., Franklin, M.J., Hellerstein, J.M., Hong, W.: TinyDB: An acquisitional query processing system for sensor networks. ACM Transactions on Database Systems 30(1), 122–173 (2005)

    Article  Google Scholar 

  53. Mansouri-Samani, M., Sloman, M.: GEM: A generalized event monitoring language for distributed systems. Distributed Systems Engineering 4(2), 96–108 (1997)

    Article  Google Scholar 

  54. Merritt, M., Modugno, F., Tuttle, M.R.: Time-constrained automata. In: Groote, J.F., Baeten, J.C.M. (eds.) CONCUR 1991. LNCS, vol. 527, pp. 408–423. Springer, Heidelberg (1991)

    Google Scholar 

  55. Moreto, D., Endler, M.: Evaluating composite events using shared trees. IEE Proceedings — Software 148(1), 1–10 (2001)

    Article  Google Scholar 

  56. Morrell, J., Vidich, S.D.: Complex Event Processing with Coral8. White Paper (2007), http://www.coral8.com/system/files/assets/pdf/Complex_Event_Processing_with_Coral8.pdf

  57. MS Analog Software. ruleCore(R) Complex Event Processing (CEP) Server, http://www.rulecore.com

  58. Oracle Inc. Complex Event Processing in the real world. White Paper, http://www.oracle.com/technologies/soa/docs/oracle-complex-event-processing.pdf

  59. Ouimet, M., Lundqvist, K.: The timed abstract state machine language: Abstract state machines for real-time system engineering. Journal of Universal Computer Science 14(12), 2007–2033 (2008)

    MathSciNet  Google Scholar 

  60. Paschke, A., Boley, H.: Rules capturing events and reactivity. In: Handbook of Research on Emerging Rule-Based Languages and Technologies: Open Solutions and Approaches, pp. 215–252. IGI Global (2009)

    Google Scholar 

  61. Paschke, A., Kozlenkov, A.: Rule-based event processing and reaction rules. In: Governatori, G., Hall, J., Paschke, A. (eds.) RuleML 2009. LNCS, vol. 5858, pp. 53–66. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  62. Paschke, A., Kozlenkov, A., Boley, H.: A homogenous reaction rule language for Complex Event Processing. In: In Proc. 2nd Int. Workshop on Event Drive Architecture and Event Processing Systems (2007)

    Google Scholar 

  63. Paschke, A., Kozlenkov, A., Boley, H., Tabet, S., Kifer, M., Dean, M.: Reaction RuleML (2007), http://ibis.in.tum.de/research/ReactionRuleML/

  64. Paton, N.W. (ed.): Active Rules in Database Systems. Springer, Heidelberg (1998)

    Google Scholar 

  65. Reiss, F., Stockinger, K., Wu, K., Shoshani, A., Hellerstein, J.M.: Enabling real-time querying of live and historical stream data. In: SSDBM, p. 28 (2007)

    Google Scholar 

  66. Roncancio, C.: Toward duration-based, constrained and dynamic event types. In: Andler, S.F., Hansson, J. (eds.) ARTDB 1997. LNCS, vol. 1553, pp. 176–193. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  67. Sánchez, C., Sankaranarayanan, S., Sipma, H., Zhang, T., Dill, D.L., Manna, Z.: Event correlation: Language and semantics. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855, pp. 323–339. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  68. Sánchez, C., Słanina, M., Sipma, H.B., Manna, Z.: Expressive completeness of an event-pattern reactive programming language. In: Wang, F. (ed.) FORTE 2005. LNCS, vol. 3731, pp. 529–532. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  69. Sandia National Laboratories. Jess, the rule engine for the Java(TM) platform, http://herzberg.ca.sandia.gov/

  70. Schmidt, K.-U., Anicic, D., Stühmer, R.: Event-driven reactivity: A survey and requirements analysis. In: SBPM2008: 3rd Int. Workshop on Semantic Business Process Management in Conjunction with the 5th European Semantic Web Conf. (ESWC 2008). CEUR Workshop Proceedings (2008)

    Google Scholar 

  71. Seeger, B.: Kontinuierliche kontrolle. IX: Magazin für Professionelle Informationstechnik 2 (2010)

    Google Scholar 

  72. Seiriö, M., Berndtsson, M.: Design and implementation of an ECA rule markup language. In: Adi, A., Stoutenburg, S., Tabet, S. (eds.) RuleML 2005. LNCS, vol. 3791, pp. 98–112. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  73. StreamBase Systems. StreamSQL Guide (2011), http://streambase.com/developers/docs/latest/streamsql/index.html

  74. Walzer, K., Breddin, T., Groch, M.: Relative temporal constraints in the Rete algorithm for complex event detection. In: Proc. Int. Conf. on Distributed Event-Based Systems, pp. 147–155. ACM, New York (2008)

    Chapter  Google Scholar 

  75. Wu, E., Diao, Y., Rizvi, S.: High-performance Complex Event Processing over streams. In: Proc. Int. ACM Conf. on Management of Data (SIGMOD), pp. 407–418. ACM, New York (2006)

    Chapter  Google Scholar 

  76. Zhu, D., Sethi, A.S.: SEL, a new event pattern specification language for event correlation. In: Proc. Int. Conf. on Computer Communications and Networks, pp. 586–589. IEEE, Los Alamitos (2001)

    Google Scholar 

  77. Zimmer, D., Unland, R.: On the semantics of complex events in active database management systems. In: Proc. Int. Conf. on Data Engineering, pp. 392–399. IEEE, Los Alamitos (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Eckert, M., Bry, F., Brodt, S., Poppe, O., Hausmann, S. (2011). A CEP Babelfish: Languages for Complex Event Processing and Querying Surveyed. In: Helmer, S., Poulovassilis, A., Xhafa, F. (eds) Reasoning in Event-Based Distributed Systems. Studies in Computational Intelligence, vol 347. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19724-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-19724-6_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-19723-9

  • Online ISBN: 978-3-642-19724-6

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics