Published on

A talk given at RuleML 2011, Barcelona, Spain. See the paper related to this talk:

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Retractable Complex Event Processingand Stream ReasoningDarko Anicic, Sebastian Rudolph, Paul Fodor, NenadStojanovicRuleML : Proceedings of the 5th International Symposium on Rules,Barcelona, Spain
  2. 2. Agenda Introduction, Motivation ETALIS Language for Events • Syntax; • Semantics; • Experimental Results; Conclusion.
  3. 3. Logic-based Complex Event Processing in ETALISUse background (contextual) knowledge to CEP with on-the-fly knowledgeexplore semantic relations between evaluation and streamevents, and detect otherwise undetectable reasoning:complex situation. • Complex situation based on ψ=? π ← φ ∨ ¬ ψ. explicit data (events) and φ = true. implicit/ explicit knowledge • Classification and filtering Event Sources • Context evaluation • Intelligent recommendation Detected Situations • Predictive analysis CEP Pattern Definitions
  4. 4. Motivation Knowledge-based CEP & Stream Reasoning• Today’s CEP systems are focused mostly on throughput and timeliness;• Time critical actions/decisions are supposed to be taken upon detection of complex events;• These actions additionaly require evaluation of background knowledge;• Knowledge captures the domain of interest or context related to actions/decisions;• The task of reasoning over streaming data (events) and the background knowledge constitutes a challenge known as Stream Reasoning. Current CEP systems provide on the-fly analysis of data streams, but mainly fall short when it comes to combining streams with evolving knowledge and performing reasoning tasks.
  5. 5. Motivation Non-blocking Event Revision – Transactional Events• Events in today’s CEP systems are assumed to be immutable and therefore always correct;• In some situations however revisions are required: • an event was reported by mistake, but did not happen in reality; • an event was triggered and later revoked due to a transaction failure.• As recognised in [Ryvkina et al. ICDE’06], event stream sources may issue revision tuples that amend previously issued events. Current CEP systems provide on the-fly analysis of data streams, but typically don’t take these revision tuples into account and produce correct revision outputs.
  6. 6. Related WorkDSMS Approaches for retractions in CEP: D. Carney et al. Monitoring streams: a new class of data management applications. In VLDB’02 A. S. Maskey et al. Replay-based approaches to revision processing in stream query engines. In SSPS’02. based on archives of recent data and replying whole recent history is kept archived R. S. Barga et al. Consistent streaming through time: A vision for event stream processing. In CIDR’07. based on blocking, buffering and synchronisation pointStream Reasoning approaches: D. F. Barbieri et al. An execution environment for C-SPARQL queries. In EDBT’10. A. Bolles et al. Streaming SPARQL – Extending SPARQL to Process Data Streams. In ESWC’10.
  7. 7. Agenda Introduction, Motivation ETALIS: Retractable CEP and Stream Reasoning • Syntax; • Semantics; • Experimental Results; Conclusion.
  8. 8. ETALIS: Language SyntaxETALIS Language for Events is formally defined by:• pr - a predicate name with arity n;• t(i) - denote terms;• t - is a term of type boolean;• q - is a nonnegative rational number;• BIN - is one of the binary operators:SEQ, AND, PAR, OR, EQUALS, MEETS, STARTS, or FINISHES.Event rule is defined as a formula of the following shape:where p is an event pattern containing all variables occurring in
  9. 9. ETALIS: Interval-based Semantics
  10. 10. ETALIS: Formal Semantics
  11. 11. ETALIS: Operational Semantics (SEQ) 1. Complex pattern (nota SEQ b SEQ c → ce1 event-driven rule)((a SEQ b) SEQ c) → ce1 2. Decouplinga SEQ b → ie 3. Binarizationie SEQ c → ce1 4. Event-driven backward chaining rules
  12. 12. ETALIS: Operational Semantics (rSEQ)
  13. 13. Tests I: CEP with Stream Reasoning Throughput Change Throughput (1000 x Events/Sec) 30 20Intel Core Quad CPU Q9400 102,66GHz, 8GB of RAM, Vista x64;ETALIS on SWI Prolog 5.6.64 andYAP Prolog 5.1.3 vs. Esper 3.3.0 0 100 1000 10000 100000 Recursion depth
  14. 14. Tests II: Throughput Comparison Revision Flag off Revision Flag on 35Throughput (1000 x Events/Sec) Revision Flag off Revision Flag on Throughput (1000 x Events/Sec) 30 30 25 20 20 15 10 10 5 0 0 SEQ AND PAR OR 5% 10% 20% Operator Percentage of revised events Figure: Throughput (a) Various operaors (b) Negation
  15. 15. Tests III: Stock price change on a real data set• Yahoo Finance: IBM stocks with revision without revision from 1962 up to now 18 Throughput (1000 x events/sec) 16• 5% revision tulples 14 introduced 12 10 8 6 4 2 0 0% 0.50% 1% 2% 5% 10% Price Increase
  16. 16. Agenda Introduction, Motivation ETALIS Language for Events • Syntax; • Semantics; • Experimental Results; Conclusion.
  17. 17. Conclusion: A Common Framework for Event Processing in ETALIS ETALIS Integration Reasoning Retractable A with the over CEP - deductive domain streaming an rule knowledge data and extensible framework and background framework for CEP databases knowledge for CEP ETALIS: A Common Framework for Event Processing17
  18. 18. Thank you! Questions… ETALIS Open source: