Title: Mo Liu1, Elke A. Rundensteiner1, Dan Dougherty1,
1NEEL The Nested Complex Event Language for
Real-Time Event Analytics
- Mo Liu1, Elke A. Rundensteiner1, Dan Dougherty1,
- Chetan Gupta2, Song Wang2, Ismail Ari3, and Abhay
Mehta2 - 1Worcester Polytechnic Institute, USA
- 2HP Labs, USA
- 3Ozyegin University, Turkey
- BIRTE2010 Singapore
-
-
Acknowledgements This work is partly supported
by HP Innovations Award, NSF 1018443 and NSF IIS
0917017, Turkish National Science Foundation
TUBITAK under career award 109E194. We thank Di
Wang, Han Wang and Richard T. Ellison III for the
case study.
2Event ProcessingThe Big Picture
Event Processing
Event Consumer
Event Producer
3Hospital Disease and Hygiene Control
Data Sources
Put on mask for H1N1 contagious patients
RFID Input
Wash your hands before touching next patients
Query Results
RFID Input
RFID Input
Put on surgical gloves
Data Streams
Track workers
RFID Input
Aggregate statistics for a hospital
Detect hygiene violations
D. Wang, E. Rundensteiner, R. Ellison III, Active
complex event processing applications in
realtime health care, VLDB (demonstration paper),
2010.
4CEP Basics
- Primitive event instance is defined to be an
occurrence of interest in time. - Composite event instance occurs over an interval.
- Event history H is an ordered set of primitive
event instances.
e(t)
time
t
5Outline
- Event Processing
- NEEL
- Formal Semantics of NEEL
- E-Analytics System
- Case Study
- Conclusion
6Why Nested Queries?
- Compact
- Incremental
- Convenient
7NEEL The Nested Complex Event Language
8NEEL Query Example
Time
9Nested Expression Variable Scope
Outer query
Inner query
AND
Time
Nested sub-query
10Window Constraints
Sub Window w.ts, o.ts
11Predicate Specification
Correlated predicate
Simple predicate
12Negation
Positive component
Positive component
Negative component
Time
13Scoping of Negation
! Washing r.ts, o.ts
14Nested Negation
ltr1, w2, o10gt is outputted if
No s or no c between w2 and o10
(s, c) exists between w2 and o10, d must exist
between (s, c)
15Predicates with Negation
Condition all events have the same id.
Option 1 State condition in the outer SEQ
Inner events s, d and c are not visible in the
outer SEQ construct.
16Predicates with Negation
Condition all events have the same id.
Option 2 State condition in the inner SEQ
Should the query return ltr1, w2, o10gt when no
negative events exist?
- Condition is evaluated to be true when involving
negative events.
Any P v s.id !s.id is true
- Condition is evaluated to be false
- No final output. However, no outer results should
be filtered as no negative event exists.
17Our Proposal Predicates with Negation
We split condition and state the predicates
involving negative components directly with these
negative components.
Predicates only involving positive components are
stated directly with these positive components.
The positive components are first evaluated. If
negative components exist, we evaluate the
negative predicates.
ltr1, w2, o10gt is generated.
18Predicates with Negation Example
SEQ(Recycle r, ! SEQ(Washing w, !
Sharpening s, Disinfection d), Checking
c, Operating o)
Condition all events have the same id.
SEQ(Recycle r, ! SEQ(Washing w,
! (Sharpening s, s.id w.id
), Disinfection
d, w.id d.id o.id ),
Checking c, Operating o, r.id c.id
o.id)
d.id
c.id r.id
19Outline
- Event Processing
- NEEL
- Formal Semantics of NEEL
- E-Analytics System
- Case Study
- Conclusion
20Notations
- denotes an ordered sequence.
- denotes a set of event instances.
- denotes the cross product of event
histories.
- denotes predicates
on events
21Formal Semantics of NEEL
- Window constrained event history
- Window constrained event history for the event
type Ei
22Formal Semantics of NEEL
- SEQ operator with Negation
23Formal Semantics of NEEL
- AND operator with Negation
24Outline
- Event Processing
- NEEL
- Formal Semantics of NEEL
- E-Analytics System
- Case Study
- Conclusion
25E-Analytics System
DMSN Processing Strategies for Nested Complex
Sequence Pattern Queries over Event Streams, Mo
Liu, Medhabi Ray, Elke A. Rundensteiner, Dan
Dougherty, Chetan Gupta, Song Wang, and Abhay
Mehta, DMSN 2010
26Outline
- Event Processing
- CEP Basics
- NEEL
- Formal Semantics of NEEL
- E-Analytics System
- Case Study
- Related Work
- Conclusion
27Case Study Real-time Infection Control
D. Wang, E. Rundensteiner, R. Ellison III, Active
complex event processing applications
in realtime health care, VLDB (demonstration
paper), 2010.
WPI and UMass Medical School project
Development and Testing of an Electronic
Infection Control Reminder System for Healthcare
Workers . Hospital Infection Control System
(HICS)
28Sample Queries
29Related Work
- SNOOP do not support scope
- SASE only support flat queries
- Cayuga apply SQL-like syntax
- SEL focus on temporal relationships only
- ODE not compact for sequence and negation
SNOOP Sharma Chakravarthy, V. Krishnaprasad,
etc, Composite events for active databases
semantics, contexts and detection. VLDB
1994, pp. 606-617
SASE E. Wu, Y. Diao, and S. Rizvi,
High-performance complex event processing over
streams, SIGMOD, 2006, pp. 407-418.
Cayuga A. J. Demers, J. Gehrke, B. Panda, M.
Riedewald, V. Sharma, and W. M. White, Cayuga A
general purpose event monitoring
system. in CIDR, 2007, pp. 412-422.
SEL D. Zhu and A.S. Sethi, SEL - A New Event
Pattern Specification Language for Event
Correlation, Proc. ICCCN-2001, Tenth
International Conference on Computer
Communications and Networks, Scottsdale, AZ (Oct.
2001), pp. 586-589.
ODE Narain H. Gehani, H. V. Jagadish, Oded
Shmueli Composite Event Specification in Active
Databases Model Implementation. VLDB 1992, pp.
327-338
30Conclusion
- Design NEEL composed of SEQ, NEGATION, AND, OR
- Introduce the formal query semantics for NEEL
- Study issues in NEEL for predicate, negation and
etc - Design E-Analytics system
-
- Conduct case study in health care
31(No Transcript)