Efficient Adaptive Detection of Complex Event Patterns

Complex event processing (CEP) is widely employed to detect occurrences of predefined combinations (patterns) of events in massive data streams. As new events are accepted, they are matched using some type of evaluation structure, commonly optimized according to the statistical properties of the data items in the input stream. However, in many real-life scenarios the data characteristics are never known in advance or are subject to frequent on-the-fly changes. To modify the evaluation structure as a reaction to such changes, adaptation mechanisms are employed. These mechanisms typically function by monitoring a set of properties and applying a new evaluation plan when significant deviation from the initial values is observed. This strategy often leads to missing important input changes or it may incur substantial computational overhead by over-adapting. In this paper, we present an efficient and precise method for dynamically deciding whether and how the evaluation structure should be reoptimized. This method is based on a small set of constraints to be satisfied by the monitored values, defined such that a better evaluation plan is guaranteed if any of the constraints is violated. To the best of our knowledge, our proposed mechanism is the first to provably avoid false positives on reoptimization decisions. We formally prove this claim and demonstrate how our method can be applied on known algorithms for evaluation plan generation. Our extensive experimental evaluation on real-world datasets confirms the superiority of our strategy over existing methods in terms of performance and accuracy.

[1]  Opher Etzion,et al.  Event Processing in Action , 2010 .

[2]  Christophe Marsala,et al.  Adaptive complex event processing for harmful situation detection , 2012, Evol. Syst..

[3]  Walid G. Aref,et al.  JISC: Adaptive Stream Processing Using Just-In-Time State Completion , 2014, EDBT.

[4]  KabraNavin,et al.  Efficient mid-query re-optimization of sub-optimal query execution plans , 1998 .

[5]  Assaf Schuster,et al.  Lazy evaluation methods for detecting complex events , 2015, DEBS.

[6]  Jennifer Widom,et al.  Adaptive ordering of pipelined stream filters , 2004, SIGMOD '04.

[7]  Jennifer Widom,et al.  STREAM: The Stanford Data Stream Management System , 2016, Data Stream Management.

[8]  Ugur Çetintemel,et al.  Plan-based complex event detection across distributed sources , 2008, Proc. VLDB Endow..

[9]  Arun N. Swami,et al.  Optimization of large join queries: combining heuristics and combinatorial techniques , 1989, SIGMOD '89.

[10]  Samuel Madden,et al.  Continuously adaptive continuous queries over streams , 2002, SIGMOD '02.

[11]  Ying Xing,et al.  The Design of the Borealis Stream Processing Engine , 2005, CIDR.

[12]  Jennifer Widom,et al.  Content-Based Routing: Different Plans for Different Data , 2005, VLDB.

[13]  Jason J. Jung,et al.  Adaptive Complex Event Processing Based on Collaborative Rule Mining Engine , 2015, ACIIDS.

[14]  Johannes Gehrke,et al.  Towards Expressive Publish/Subscribe Systems , 2006, EDBT.

[15]  Yoonho Park,et al.  SPC: a distributed, scalable platform for data mining , 2006, DMSSP '06.

[16]  Neil Immerman,et al.  On complexity and optimization of expensive queries in complex event processing , 2014, SIGMOD Conference.

[17]  Minos N. Garofalakis,et al.  Issues in complex event processing: Status and prospects in the Big Data era , 2017, J. Syst. Softw..

[18]  Elisa Bertino,et al.  Multi-route query processing and optimization , 2013, J. Comput. Syst. Sci..

[19]  Yin Yang,et al.  Dynamic Plan Migration for Snapshot-Equivalent Continuous Queries in Data Stream Systems , 2006, EDBT Workshops.

[20]  Alessandro Margara,et al.  Processing flows of information: From data stream to complex event processing , 2012, CSUR.

[21]  Jennifer Widom,et al.  StreaMon: an adaptive engine for stream query processing , 2004, SIGMOD '04.

[22]  Assaf Schuster,et al.  Efficient Detection of Complex Event Patterns Using Lazy Chain Automata , 2016, ArXiv.

[23]  Maribel Acosta,et al.  ANAPSID: An Adaptive Query Processing Engine for SPARQL Endpoints , 2011, SEMWEB.

[24]  Volker Markl,et al.  LEO - DB2's LEarning Optimizer , 2001, VLDB.

[25]  Elke A. Rundensteiner,et al.  Dynamic plan migration for continuous queries over data streams , 2004, SIGMOD '04.

[26]  Opher Etzion,et al.  Amit - the situation manager , 2003, The VLDB Journal.

[27]  Michael Stonebraker,et al.  Load Shedding in a Data Stream Manager , 2003, VLDB.

[28]  Rajeev Motwani,et al.  Maintaining variance and k-medians over data stream windows , 2003, PODS.

[29]  Jonathan Goldstein,et al.  Consistent Streaming Through Time: A Vision for Event Stream Processing , 2006, CIDR.

[30]  Hans-Arno Jacobsen,et al.  Adaptive parallel compressed event matching , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[31]  Tsuyoshi Murata,et al.  {m , 1934, ACML.

[32]  Yanlei Diao,et al.  High-performance complex event processing over streams , 2006, SIGMOD Conference.

[33]  Hamid Pirahesh,et al.  Robust query processing through progressive optimization , 2004, SIGMOD '04.

[34]  David J. DeWitt,et al.  NiagaraCQ: a scalable continuous query system for Internet databases , 2000, SIGMOD '00.

[35]  Alon Y. Halevy,et al.  Adapting to source properties in processing data integration queries , 2004, SIGMOD '04.

[36]  Assaf Schuster,et al.  Join Query Optimization Techniques for Complex Event Processing Applications , 2018, Proc. VLDB Endow..

[37]  Jae-Gil Lee,et al.  APAM: Adaptive Eager-Lazy Hybrid Evaluation of Event Patterns for Low Latency , 2016, CIKM.

[38]  Boon Thau Loo,et al.  Enabling Incremental Query Re-Optimization , 2014, SIGMOD Conference.

[39]  Samuel Madden,et al.  ZStream: a cost-based query processor for adaptively detecting composite events , 2009, SIGMOD Conference.

[40]  David J. DeWitt,et al.  Proactive re-optimization , 2005, SIGMOD '05.

[41]  J. S. Saini,et al.  Adaptive Query Processing , 2006 .

[42]  Peter R. Pietzuch,et al.  Distributed complex event processing with query rewriting , 2009, DEBS '09.

[43]  J. K. Lenstra,et al.  Local Search in Combinatorial Optimisation. , 1997 .

[44]  Neil Immerman,et al.  Efficient pattern matching over event streams , 2008, SIGMOD Conference.

[45]  Alessandro Margara,et al.  Complex event processing with T-REX , 2012, J. Syst. Softw..

[46]  Feng Gao,et al.  CityBench: A Configurable Benchmark to Evaluate RSP Engines Using Smart City Datasets , 2015, SEMWEB.

[47]  Badrish Chandramouli,et al.  High-performance dynamic pattern matching over disordered streams , 2010, Proc. VLDB Endow..

[48]  Joseph M. Hellerstein,et al.  Eddies: continuously adaptive query processing , 2000, SIGMOD '00.

[49]  Piotr Indyk,et al.  Maintaining Stream Statistics over Sliding Windows , 2002, SIAM J. Comput..

[50]  Frederick Reiss,et al.  TelegraphCQ: Continuous Dataflow Processing for an Uncertain World , 2003, CIDR.

[51]  Alessandro Margara,et al.  TESLA: a formally defined event specification language , 2010, DEBS '10.