Your SlideShare is downloading. ×
0
A Declarative Framework for MatchingIterative and Aggregative Patterns againstEvent StreamsDarko Anicic, Sebastian Rudolph...
Agenda Introduction, Motivation Iterative and Aggregative Patterns in ETALIS   • Language   • Window operations   • Eval...
Iterative and Aggregative                         Patterns in ETALISRecursive CEP in ETALIS                        ETALIS ...
Motivation In CEP it is common to perform various aggregations  over data carried by events; Iterative patterns: an outp...
ETALIS - A Logic Rule-based Approach                              for CEP A rule-based formalism is expressive enough and...
ETALIS: Language SyntaxETALIS Language for Events is formally defined by:• pr - a predicate name with arity n;• t(i) - den...
ETALIS: Interval-based Semantics
ETALIS: Declarative Semantics
ExamplesA sum over an unbound event stream until a threshold value is met:The k-fold sequential execution of an event a:A ...
ETALIS: Operational Semantics - AND                                  (1/6)1. Complex pattern (notevent-driven rule)a SEQ b...
ETALIS: Operational Semantics (3/6)For any aggregate function, calculated over a window,we implement the following three r...
ETALIS: Operational Semantics (4/6)SUM aggregate function:
ETALIS: Operational Semantics (5/6)MAX aggregate function:
ETALIS: Operational Semantics (6/6)COUNT aggregate function:• Data structures: red-black trees, stack, difference lists• T...
Tests I: Throughput Comparison                           • Intel Core Quad CPU Q9400 2,66GHz, 8GB of RAM, Vista x64;      ...
Tests II: CEP with Stream ReasoningFigure: (a) throughput comparison (b) memory consumption
Conclusion     • We presented a framework for a logic rule-based CEP       and reasoning;     • The framework is capable t...
Thank you! Questions…          ETALIS          Open source:http://code.google.com/p/etalis                         Darko.A...
Upcoming SlideShare
Loading in...5
×

Etalis rule ml_2011_itterative

897

Published on

A talk given at RuleML 2011, Barcelona, Spain. See the paper related to this talk:
https://sites.google.com/site/darkoanicic/Anicic_RuleML11_Iterative_Rules.pdf

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
897
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
18
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Etalis rule ml_2011_itterative"

  1. 1. A Declarative Framework for MatchingIterative and Aggregative Patterns againstEvent StreamsDarko Anicic, Sebastian Rudolph, Paul Fodor, NenadStojanovicRuleML : Proceedings of the 5th International Symposium on Rules,Barcelona, Spain
  2. 2. Agenda Introduction, Motivation Iterative and Aggregative Patterns in ETALIS • Language • Window operations • Evaluation results Conclusion.
  3. 3. Iterative and Aggregative Patterns in ETALISRecursive CEP in ETALIS ETALIS Features: ψ=? • Logic-based CEP π ← φ ∨ ¬ ψ. φ = true. • Knowledge-based CEP Event • Stream (deductive) Sources reasoning Detected • Iterative and aggregative Situations patterns CEP • An implementation available • An extensible framework Pattern Definitions
  4. 4. Motivation In CEP it is common to perform various aggregations over data carried by events; Iterative patterns: an output (complex) event is treated as an input event of the same CEP processing agent; Kleene closure can be used to extract from the input stream a finite yet unbounded number of events with a particular property; Iterative and aggregative patterns, as well as Kleene closure can be realised with NFAs [Agrawal et al. SIGMOD’08] or event graphs [Mei et al. SIGMOD’09]; ETALIS is a logic rule-based approach for CEP.
  5. 5. ETALIS - A Logic Rule-based Approach for CEP A rule-based formalism is expressive enough and convenient to represent diverse complex event patterns; Rules can easily express complex relationships between events by matching certain temporal, relational or causal conditions; Our rule-based formalism can specify and evaluate contextual knowledge (which captures the domain of interest or context related to business critical actions); With background knowledge events can be: enriched, classified, clustered, filtered etc. (with no explicit specifications). ETALIS is a unified framework for CEP and reasoning.
  6. 6. 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
  7. 7. ETALIS: Interval-based Semantics
  8. 8. ETALIS: Declarative Semantics
  9. 9. ExamplesA sum over an unbound event stream until a threshold value is met:The k-fold sequential execution of an event a:A sliding length-based window, e.g., n=5:
  10. 10. ETALIS: Operational Semantics - AND (1/6)1. Complex pattern (notevent-driven rule)a SEQ b SEQ c → ce12. Decoupling((a SEQ b) SEQ c) → ce13. Binarizationa SEQ b → ieie SEQ c → ce14. Event-driven backwardchaining rules
  11. 11. ETALIS: Operational Semantics (3/6)For any aggregate function, calculated over a window,we implement the following three rules:
  12. 12. ETALIS: Operational Semantics (4/6)SUM aggregate function:
  13. 13. ETALIS: Operational Semantics (5/6)MAX aggregate function:
  14. 14. ETALIS: Operational Semantics (6/6)COUNT aggregate function:• Data structures: red-black trees, stack, difference lists• Time-based windows require a time-based garbage collection (GC);• We have implemented two techniques for GC: • pushed constraints • general and pattern-based GC
  15. 15. Tests I: Throughput Comparison • Intel Core Quad CPU Q9400 2,66GHz, 8GB of RAM, Vista x64; ETALIS on SWI Prolog 5.6.64 and YAP Prolog 5.1.3 vs. Esper 3.3.0 • Aggregations are computed over complex events of the following type: Esper 3.3.0 P-Stack P-Dlists Esper 3.1.0 P-Stack P-RB treesThroughput (1000 x Events/Sec) Throughput (1000 x Events/Sec) 30 30 25 25 20 20 15 15 10 10 5 5 0 0 100 500 1000 50000 100 1000 50000 Window size window size Figure: Throughput vs. wind. size (a) SUM-AND (b) AVG-SEQ
  16. 16. Tests II: CEP with Stream ReasoningFigure: (a) throughput comparison (b) memory consumption
  17. 17. Conclusion • We presented a framework for a logic rule-based CEP and reasoning; • The framework is capable to specify and process iterative and aggregative complex event patterns; • Aggregations, calculated over sliding windows, do not require an extension of the existing language and come with no additional costs in terms of performance.17
  18. 18. Thank you! Questions… ETALIS Open source:http://code.google.com/p/etalis Darko.Anicic@fzi.de
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×