Abstract
Several complex event processing (CEP) middleware solutions have been proposed in the past. They act by processing primitive events generated by sources, extracting new knowledge in the form of composite events, and delivering them to interested sinks. Event-based applications often involve a large number of sources and sinks, possibly dispersed over a wide geographical area. To better support these scenarios, the CEP middleware can be internally built around several, distributed processors, which cooperate to provide the processing and routing service. This paper introduces and compares different deployment strategies for a CEP middleware, which define (i) how the processing load is distributed over different processors and (ii) how these processors interact to produce the required results and to deliver them to sinks. Our evaluation compares the presented solutions and shows their benefits with respect to a centralized deployment, both in terms of network traffic and in terms of forwarding delay.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
The use of advertisements has been first introduced (and widely adopted) by publish-subscribe systems [11].
Forwarding of subscriptions is required only when a single tree strategy is adopted. Multiple trees strategies do not require subscriptions to be forwarded, since each sink is already at the root of its own tree, where composite events are detected.
Notice that, while the example above only considers the types of events, our strategies also consider the constraints on the content of events expressed in rules during partitioning.
Here the term is used to indicate the internal events used in Omnet++ to model a complex network, not a T-Rex event.
References
Abadi DJ, Ahmad Y, Balazinska M, Cetintemel U, Cherniack M, Hwang JH, Lindner W, Maskey AS, Rasin A, Ryvkina E, Tatbul N, Xing Y, Zdonik SB (2005) The design of the borealis stream processing engine. In: CIDR 2005, ACM, Asilomar, CA, USA
Agrawal J, Diao Y, Gyllstrom D, Immerman N (2008) Efficient pattern matching over event streams. In: SIGMOD ’08, ACM, New York, pp 147–160. doi:10.1145/1376616.1376634
Ahmad Y, Berg B, Cetintemel U, Humphrey M, Hwang JH, Jhingran A, Maskey A, Papaemmanouil O, Rasin A, Tatbul N, Xing W, Xing Y, Zdonik S (2005) Distributed operation in the borealis stream processing engine. In: SIGMOD ’05, ACM, New York, pp 882-884. doi:10.1145/1066157.1066274
Ahmad Y, Çetintemel U (2004) Network-aware query processing for stream-based applications. In: VLDB ’04, pp 456–467. (VLDB Endowment)
Ali M (2010) An introduction to microsoft sql server streaminsight. In: Proceedings of the 1st international conference and exhibition on computing for geospatial research and application, COM.Geo ’10, ACM, New York, NY, USA, p 66:1. doi:10.1145/1823854.1823929
Amini L, Jain N, Sehgal A, Silber J, Verscheure O (2006) Adaptive control of extreme-scale stream processing systems. In: ICDCS ’06, IEEE Computer Society, Washington, DC, p 71. doi:10.1109/ICDCS.2006.13
Balazinska M, Balakrishnan H, Stonebraker M (2004) Contract-based load management in federated distributed systems.In: NSDI ’04, USENIX Association, Berkeley, p 15
Brenna L, Demers A, Gehrke J, Hong M, Ossher J, Panda B, Riedewald M, Thatte M, White W (2007) Cayuga: a high-performance event processing engine. In: SIGMOD ’07, ACM, New York, pp 1100–1102. doi:10.1145/1247480.1247620
Broda K, Clark K, Miller R, Russo A (2009) Sage: a logical agent-based environment monitoring and control system. In: AmI ’09, pp 112–117
Carzaniga A, Rosenblum D, Wolf A (2001) Design and evaluation of a wide-area event notification service. ACM Trans Computer Syst 19(3):332–383. http://www.citeseer.nj.nec.com/482106.html
Carzaniga A, Rosenblum DS, Wolf AL (2000) Achieving scalability and expressiveness in an internet-scale event notification service. PODC ’00, Portland, pp 219–227
Carzaniga A, Rutherford MJ, Wolf AL (2004) A routing scheme for content-based networking. In: INFOCOM ’04, Hong Kong
Chakravarthy S, Krishnaprasad V, Anwar E, Kim SK (1994) Composite events for active databases: semantics, contexts and detection. In: Proceedings of the 20th international conference on very large data bases, VLDB ’94. Morgan Kaufmann Publishers Inc., San Francisco, pp 606–617
Cugola G, Margara A (2009) Raced: an adaptive middleware for complex event detection. In: ARM ’09, ACM, New York, pp 1–6
Cugola G, Margara A (2010) Tesla: a formally defined event specification language. In: DEBS ’10, ACM, New York, pp 50–61. doi:10.1145/1827418.1827427
Cugola G, Margara A (2012) Complex event processing with t-rex. J Syst Softw 85(8):1709–1728. doi:10.1016/j.jss.2012.03.056. http://www.sciencedirect.com/science/article
Cugola G, Margara A (2012) Low latency complex event processing on parallel hardware. J Parallel Distrib Comput 72(2):205–218. doi:10.1016/j.jpdc.2011.11.002
Cugola G, Margara A (2012) ACM Comput Surv. Processing flows of information: from data stream to complex event processing 44(3):15:1–15:62. doi:10.1145/2187671.2187677
Cugola G, Margara A, Migliavacca M (2009) Context-aware publish-subscribe: model, implementation, and evaluation. In: ISCC ’09, IEEE Computer Society Press, Toronto
Demers AJ, Gehrke J, Hong M, Riedewald M, White WM (2006) Towards expressive publish/subscribe systems. In: EDBT ’06, pp 627–644
Eyers D, Freudenreich T, Margara A, Frischbier S, Pietzuch P, Eugster P (2012) Living in the present: on-the-fly information processing in scalable web architectures. In: Proceedings of the 2nd international workshop on cloud computing platforms, CloudCP ’12, ACM, New York, pp 6:1–6:6 USA. doi:10.1145/2168697.2168703
Jain N, Kit D, Mahajan P, Yalagandula P, Dahlin M, Zhang Y (2007) STAR: self-tuning aggregation for scalable monitoring. In: VLDB’07, Viennna
Jain N, Mahajan P, Kit D, Yalagandula P, Dahlin M, Zhang Y (2008) Network imprecision: a new consistency metric for scalable monitoring. In: OSDI’08. http://dl.acm.org/citation.cfm?id=1855741.1855748
Khandekar R, Hildrum K, Parekh S, Rajan D, Wolf J, Wu KL, Andrade H, Gedik B (2009) Cola: optimizing stream processing applications via graph partitioning. In: Middleware ’09. Springer, New York, pp 1–20
Kumar V, Cooper BF, Cai Z, Eisenhauer G, Schwan K (2005) Resource-aware distributed stream management using dynamic overlays. In: ICDCS ’05, IEEE Computer Society, Washington, pp 783–792. doi:10.1109/ICDCS.2005.69
Lakshmanan GT, Li Y, Strom R (2008) Placement strategies for internet-scale data stream systems. In: IEEE Internet Comput 12(6):50–60. doi:10.1109/MIC.2008.129
Li G, Jacobsen HA (2005) Composite subscriptions in content-based publish/subscribe systems. In: Middleware ’05, Springer, New York, Inc., New York
Liebig C, Cilia M, Buchmann A (1999) Event composition in time-dependent distributed systems. In: Cooperative information systems, 1999, CoopIS ’99, Proceedings. 1999 IFCIS international conference on cooperative information system, pp 70–78. doi:10.1109/COOPIS.1999.792159
Medina A, Lakhina A, Matta I, Byers J (2001) Brite: an approach to universal topology generation. In: MASCOTS ’01, IEEE Computer Society, Washington, DC, p 346
Moody K, Bacon J, Evans D, Schwiderski-Grosche S (2010) Implementing a practical spatio-temporal composite event language. In: Sachs K, Petrov I, Guerrero P (eds) From active data management to event-based systems and more. Lecture notes in computer science, vol 6462, Springer Berlin, Heidelberg, pp 108–123. doi:10.1007/978-3-642-17226-7_7
O’Keeffe D, Bacon J (2010) Reliable complex event detection for pervasive computing. In: Proceedings of the fourth ACM international conference on distributed event-based systems, DEBS ’10, ACM, New York, pp 73–84. doi:10.1145/1827418.1827429
Pietzuch P, Ledlie J, Shneidman J, Roussopoulos M, Welsh M, Seltzer M (2006) Network-aware operator placement for stream-processing systems. In: ICDE ’06, IEEE Computer Society
Pietzuch P, Shand B, Bacon J (2004) Composite event detection as a generic middleware extension. Network IEEE 18(1):44–55. doi:10.1109/MNET.2004.1265833
Pietzuch PR, Shand B, Bacon J (2003) A framework for event composition in distributed systems. In: Proceedings of the ACM/IFIP/USENIX 2003 international conference on middleware, Middleware ’03. Springer-Verlag New York, Inc., New York, pp 62–82. http://dl.acm.org/citation.cfm?id=1515915.1515921
Ré C, Letchner J, Balazinksa M, Suciu D (2008) Event queries on correlated probabilistic streams. In: Proceedings of the 2008 ACM SIGMOD international conference on management of data, SIGMOD ’08. ACM, New York, pp 715–728. doi:10.1145/1376616.1376688
Repantis T, Gu X, Kalogeraki V (2006) Synergy: sharing-aware component composition for distributed stream processing systems. In: Middleware ’06. Springer-Verlag New York, Inc., New York
Schultz-Moeller NP, Migliavacca M, Pietzuch P (2009) Distributed complex event processing with query optimisation. In: DEBS ’09, ACM, ACM, Nashville
Schwiderski-Grosche S, Moody K (2009) The spatec composite event language for spatio-temporal reasoning in mobile systems. In: Proceedings of the third ACM international conference on distributed event-based systems, DEBS ’09. ACM, New York, pp 11:1–11:12. doi:10.1145/1619258.1619273
Srivastava U, Widom J (2004) Flexible time management in data stream systems. In: PODS ’04, ACM, New York, pp 263–274. doi:10.1145/1055558.1055596
Varga A (2001) The omnet++ discrete event simulation system. In: ESM ’01
Wasserkrug S, Gal A, Etzion O, Turchin Y (2012) Efficient processing of uncertain events in rule-based systems. In: IEEE Trans Knowl Data Eng 24(1):45–58. doi:10.1109/TKDE.2010.204
Wolf J, Bansal N, Hildrum K, Parekh S, Rajan D, Wagle R, Wu KL, Fleischer L (2008) Soda: an optimizing scheduler for large-scale stream-based distributed computer systems. In: Middleware ’08, Springer-Verlag New York, Inc., New York, pp 306–325
Yoneki E, Bacon J (2005) Unified semantics for event correlation over time and space in hybrid network environments. In: Proceedings of the 2005 confederated international conference on the move to meaningful internet systems, OTM’05. Springer, Berlin, Heidelberg, pp 366–384. doi:10.1007/11575771_24
Zhou Y, Ooi BC, Tan KL, Wu J (2006) Efficient dynamic operator placement in a locally distributed continuous query system. In: OTM Conferences, vol 1, pp 54–71
Acknowledgments
This work was partially supported by the European Commission, Programme IDEAS-ERC, Project 227977-SMScom.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Cugola, G., Margara, A. Deployment strategies for distributed complex event processing. Computing 95, 129–156 (2013). https://doi.org/10.1007/s00607-012-0217-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-012-0217-9