SlideShare una empresa de Scribd logo
1 de 18
A Declarative Framework for Matching
Iterative and Aggregative Patterns against
Event Streams
Darko Anicic, Sebastian Rudolph, Paul Fodor, Nenad
Stojanovic
RuleML : Proceedings of the 5th International Symposium on Rules,
Barcelona, Spain
Agenda

 Introduction, Motivation

 Iterative and Aggregative Patterns in ETALIS
   • Language
   • Window operations
   • Evaluation results

 Conclusion.
Iterative and Aggregative
                         Patterns in ETALIS

Recursive 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
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.
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.
ETALIS: Language Syntax

ETALIS 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
ETALIS: Interval-based Semantics
ETALIS: Declarative Semantics
Examples
A 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:
ETALIS: Operational Semantics - AND
                                  (1/6)
1. Complex pattern (not
event-driven rule)
a SEQ b SEQ c → ce1

2. Decoupling

((a SEQ b) SEQ c) → ce1


3. Binarization

a SEQ b → ie
ie SEQ c → ce1

4. Event-driven backward
chaining rules
ETALIS: Operational Semantics (3/6)
For any aggregate function, calculated over a window,
we implement the following three rules:
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
• Time-based windows require a time-based garbage
  collection (GC);
• We have implemented two techniques for GC:
   • pushed constraints
   • general and pattern-based GC
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 trees
Throughput (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
Tests II: CEP with Stream Reasoning




Figure: (a) throughput comparison (b) memory consumption
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
Thank you! Questions…

          ETALIS

          Open source:
http://code.google.com/p/etalis




                         Darko.Anicic@fzi.de

Más contenido relacionado

Similar a Etalis rule ml_2011_itterative

Ontology mapping needs context & approximation
Ontology mapping needs context & approximationOntology mapping needs context & approximation
Ontology mapping needs context & approximationFrank van Harmelen
 
深度學習在AOI的應用
深度學習在AOI的應用深度學習在AOI的應用
深度學習在AOI的應用CHENHuiMei
 
Machine Learning with Apache Mahout
Machine Learning with Apache MahoutMachine Learning with Apache Mahout
Machine Learning with Apache MahoutDaniel Glauser
 
Improving Requirements Glossary Construction via Clustering
Improving Requirements Glossary Construction via ClusteringImproving Requirements Glossary Construction via Clustering
Improving Requirements Glossary Construction via ClusteringLionel Briand
 
magellan_mongodb_workload_analysis
magellan_mongodb_workload_analysismagellan_mongodb_workload_analysis
magellan_mongodb_workload_analysisPraveen Narayanan
 
Stephan berg track f
Stephan berg   track fStephan berg   track f
Stephan berg track fAlona Gradman
 
Keynote at IWLS 2017
Keynote at IWLS 2017Keynote at IWLS 2017
Keynote at IWLS 2017Manish Pandey
 
No More, No Less: A Formal Model for Serverless Computing
No More, No Less: A Formal Model for Serverless ComputingNo More, No Less: A Formal Model for Serverless Computing
No More, No Less: A Formal Model for Serverless ComputingMarco Peressotti
 
Clipper: A Low-Latency Online Prediction Serving System
Clipper: A Low-Latency Online Prediction Serving SystemClipper: A Low-Latency Online Prediction Serving System
Clipper: A Low-Latency Online Prediction Serving SystemDatabricks
 
FlinkML: Large Scale Machine Learning with Apache Flink
FlinkML: Large Scale Machine Learning with Apache FlinkFlinkML: Large Scale Machine Learning with Apache Flink
FlinkML: Large Scale Machine Learning with Apache FlinkTheodoros Vasiloudis
 
Introduction to Julia
Introduction to JuliaIntroduction to Julia
Introduction to Julia岳華 杜
 
Colored petri nets theory and applications
Colored petri nets theory and applicationsColored petri nets theory and applications
Colored petri nets theory and applicationsAbu Hussein
 
Reactive programming with examples
Reactive programming with examplesReactive programming with examples
Reactive programming with examplesPeter Lawrey
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSubash John
 
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basicsnpinto
 
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...cvpaper. challenge
 
Towards Evaluating Size Reduction Techniques for Software Model Checking
Towards Evaluating Size Reduction Techniques for Software Model CheckingTowards Evaluating Size Reduction Techniques for Software Model Checking
Towards Evaluating Size Reduction Techniques for Software Model CheckingAkos Hajdu
 
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011telestax
 

Similar a Etalis rule ml_2011_itterative (20)

Ontology mapping needs context & approximation
Ontology mapping needs context & approximationOntology mapping needs context & approximation
Ontology mapping needs context & approximation
 
深度學習在AOI的應用
深度學習在AOI的應用深度學習在AOI的應用
深度學習在AOI的應用
 
Ikc 2015
Ikc 2015Ikc 2015
Ikc 2015
 
Machine Learning with Apache Mahout
Machine Learning with Apache MahoutMachine Learning with Apache Mahout
Machine Learning with Apache Mahout
 
Improving Requirements Glossary Construction via Clustering
Improving Requirements Glossary Construction via ClusteringImproving Requirements Glossary Construction via Clustering
Improving Requirements Glossary Construction via Clustering
 
magellan_mongodb_workload_analysis
magellan_mongodb_workload_analysismagellan_mongodb_workload_analysis
magellan_mongodb_workload_analysis
 
Stephan berg track f
Stephan berg   track fStephan berg   track f
Stephan berg track f
 
Keynote at IWLS 2017
Keynote at IWLS 2017Keynote at IWLS 2017
Keynote at IWLS 2017
 
Blinkdb
BlinkdbBlinkdb
Blinkdb
 
No More, No Less: A Formal Model for Serverless Computing
No More, No Less: A Formal Model for Serverless ComputingNo More, No Less: A Formal Model for Serverless Computing
No More, No Less: A Formal Model for Serverless Computing
 
Clipper: A Low-Latency Online Prediction Serving System
Clipper: A Low-Latency Online Prediction Serving SystemClipper: A Low-Latency Online Prediction Serving System
Clipper: A Low-Latency Online Prediction Serving System
 
FlinkML: Large Scale Machine Learning with Apache Flink
FlinkML: Large Scale Machine Learning with Apache FlinkFlinkML: Large Scale Machine Learning with Apache Flink
FlinkML: Large Scale Machine Learning with Apache Flink
 
Introduction to Julia
Introduction to JuliaIntroduction to Julia
Introduction to Julia
 
Colored petri nets theory and applications
Colored petri nets theory and applicationsColored petri nets theory and applications
Colored petri nets theory and applications
 
Reactive programming with examples
Reactive programming with examplesReactive programming with examples
Reactive programming with examples
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancements
 
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basics
 
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...
教師なし画像特徴表現学習の動向 {Un, Self} supervised representation learning (CVPR 2018 完全読破...
 
Towards Evaluating Size Reduction Techniques for Software Model Checking
Towards Evaluating Size Reduction Techniques for Software Model CheckingTowards Evaluating Size Reduction Techniques for Software Model Checking
Towards Evaluating Size Reduction Techniques for Software Model Checking
 
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
CDI Telco Framework & Arquillian presentation at Mobicents Summit, Sochi 2011
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Etalis rule ml_2011_itterative

  • 1. A Declarative Framework for Matching Iterative and Aggregative Patterns against Event Streams Darko Anicic, Sebastian Rudolph, Paul Fodor, Nenad Stojanovic RuleML : Proceedings of the 5th International Symposium on Rules, Barcelona, Spain
  • 2. Agenda  Introduction, Motivation  Iterative and Aggregative Patterns in ETALIS • Language • Window operations • Evaluation results  Conclusion.
  • 3. Iterative and Aggregative Patterns in ETALIS Recursive 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. 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. 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. ETALIS: Language Syntax ETALIS 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. Examples A 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. ETALIS: Operational Semantics - AND (1/6) 1. Complex pattern (not event-driven rule) a SEQ b SEQ c → ce1 2. Decoupling ((a SEQ b) SEQ c) → ce1 3. Binarization a SEQ b → ie ie SEQ c → ce1 4. Event-driven backward chaining rules
  • 11. ETALIS: Operational Semantics (3/6) For any aggregate function, calculated over a window, we implement the following three rules:
  • 12. ETALIS: Operational Semantics (4/6) SUM aggregate function:
  • 13. ETALIS: Operational Semantics (5/6) MAX aggregate function:
  • 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. 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 trees Throughput (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. Tests II: CEP with Stream Reasoning Figure: (a) throughput comparison (b) memory consumption
  • 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. Thank you! Questions… ETALIS Open source: http://code.google.com/p/etalis Darko.Anicic@fzi.de