etalis presentation padl2011

15
Results on Out-of- Order Event Processing Paul Fodor, Darko Anicic, Sebastian Rudolph PADL 2011, Austin, TX AIFB

Upload: paul-fodor

Post on 01-Nov-2014

674 views

Category:

Technology


0 download

DESCRIPTION

Results on Out-of-Order Event Processing, Paul Fodor, Darko Anicic, Sebastian Rudolph, PADL 2011, Austin, TX

TRANSCRIPT

Page 1: Etalis presentation padl2011

Results on Out-of-Order Event Processing

Paul Fodor, Darko Anicic, Sebastian Rudolph

PADL 2011, Austin, TX

AIFB

Page 2: Etalis presentation padl2011

Complex Event Processing

• How to capture events from event sources; and transform, combine, interpret and consume them?

Figure source: Opher Etzion & Tali Yatzkar, IBM Research

• Financial services (high frequency trading)

• Sensor networks

• Real-Time Semantic Web (click stream analysis, processing updates from social Web apps, on-line advertising)

Page 3: Etalis presentation padl2011

• Extensible formal semantics

• Reasoning over streaming events w.r.t contextual (background) knowledge

• Operators to express complex relationships between events, matching certain temporal, relational or causal conditions

• An inference system for Complex Event Processing

• Data-driven complex event processing

• Combines detection of complex events and reasoning over states

• ETALIS is implemented in Prolog and runs on XSB, YAP, SWI, and SICStus

ETALIS: Complex Event Processing & Stream Reasoning

Page 4: Etalis presentation padl2011

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

Page 5: Etalis presentation padl2011

ETALIS: Interval-based Semantics

Page 6: Etalis presentation padl2011

ETALIS: Declarative Semantics

Page 7: Etalis presentation padl2011

a ⊗ b ⊗ c → ce1

((a ⊗ b) ⊗ c) → ce1

Binarizationa ⊗ b → ie1

ie1 ⊗ c → ce1

a :- while_do(a,1).a(1) :- ins(goal(b,a,ie1)).

b :- while_do(b,1).b(1) :- goal(b,a,ie1) del(goal(b,a,ie1)) ie1.⊗ ⊗

ie1 :- while_do(ie1,1).ie1(1) :- ins(goal(c,ie1,ce1)).

c :- while_do(c,1).c(1) :- goal(c,ie1,ce1) del(goal(c,ie1,ce1)) ce1.⊗ ⊗

ce1 :- action1.

Event-driven backward chaining rules

Complex pattern (not event-driven rule)

ETALIS: Operational Semantics

Page 8: Etalis presentation padl2011

Out-of-order Motivating Example• Hedge fund with independent cooperating agents

– events arrive in an out-of-order

– Received vs. real order of events

– missing complex events due to an out-of-order stream, e.g., ce1

– false positive complex events due to out-of-order events, e.g., ce2

Page 9: Etalis presentation padl2011

Inference Rule Transformation for Out-of-Order Events

Page 10: Etalis presentation padl2011

Pruning Outdated Events- Pushed Constraints -

Page 11: Etalis presentation padl2011

Pruning outdated events- Pattern-Based Garbage Collection -

GC via alarms– partial composed events are saved into memory with time

stamps – the rules are labeled with a rule tag X

• For a given rule the partial goals can be pruned by alarms based on the time stamps

• pruning for:

Page 12: Etalis presentation padl2011

Evaluation Tests I

Stock market patterns

Page 13: Etalis presentation padl2011

Evaluation Tests II

Page 14: Etalis presentation padl2011

Evaluation Tests III

Page 15: Etalis presentation padl2011

Thank you! Questions…

ETALIS

Open source:

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