Towards Ontology Based Event ProcessingTowards expressive stream reasoning CEP DL RDF STREAM...
Transcript of Towards Ontology Based Event ProcessingTowards expressive stream reasoning CEP DL RDF STREAM...
RISE SICS, Electrum Kista Stockholm, Sweden
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Towards Ontology Based Event Processing
1
R. Tommasini - Politecnico di Milano
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !2
PhD Student @ Politecnico di Milano
Research Interests:
-Semantic Web & Reasoning
-Stream Processing
-Programming Languages
-Distributed Systems
ME
@rictomm
rictomm.me
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !3
- Assistant Professor at DEIBPolitecnico di Milano
- Expert in semantic technologies and stream computing
- Brander of stream reasoning
- 17 years of experience in research and innovation projects
- Startupper: http://www.fluxedo.com
My Advisor
@manudellavalle
h2p://emanueledellavalle.org
h2p://streamreasoning.org
h2p://fluxedo.com
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
What is Stream Reasoning?
!4
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Can we detect fire?
!5
*Expected Answer: YES
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Can we (actually) detect fire?
!6
Expected Reaction: Perplexed Audience
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !7
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !8
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !9
100°
70°
20°
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !10
100°
70°
20°
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !11
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !12
70%
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !13
30%
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCANSmoke Detection
Humidity Variations (decreases)
Temperature Variations (increases)
!14
SummaryWorkarounds
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
This is Stream Reasoning!
!15
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Structural Heterogeneity
!16
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !17
Semantic Heterogeneity
!18IBM 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Incomplete
!19IBM 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Vast
!20IBM 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Noisy
!21IBM 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Complex Domain
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !22
Can we make sense in real-time of heterogeneous, vast, incomplete, and inevitably noisy and data streams in
order to support the decision
processes of extremely large numbers
of concurrent users?
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !23
Requirement Analysis
x
x
x
x x
x
x
x x
x
Volume
Velocity
Variety
Veracity
•handle massive datasets
•process data streams
•cope with heterogeneous data
•cope with incomplete data
•cope with noisy data
•provide reactive answers
•access fine-grained information
•model complex domains
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected] !24
Stream Processing vs Semantic Technologies
Requirement SP STmassive datasetsdata streamsheterogeneous dataset incomplete datanoisy data reactive answers fine-grained information access complex domain models
✓✓
✓✓
✓✓✓ ✓
✓
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Stream Reasoning
!25
Stuckenschmidt, H., Ceri, S., Della Valle, E., & Van Harmelen, F. (2010). Towards expressive stream reasoning
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN!26
Cascading Reasoning
Stuckenschmidt, H., Ceri, S., Della Valle, E., & Van Harmelen, F. (2010). Towards expressive stream reasoning
DL
LOGIC PROGRAMMING
RDF STREAM PROCESSING
RAW STREAM PROCESSING
Matching
Selection
Interpretation
Reasoning
Querying
Rewriting
PTime
2NEXPTime
104Hz
1 Hz
Cha
nge
Freq
uenc
y
Com
plex
ity
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
RDF Stream Processing (RSP)
!27
Continuous Data Integration
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN-An RDF Stream is an partially ordered sequence of pairs (Gi,ti) where
-Gi, is a [named] RDF graph and
-ti is a timestamp.
!28
RDF Streams
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN( { :s1 :observes :o1 ; :o1 :value 20C }, 1)
( { :s1 :observes :o2 ; :o2 :value 20C }, 2)
( { :s1 :observes :o3 ; :o3 :value 30C }, 3)
( { :s1 :observes :o4 ; :o4 :value 50C }, 4)
!29
An Example
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN- A Reference Model fo Continuous SPARQL
- Extends CQL to process RDF Graphs
- Introduces the notions of Window and Event Pattern
!30
RSEP-QL
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCANREGISTER STREAM <fire>
CONSTRUCT { ?o a :FireObservation ; :sensedBy ?s .}
FROM NAMED WINDOW <w1> [RANGE 5m,STEP 5m] ON STREAM <temp>
WHERE { WINDOW <w1> {
?s :observes ?o ; ?o :value ?t
FILTER (?t > 50C) }}
!31
An Example
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Continuous Reasoning
!32
Deductive
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN-An Ontology Stream is an partially ordered sequence of pairs (Ai,ti) where
-Ai, is a set of a ABox axioms w.r.t. a static TBox T.
-ti is a timestamp.
!33
Ontology Streams
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN-An Windowed Ontology Stream S[o,c] is the union
of all the Abox axioms Sets Ai with o<i<c
-Continuous Reasoning can be reduced to traditional ontological reasoning over a windowed ontology stream
!34
Windowed Ontology Streams
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Ontology Based Event Processing
!35
Joint work with P.Bonte, E. Mannens, F. De Turck, F. Ongenae
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN!36
Cascading Reasoning Approach
Stuckenschmidt, H., Ceri, S., Della Valle, E., & Van Harmelen, F. (2010). Towards expressive stream reasoning
CEP
DL
RDF STREAM PROCESSING
RAW STREAM PROCESSING
Matching
Selection
Interpretation
Reasoning
Querying
Rewriting
PTime
2NEXPTime
104Hz
1 Hz
Cha
nge
Freq
uenc
y
Com
plex
ity
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Data Integration
We assume RDF Stream as common data model
!37
Time
(Gi, ti)
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Events!
first-class objects in the language
!38
`Physical Event
Logical Event
DL Reasoning
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Logical Modeling
Logical Event
Specifications
EVENT OfficeTemperaturEvent
subClassOf TemperaturEvent
and (observationResult some (hasValue >= 40)) and
(hasLocation some Office)
!39
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Semantic Complex Event Processing
Patterns
EVENT FireEvent {
MATCH TemperaturEvent
SEQ SmokeDetectionEvent
WITHIN (5m) }
!40
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Semantic Complex Event Processing
In OBEP
EVENT FireEvent {
MATCH TemperaturEvent
SEQ SmokeDetectionEvent WITHIN (5m)
IF {
EVENT TemperaturEvent {?loc0 hasValue ?v}
EVENT SmokeDetectionEvent {?loc1 hasValue ?v
FILTER (?smokeLevel == 3) }}
!41
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Future Works
!42
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Ontology Based Streaming Data Access
!43
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN!44
Cascading Reasoning
Stuckenschmidt, H., Ceri, S., Della Valle, E., & Van Harmelen, F. (2010). Towards expressive stream reasoning
CEP
DL
RDF STREAM PROCESSING
RAW STREAM PROCESSING
Matching
Selection
Interpretation
Reasoning
Querying
Rewriting
PTime
2NEXPTime
104Hz
1 Hz
Cha
nge
Freq
uenc
y
Com
plex
ity
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
RDF STREAM PROCESSING
RAW STREAM PROCESSING
!45
Rewriting and Interpreting
- including continuous semantics will enable continuous querying over
virtual streaming sources;
- including time operators like windows will enable query rewriting into continuous query languages
DISCANRISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Stream Reasoning Applications
!46
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
WASP
Web Stream Processing
Application
Anatomy of a Streaming Application
- Input Streams
- Output Streams
- Continuous Tasks
!47
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
The Web is Streaming
!48
OWLED 16RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
DISCAN- VOCALS allows to describe streams and streaming endpoints in a machine readable form
- VOCALS enables stream services description, fostering interoperability between producers and consumers.
- VOCALS let track stream transformation provenance describing the continuous tasks operating on streams.
!49
VoCaLS - Vocabulary and Catalog for Linked Streams
RISE SICS 2018 - Riccardo Tommasini - @rictomm - rictomm.me - [email protected]
Questions?Email: [email protected] Twitter: @rictomm Github: riccardotommasini Web1: riccardotommasini.com Web2: streamreasoning.org
!51