SlideShare uma empresa Scribd logo
1 de 110
Baixar para ler offline
Daniele Dell’Aglio
On Unified Stream Reasoning
Daniele Dell’Aglio
Advisor: Prof. Emanuele Della Valle
Milano, 15/07/2016. Ph.D. Viva
Daniele Dell’Aglio
Problem setting
Real time integration of dynamic data from heterogeneous
sources
– Traffic Prediction
2/33
Daniele Dell’Aglio
Problem setting
Real time integration of dynamic data from heterogeneous
sources
– Traffic Prediction
– Social media analytics
2/33
Daniele Dell’Aglio
Problem setting
Real time integration of dynamic data from heterogeneous
sources
– Traffic Prediction
– Social media analytics
– Personalised services
2/33
Daniele Dell’Aglio
Information Flow Processing
In literature there are two different main approaches to
process streams
3/33
Daniele Dell’Aglio
Information Flow Processing
In literature there are two different main approaches to
process streams
Data Stream Management Systems (DSMSs)
• Roots in DBMS research
• Aggregations, filters and joins
3/33
Daniele Dell’Aglio
Information Flow Processing
In literature there are two different main approaches to
process streams
Data Stream Management Systems (DSMSs)
• Roots in DBMS research
• Aggregations, filters and joins
Complex Event Processors (CEPs)
• Roots in Distributed Systems (Publish/Subscribe)
• Search of relevant patterns in the stream
• Non-equi-join on the timestamps (after, before, etc.)
3/33
Daniele Dell’Aglio
Information Flow Processing
In literature there are two different main approaches to
process streams
Data Stream Management Systems (DSMSs)
• Roots in DBMS research
• Aggregations, filters and joins
Complex Event Processors (CEPs)
• Roots in Distributed Systems (Publish/Subscribe)
• Search of relevant patterns in the stream
• Non-equi-join on the timestamps (after, before, etc.)
Current systems implements feature of both of them
• EPL (e.g. Esper, ORACLE CEP)
3/33
Daniele Dell’Aglio
Stream Reasoning
Information
Flow
Processing
Semantic
Technologies
Stream
Reasoning
Inference over
streams of data
Real-time
processing of
highly dynamic
data
Integration of
heterogeneous data
and access through
query answering
4/33
Daniele Dell’Aglio
The SR research so far
EuropeMapfromWikipedia
Key
5/33
Daniele Dell’Aglio
The SR research so far
EuropeMapfromWikipedia
Key
5/33
Daniele Dell’Aglio
The SR research so far
IMaRS
STARQL
DynamiTE
TROWL
EuropeMapfromWikipedia
StreamRule
StarCITY
SPARKWAVE
LARS
Key
5/33
StreamQR
Daniele Dell’Aglio
The problem (1)
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
6/33
Daniele Dell’Aglio
The problem (1)
Where are Alice and Bob,
when they are together?
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
6/33
Daniele Dell’Aglio
The problem (1)
Where are Alice and Bob,
when they are together?
Let’s consider a tumbling
window W of size 5
Let’s execute the
experiment 4 times
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
6/33
Daniele Dell’Aglio
The problem (1)
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
Where are Alice and Bob,
when they are together?
Let’s consider a tumbling
window W of size 5
Let’s execute the
experiment 4 times
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
Which is the correct answer?
e1 e2 e3 e4S
6/33
Daniele Dell’Aglio
The problem (2)
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
CSPARQL
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
7/33
Daniele Dell’Aglio
The problem (2)
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
Execution 1° answer 2° answer
1 :hall [3] :kitchen [9]
2 No answers
3 :hall [3] :kitchen [9]
4 No answers
CSPARQL CQELS
Which system behaves in the correct way?
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
7/33
Daniele Dell’Aglio
Research Question 1
In the context of continuous query answering over RDF
streams, how can the behaviour of existing systems be
captured, compared and contrast when deductive reasoning
processes are not involved?
8/33
Daniele Dell’Aglio
Research Question 1
In the context of continuous query answering over RDF
streams, how can the behaviour of existing systems be
captured, compared and contrast when deductive reasoning
processes are not involved?
Why do we need it?
• Comparison and contrast
• Study RDF Stream Processing related problems
• Standard RSP query language
8/33
Daniele Dell’Aglio
Background
data
Streams
Applications
RDF
SPARQL
RSEP-QL
A reference model that formally defines the semantics of
RDF Stream Processing engines
9/33
Daniele Dell’Aglio
Background
data
Streams
Applications
RSP-QL
RDF
SPARQL
RSEP-QL
A reference model that formally defines the semantics of
RDF Stream Processing engines
9/33
Daniele Dell’Aglio
Background
data
Streams
Applications
RSP-QL BGP evaluation
over background
data
BGP evaluation
over streams
Model to express
continous queries
RDF
SPARQL
RSEP-QL
A reference model that formally defines the semantics of
RDF Stream Processing engines
9/33
Daniele Dell’Aglio
Background
data
Streams
RSEP-QL
Applications
RSP-QL BGP evaluation
over background
data
BGP evaluation
over streams
Event Pattern
detection operators
Model to express
continous queries
RDF
SPARQL
RSEP-QL
A reference model that formally defines the semantics of
RDF Stream Processing engines
9/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Query
Interface
10/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Data layer
RDF graphs
DS
Query
Interface
10/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Evaluator
Data layer
RDF graphs
E
DS
Query
Interface
10/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Evaluator
Data layer
Result
Formatter
Ans(Q)RDF graphs
E
DS
QF
Query
Interface
10/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Evaluator
Data layer
Result
Formatter
Ans(Q)RDF graphs
E
DS
QF
RDF graphs
RDF streams
Query
Interface
SDS
Q
(E, SDS, QF)
10/33
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Evaluator
Data layer
Result
Formatter
Ans(Q)RDF graphs
E
DS
QF
Continuous
EvaluatorET
RDF graphs
RDF streams
Query
Interface
SDS
Q
(E, SDS, QF)
Q
(E, SDS, ET, QF)
10/33
Ans(Q,t)
Daniele Dell’Aglio
Q
(E, DS, QF)
RSEP-QL
From SPARQL to RSEP-QL
Evaluator
Data layer
Result
Formatter
Ans(Q)RDF graphs
E
DS
QF
Continuous
EvaluatorET
RDF graphs
RDF streams
Query
Interface
SDS
Q
(E, SDS, QF)
Q
(E, SDS, ET, QF)
SE
10/33
Q
(SE, SDS, ET, QF)
Ans(Q,t)
Daniele Dell’Aglio
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
ω
t
width
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
ω
t
width
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
β
ω
t
widthslide
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
Sequence of timestamped
graphs (stream items)
𝕎(2,1,1)
β
ω
t
widthslide
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
RSEP-QL: Dataset
Time-based Sliding Window: 𝕎(ω,β,t0)
11/33
Daniele Dell’Aglio
𝕃(2)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
Sequence of timestamped
graphs (stream items)
RSEP-QL: Dataset
Landmark window: 𝕃(t0)
12/33
Daniele Dell’Aglio
𝕃(2)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
Sequence of timestamped
graphs (stream items)
RSEP-QL: Dataset
Landmark window: 𝕃(t0)
12/33
Daniele Dell’Aglio
𝕃(2)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
Sequence of timestamped
graphs (stream items)
RSEP-QL: Dataset
Landmark window: 𝕃(t0)
12/33
Daniele Dell’Aglio
𝕃(2)
t
S3
S4 S5 S6
S7
S8 S9
S10
S11
S
S1
S2
t0
Sequence of timestamped
graphs (stream items)
RSEP-QL: Dataset
Landmark window: 𝕃(t0)
12/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
R={RDF graph}
SPARQL dataset
13/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
R={RDF graph}
SPARQL dataset
S3
S4 S5
S6
S7
S8
S9 S10
S11
S12
S
S1
S2
13/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
R={RDF graph}
SPARQL dataset
S3
S4 S5
S6
S7
S8
S9 S10
S11
S12
S
S1
S2
𝕎(S)
13/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
t1
G(t1)
T⊆ ℕ R={RDF graph}
SPARQL dataset
G
Instantaneous Graph
G(t1)  RTime-Varying Graph
G: T R
S3
S4 S5
S6
S7
S8
S9 S10
S11
S12
S
S1
S2
𝕎(S)
13/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
t1
G(t1)
T⊆ ℕ R={RDF graph}
SPARQL dataset
G
H
Instantaneous Graph
G(t1)  RTime-Varying Graph
G: T R
S3
S4 S5
S6
S7
S8
S9 S10
S11
S12
S
S1
S2
𝕎(S)
13/33
Daniele Dell’Aglio
RSEP-QL: Dataset
From SPARQL to RSEP-QL dataset
t1
G(t1)
T⊆ ℕ R={RDF graph}
SPARQL dataset
G
H
Instantaneous Graph
G(t1)  RTime-Varying Graph
G: T R
RESP-QL dataset
S3
S4 S5
S6
S7
S8
S9 S10
S11
S12
S
S1
S2
𝕎(S)
13/33
Daniele Dell’Aglio
RSEP-QL: Operators
Stream Processing operators (RSP-QL)
• SPARQL operators
• WINDOW to specify that the active element is a window (similar to
GRAPH)
• RStream, IStream, DStream to create the output stream
14/33
Daniele Dell’Aglio
RSEP-QL: Operators
Stream Processing operators (RSP-QL)
• SPARQL operators
• WINDOW to specify that the active element is a window (similar to
GRAPH)
• RStream, IStream, DStream to create the output stream
Event Processing operators (RSEP-QL)
• EVENT w P (Basic Event Pattern)
• E1 SEQ E2
• FIRST E1, LAST E1
• MATCH to describe an event pattern
• ...
14/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The SPARQL evaluation function is defined as
⟦𝑃⟧ 𝐷𝑆(𝐺)
15/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The SPARQL evaluation function is defined as
⟦𝑃⟧ 𝐷𝑆(𝐺)
The RSEP-QL evaluation function extends the SPARQL one
by introducing the evaluation time instant
⟪𝑃⟫ 𝑆𝐷𝑆(𝐴)
𝑡
15/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The SPARQL evaluation function is defined as
⟦𝑃⟧ 𝐷𝑆(𝐺)
The RSEP-QL evaluation function extends the SPARQL one
by introducing the evaluation time instant
⟪𝑃⟫ 𝑆𝐷𝑆(𝐴)
𝑡
SPARQL operators are straight extended to the new
evaluation function
Example: JOIN
⟦𝐽𝑂𝐼𝑁(𝑃1, 𝑃2)⟧ 𝐷𝑆(𝐺) = ⟦𝑃1⟧ 𝐷𝑆 𝐺 ⨝⟦𝑃2⟧ 𝐷𝑆 𝐺
⟪𝐽𝑂𝐼𝑁(𝑃1, 𝑃2)⟫ 𝑆𝐷𝑆 𝐴
𝑡
= ⟪𝑃1⟫ 𝑆𝐷𝑆 𝐴
𝑡
⨝⟪𝑃2⟫ 𝑆𝐷𝑆 𝐴
𝑡
15/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The main difference is on the BGP evaluation:
⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴)
𝑡
=⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡)
16/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The main difference is on the BGP evaluation:
⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴)
𝑡
=⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡)
SDS(A,t) is:
SDS(G,t)= SDS(G(t)) if A is a time-varying graph G
16/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Stream Processing Evaluation Semantics
The main difference is on the BGP evaluation:
⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴)
𝑡
=⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡)
SDS(A,t) is:
SDS(G,t)= SDS(G(t)) if A is a time-varying graph G
SDS(𝕎(S),t)=SDS(m(𝕎(S,t))) if A is from a sliding window 𝕎
SDS(𝕃(S),t)=SDS(m(𝕃(S,t))) if A is from a landmark window 𝕃
where m denotes a merge function
m(𝕎(S,t))= 𝑑 𝑖,𝑡 𝑖 ∈𝕎(S,t) 𝑑𝑖
• takes as input a window content i.e. a sequence of timestamped
RDF graphs
• produces an RDF graph
16/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Event Processing Evaluation semantics
A new evaluation function ⦅⋅⦆ 𝑜,𝑐
𝑡
• t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴)
𝑡
),
• 𝑜, 𝑐 is an additional window to identify the portion of the data
on which the event may happen
17/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Event Processing Evaluation semantics
A new evaluation function ⦅⋅⦆ 𝑜,𝑐
𝑡
• t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴)
𝑡
),
• 𝑜, 𝑐 is an additional window to identify the portion of the data
on which the event may happen
Event pattern evaluation produces event mappings 𝜇, 𝑡1, 𝑡2
• 𝜇 is a solution mapping
• 𝑡1 and 𝑡2 denote the time inverval justifying 𝜇
17/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Event Processing Evaluation semantics
A new evaluation function ⦅⋅⦆ 𝑜,𝑐
𝑡
• t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴)
𝑡
),
• 𝑜, 𝑐 is an additional window to identify the portion of the data
on which the event may happen
Event pattern evaluation produces event mappings 𝜇, 𝑡1, 𝑡2
• 𝜇 is a solution mapping
• 𝑡1 and 𝑡2 denote the time inverval justifying 𝜇
Selection and consumption policies to determine the data
involved in the evaluation
17/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
S1 S10
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
11 13
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
S1 S10
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
11 13
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
S1 S10
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
11 13
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Evaluation semantics - Example
⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16
𝑡
S2
S3 S4
S1 S1
S6
S7
S8
S9 S10
S11
S12
S2
S1 S10
S1 S12
FIRST EVENT 𝑤1 𝑃1
SEQ
EVERY EVENT 𝑤2 𝑃2
t
10 12 14 1611 13 15
11 13
11 15
18/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
MATCH graph pattern
Event patterns are enclosed in MATCH graph patterns
• Event mappings exist only in the context of event patterns
• The evaluation of a MATCH graph pattern produces a bag of solution
mappings
⟪𝑀𝐴𝑇𝐶𝐻 𝐸⟫ 𝑆𝐷𝑆 𝐴
𝑡
= {𝜇| 𝜇, 𝑡1, 𝑡2 ∈ ⦅𝐸⦆ 0,𝑡
𝑡
}
It is possible to combine the MATCH graph pattern with
other SPARQL graph patterns
19/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Continuous evaluation
For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴)
𝑡
• The continuous evaluation is a sequence of instantaneous
evaluations
20/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Continuous evaluation
For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴)
𝑡
• The continuous evaluation is a sequence of instantaneous
evaluations
It is not always possible to compute ET a priori
20/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Continuous evaluation
For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴)
𝑡
• The continuous evaluation is a sequence of instantaneous
evaluations
It is not always possible to compute ET a priori
• Can be infinite
• Can be data dependent
20/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Continuous evaluation
For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴)
𝑡
• The continuous evaluation is a sequence of instantaneous
evaluations
It is not always possible to compute ET a priori
• Can be infinite
• Can be data dependent
ET is expressed through a Report Policy
• A set of conditions to one or more window operators in SDS
• Initially defined in SECRET for Stream Processing engines
20/33
Daniele Dell’Aglio
RSEP-QL: Evaluation Semantics
Continuous evaluation
Report Policy examples:
• P Periodic: the window reports only at regular intervals
• WC Window Close: the window reports if the active window
closes
• CC Content Change: the window reports if the content changes.
21/33
Daniele Dell’Aglio
Research Question 2
Is it possible to add deductive reasoning features to RSEP-QL?
22/33
Daniele Dell’Aglio
Research Question 2
Is it possible to add deductive reasoning features to RSEP-QL?
Applications
RDF
SPARQL
Ontology
22/33
Daniele Dell’Aglio
Research Question 2
Is it possible to add deductive reasoning features to RSEP-QL?
Applications
RDF
SPARQL
Ontology
SPARQL
Entailment
Regimes
22/33
Daniele Dell’Aglio
Research Question 2
Is it possible to add deductive reasoning features to RSEP-QL?
Streams Ontology
Background
data
RSEP-QL
Applications
RSP-QL
RDF
SPARQL
Ontology
SPARQL
Entailment
Regimes
22/33
Daniele Dell’Aglio
Research Question 2
Is it possible to add deductive reasoning features to RSEP-QL?
Streams Ontology
Background
data
RSEP-QL
Entailment
Regimes
RSEP-QL
Applications
RSP-QL
RDF
SPARQL
Ontology
SPARQL
Entailment
Regimes
22/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Stream Processing
At which point of the continuous query answering process
should the inference process be taken into account?
Event ProcessingWindow merge
Window operator
Stream S3
4 5
6
7
8
9
S 1
2
6
7
8
9
6-9
t
RDF Graph
RDF Stream
Window
23/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Stream Processing
At which point of the continuous query answering process
should the inference process be taken into account?
Direct application
on SPARQL
entailment regimes
Event ProcessingWindow merge
Window operator
Stream S
Graph-level entailment
3
4 5
6
7
8
9
S 1
2
6
7
8
9
6-9
t
RDF Graph
RDF Stream
Window
23/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Stream Processing
At which point of the continuous query answering process
should the inference process be taken into account?
After applying the
window operator
Direct application
on SPARQL
entailment regimes
Event ProcessingWindow merge
Window operator
Stream S
Graph-level entailment
Window-level entailment
3
4 5
6
7
8
9
S 1
2
6
7
8
9
6-9
t
RDF Graph
RDF Stream
Window
23/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Stream Processing
At which point of the continuous query answering process
should the inference process be taken into account?
A larger, landmark
window to include
relevant information
from the past
After applying the
window operator
Direct application
on SPARQL
entailment regimes
Event ProcessingWindow merge
Window operator
Stream S
Graph-level entailment
Window-level entailment
Stream-level entailment
3
4 5
6
7
8
9
S 1
2
6
7
8
9
6-9
t
6
7
8
9
3
4 5
RDF Graph
RDF Stream
Window
23/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Window-level and stream-level entailment regimes
How can DL ontology be extended to capture the window
content?
24/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Window-level and stream-level entailment regimes
How can DL ontology be extended to capture the window
content?
• Ontology stream – a sequence of time-stamped ABoxes 𝑆 𝑜
𝑐
𝑖
w.r.t a static TBox
24/33
Daniele Dell’Aglio
RSEP-QL: Reasoning
Window-level and stream-level entailment regimes
How can DL ontology be extended to capture the window
content?
• Ontology stream – a sequence of time-stamped ABoxes 𝑆 𝑜
𝑐
𝑖
w.r.t a static TBox
• Introduction of so-far closure, as the closure of the i-th
snapshot w.r.t. the Tbox and the previus snapshots
• The so-far closure of 𝑆 𝑜
𝑐 𝑖 is done w.r.t. the TBox and the
snapshots 𝑆 𝑜
𝑐 𝑜 … 𝑆 𝑜
𝑐 𝑖 − 1
• The so-far closure of the ontology stream is obtained by so-far
closing all the ABox snapshots
24/33
Daniele Dell’Aglio
Event Processing
Stream-level entailment
RSEP-QL: Reasoning
Results
1. Theorem: in the context of
Stream Processing operations,
graph- and window-level
entailments have the same
behaviour as far as no
inconsistency is entailed
25/33
Stream Processing
Window merge
Window operator
Stream S
Graph-level ent.
Window-level entailment
Daniele Dell’Aglio
Event Processing
Stream-level entailment
RSEP-QL: Reasoning
Results
1. Theorem: in the context of
Stream Processing operations,
graph- and window-level
entailments have the same
behaviour as far as no
inconsistency is entailed
2. Theorem: The stream-level
entailment brings to a larger
set of answers w.r.t. graph-
and window- entailment ones.
25/33
Stream Processing
Event ProcessingWindow merge
Window operator
Stream S
Graph-level ent.
Window-level entailment
Stream-level entailment
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
t0=1
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
t0=1 :hall [6] :kitchen [11]
t0=1
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
t0=1 :hall [6] :kitchen [11]
t0=1
t0=2
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
t0=1 :hall [6] :kitchen [11]
t0=2 - [7] - [12]
t0=1
t0=2
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
t0=0
Window 1° answer 2° answer
t0=0 :hall [5] :kitchen [10]
t0=1 :hall [6] :kitchen [11]
t0=2 - [7] - [12]
t0=1
t0=2
RSEP-QL in action
Correctness assessment
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
26/33
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
Execution 1° answer 2° answer
1 :hall [3] :kitchen [9]
2 No answers
3 :hall [3] :kitchen [9]
4 No answers
CSPARQL CQELS
RSEP-QL in action
Correctness assessment
27/33
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
Daniele Dell’Aglio
Execution 1° answer 2° answer
1 :hall [6] :kitchen [11]
2 :hall [5] :kitchen [10]
3 :hall [6] :kitchen [11]
4 - [7] - [12]
Execution 1° answer 2° answer
1 :hall [3] :kitchen [9]
2 No answers
3 :hall [3] :kitchen [9]
4 No answers
CSPARQL CQELS
Window-close vs
content-change
Empty relation
notification (yes|no)
RSEP-QL in action
Correctness assessment
27/33
t3 6 91
{:alice :isIn :hall}
{:bob :isIn :hall}
{:alice :isIn :kitchen}
{:bob :isIn :kitchen}
e1 e2 e3 e4S
Daniele Dell’Aglio
CSR Bench
CSR Bench is an extension of the SRbench benchmark
that focuses on correctness
A test suite
• LinkedSensorData as dataset
• 8 parametric queries to tests the RSP engines in different
conditions
An oracle (an automatic correctness validator)
• Based on RSP-QL
28/33
Daniele Dell’Aglio
CSR Bench
Experimental Results
All the three systems that we
considered in our experiments showed
wrong behaviours
The defects we identified are related to:
•The window operator
• Initialization
• Slide parameter
• Window contents
•Timestamps of the stream items
• Internal timestamp management
CQELS
C-SPARQL
SPARQLstream
Q1
Q2
Q3
Q4
Q5
Q6
Q7
29/33
Daniele Dell’Aglio
What’s next?
An RSEP-QL query language
• W3C RSP CG ongoing activities
30/33
Daniele Dell’Aglio
What’s next?
An RSEP-QL query language
• W3C RSP CG ongoing activities
Implementations
30/33
Daniele Dell’Aglio
What’s next?
An RSEP-QL query language
• W3C RSP CG ongoing activities
Implementations
• Yet another RSP engine
30/33
Daniele Dell’Aglio
What’s next?
An RSEP-QL query language
• W3C RSP CG ongoing activities
Implementations
• Yet another RSP engine
• Stream Reasoner composition
• RSEP-QL as model to capture the behaviour of SRs
• RSEP-QL queries to define tasks to be executed over one or
more SR engines
30/33
Daniele Dell’Aglio
What’s next?
An RSEP-QL query language
• W3C RSP CG ongoing activities
Implementations
• Yet another RSP engine
• Stream Reasoner composition
• RSEP-QL as model to capture the behaviour of SRs
• RSEP-QL queries to define tasks to be executed over one or
more SR engines
Stream-level entailment scalable techniques
• Initial work on stream without inference
• Permanent storage of portions of data (raw or inferred)
30/33
Daniele Dell’Aglio
What’s next?
Reasoning over streams and continuous query answering
over streams are still two different worlds
• Key to show why RDF Stream Processing is useful w.r.t.
DSMS and CEP
• Few initial attempts to put them together
31/33
Daniele Dell’Aglio
What’s next?
Reasoning over streams and continuous query answering
over streams are still two different worlds
• Key to show why RDF Stream Processing is useful w.r.t.
DSMS and CEP
• Few initial attempts to put them together
Streams in the Web are getting popular – applications want
more and more sophisticated features
• Different timestamps, out-of-orders
• Noise (inductive reasoning)
31/33
Daniele Dell’Aglio
Conclusions
RSEP-QL captures the evaluation semantics of existing
RSP engines
32/33
Daniele Dell’Aglio
Conclusions
RSEP-QL captures the evaluation semantics of existing
RSP engines
RSEP-QL can determine which are the correct answers of
an RSP engine, given the input data and query
• At the basis of CSR Bench
32/33
Daniele Dell’Aglio
Conclusions
RSEP-QL captures the evaluation semantics of existing
RSP engines
RSEP-QL can determine which are the correct answers of
an RSP engine, given the input data and query
• At the basis of CSR Bench
The dynamics introduced in the continuous query evaluation
process have not been totally understood
• Not fully captured by existing models
• RSEP-QL captures those dynamics
32/33
Daniele Dell’Aglio
Thank you! Questions?
On Unified Stream Reasoning
Daniele Dell’Aglio
Advisor: Prof. Emanuele Della Valle
33/33

Mais conteúdo relacionado

Destaque

Hình ảnh cập nhật tiến độ tại dự án the art quận 9
Hình ảnh cập nhật tiến độ tại dự án the art quận 9Hình ảnh cập nhật tiến độ tại dự án the art quận 9
Hình ảnh cập nhật tiến độ tại dự án the art quận 9Gia Hòa The Art
 
Demand for new technology space is not slowing down
Demand for new technology space is not slowing downDemand for new technology space is not slowing down
Demand for new technology space is not slowing downJLL
 
Game sound analysis worksheet
Game sound analysis worksheetGame sound analysis worksheet
Game sound analysis worksheetClintParisCom
 
ACC 422 Final Exam 2015 version
ACC 422 Final Exam 2015 versionACC 422 Final Exam 2015 version
ACC 422 Final Exam 2015 versionelstonweinhaus
 
A Hierarchical approach towards Efficient and Expressive Stream Reasoning
A Hierarchical approach towards Efficient and Expressive Stream ReasoningA Hierarchical approach towards Efficient and Expressive Stream Reasoning
A Hierarchical approach towards Efficient and Expressive Stream ReasoningRiccardo Tommasini
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streamsDaniele Dell'Aglio
 
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...Daniele Dell'Aglio
 

Destaque (10)

Hình ảnh cập nhật tiến độ tại dự án the art quận 9
Hình ảnh cập nhật tiến độ tại dự án the art quận 9Hình ảnh cập nhật tiến độ tại dự án the art quận 9
Hình ảnh cập nhật tiến độ tại dự án the art quận 9
 
Demand for new technology space is not slowing down
Demand for new technology space is not slowing downDemand for new technology space is not slowing down
Demand for new technology space is not slowing down
 
Game sound analysis worksheet
Game sound analysis worksheetGame sound analysis worksheet
Game sound analysis worksheet
 
ACC 422 Final Exam 2015 version
ACC 422 Final Exam 2015 versionACC 422 Final Exam 2015 version
ACC 422 Final Exam 2015 version
 
Hp ko i
Hp ko iHp ko i
Hp ko i
 
A Hierarchical approach towards Efficient and Expressive Stream Reasoning
A Hierarchical approach towards Efficient and Expressive Stream ReasoningA Hierarchical approach towards Efficient and Expressive Stream Reasoning
A Hierarchical approach towards Efficient and Expressive Stream Reasoning
 
Adverbs
AdverbsAdverbs
Adverbs
 
On unifying query languages for RDF streams
On unifying query languages for RDF streamsOn unifying query languages for RDF streams
On unifying query languages for RDF streams
 
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
RSEP-QL: A Query Model to Capture Event Pattern Matching in RDF Stream Proces...
 
Ai 5 12
Ai 5 12Ai 5 12
Ai 5 12
 

Semelhante a On Unified Stream Reasoning

On Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realmOn Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realmDaniele Dell'Aglio
 
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...Daniele Dell'Aglio
 
On correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarkingOn correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarkingDaniele Dell'Aglio
 
Propagation of Policies in Rich Data Flows
Propagation of Policies in Rich Data FlowsPropagation of Policies in Rich Data Flows
Propagation of Policies in Rich Data FlowsEnrico Daga
 
Innoslate 101: A Webinar for New Users
Innoslate 101: A Webinar for New Users Innoslate 101: A Webinar for New Users
Innoslate 101: A Webinar for New Users SarahCraig7
 
A Modern Introduction to Decision Tree Ensembles
A Modern Introduction to Decision Tree EnsemblesA Modern Introduction to Decision Tree Ensembles
A Modern Introduction to Decision Tree EnsemblesIchigaku Takigawa
 
An experience on empirical research about rdf stream
An experience on empirical research about rdf streamAn experience on empirical research about rdf stream
An experience on empirical research about rdf streamDaniele Dell'Aglio
 
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker Brings
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker BringsDockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker Brings
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker BringsDocker, Inc.
 
Ontologies Ontop Databases
Ontologies Ontop DatabasesOntologies Ontop Databases
Ontologies Ontop DatabasesMartín Rezk
 
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...South Tyrol Free Software Conference
 
Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Kim Herzig
 
Stream Reasoning: Where we got so far. Oxford 2010.1.18
Stream Reasoning: Where we got so far. Oxford 2010.1.18Stream Reasoning: Where we got so far. Oxford 2010.1.18
Stream Reasoning: Where we got so far. Oxford 2010.1.18Emanuele Della Valle
 
Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)Andy Petrella
 
A Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description LogicsA Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description LogicsDaniele Dell'Aglio
 
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)Daniele Dell'Aglio
 
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...Daniel Katz
 
Matapihi 'The National Digital Project'. The University of Auckland Library P...
Matapihi 'The National Digital Project'. The University of Auckland Library P...Matapihi 'The National Digital Project'. The University of Auckland Library P...
Matapihi 'The National Digital Project'. The University of Auckland Library P...Rose Holley
 

Semelhante a On Unified Stream Reasoning (20)

On Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realmOn Unified Stream Reasoning - The RDF Stream Processing realm
On Unified Stream Reasoning - The RDF Stream Processing realm
 
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...Ontology based top-k query answering over massive, heterogeneous, and dynamic...
Ontology based top-k query answering over massive, heterogeneous, and dynamic...
 
On correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarkingOn correctness in RDF stream processor benchmarking
On correctness in RDF stream processor benchmarking
 
Propagation of Policies in Rich Data Flows
Propagation of Policies in Rich Data FlowsPropagation of Policies in Rich Data Flows
Propagation of Policies in Rich Data Flows
 
DataHub
DataHubDataHub
DataHub
 
Blinkdb
BlinkdbBlinkdb
Blinkdb
 
Innoslate 101: A Webinar for New Users
Innoslate 101: A Webinar for New Users Innoslate 101: A Webinar for New Users
Innoslate 101: A Webinar for New Users
 
A Modern Introduction to Decision Tree Ensembles
A Modern Introduction to Decision Tree EnsemblesA Modern Introduction to Decision Tree Ensembles
A Modern Introduction to Decision Tree Ensembles
 
An experience on empirical research about rdf stream
An experience on empirical research about rdf streamAn experience on empirical research about rdf stream
An experience on empirical research about rdf stream
 
FESCA 2015 keynote
FESCA 2015 keynoteFESCA 2015 keynote
FESCA 2015 keynote
 
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker Brings
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker BringsDockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker Brings
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker Brings
 
Ontologies Ontop Databases
Ontologies Ontop DatabasesOntologies Ontop Databases
Ontologies Ontop Databases
 
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...
SFSCON23 - Enrico Zanardo - Optimizing Software Performance with Inductive Lo...
 
Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)Mining and Untangling Change Genealogies (PhD Defense Talk)
Mining and Untangling Change Genealogies (PhD Defense Talk)
 
Stream Reasoning: Where we got so far. Oxford 2010.1.18
Stream Reasoning: Where we got so far. Oxford 2010.1.18Stream Reasoning: Where we got so far. Oxford 2010.1.18
Stream Reasoning: Where we got so far. Oxford 2010.1.18
 
Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)Towards a rebirth of data science (by Data Fellas)
Towards a rebirth of data science (by Data Fellas)
 
A Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description LogicsA Survey of Temporal Extensions of Description Logics
A Survey of Temporal Extensions of Description Logics
 
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
IMaRS - Incremental Materialization for RDF Streams (SR4LD2013)
 
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...
ICPSR - Complex Systems Models in the Social Sciences - Lab Session 1 - Profe...
 
Matapihi 'The National Digital Project'. The University of Auckland Library P...
Matapihi 'The National Digital Project'. The University of Auckland Library P...Matapihi 'The National Digital Project'. The University of Auckland Library P...
Matapihi 'The National Digital Project'. The University of Auckland Library P...
 

Mais de Daniele Dell'Aglio

Distributed stream consistency checking
Distributed stream consistency checkingDistributed stream consistency checking
Distributed stream consistency checkingDaniele Dell'Aglio
 
Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016Daniele Dell'Aglio
 
Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1Daniele Dell'Aglio
 
Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...Daniele Dell'Aglio
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)Daniele Dell'Aglio
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)Daniele Dell'Aglio
 
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...Daniele Dell'Aglio
 
P&MSP2012 - Version Control Systems
P&MSP2012 - Version Control SystemsP&MSP2012 - Version Control Systems
P&MSP2012 - Version Control SystemsDaniele Dell'Aglio
 
P&MSP2012 - Logging Frameworks
P&MSP2012 - Logging FrameworksP&MSP2012 - Logging Frameworks
P&MSP2012 - Logging FrameworksDaniele Dell'Aglio
 

Mais de Daniele Dell'Aglio (13)

Distributed stream consistency checking
Distributed stream consistency checkingDistributed stream consistency checking
Distributed stream consistency checking
 
On web stream processing
On web stream processingOn web stream processing
On web stream processing
 
On a web of data streams
On a web of data streamsOn a web of data streams
On a web of data streams
 
Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016Summary of the Stream Reasoning workshop at ISWC 2016
Summary of the Stream Reasoning workshop at ISWC 2016
 
Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1Querying the Web of Data with XSPARQL 1.1
Querying the Web of Data with XSPARQL 1.1
 
Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...Augmented Participation to Live Events through Social Network Content Enrichm...
Augmented Participation to Live Events through Social Network Content Enrichm...
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)
 
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...An Ontological Formulation and an OPM profile for Causality in Planning Appli...
An Ontological Formulation and an OPM profile for Causality in Planning Appli...
 
P&MSP2012 - Maven
P&MSP2012 - MavenP&MSP2012 - Maven
P&MSP2012 - Maven
 
P&MSP2012 - Version Control Systems
P&MSP2012 - Version Control SystemsP&MSP2012 - Version Control Systems
P&MSP2012 - Version Control Systems
 
P&MSP2012 - Unit Testing
P&MSP2012 - Unit TestingP&MSP2012 - Unit Testing
P&MSP2012 - Unit Testing
 
P&MSP2012 - Logging Frameworks
P&MSP2012 - Logging FrameworksP&MSP2012 - Logging Frameworks
P&MSP2012 - Logging Frameworks
 

Último

Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bSérgio Sacani
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learninglevieagacer
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticssakshisoni2385
 
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)AkefAfaneh2
 
Velocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptVelocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptRakeshMohan42
 
Dr. E. Muralinath_ Blood indices_clinical aspects
Dr. E. Muralinath_ Blood indices_clinical  aspectsDr. E. Muralinath_ Blood indices_clinical  aspects
Dr. E. Muralinath_ Blood indices_clinical aspectsmuralinath2
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxseri bangash
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxSuji236384
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)Areesha Ahmad
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfSumit Kumar yadav
 
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...Silpa
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .Poonam Aher Patil
 
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort ServiceCall Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort Serviceshivanisharma5244
 
Introduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptxIntroduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptxrohankumarsinghrore1
 
biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY1301aanya
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxMohamedFarag457087
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsSérgio Sacani
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professormuralinath2
 

Último (20)

Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learning
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
Site Acceptance Test .
Site Acceptance Test                    .Site Acceptance Test                    .
Site Acceptance Test .
 
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)
 
Clean In Place(CIP).pptx .
Clean In Place(CIP).pptx                 .Clean In Place(CIP).pptx                 .
Clean In Place(CIP).pptx .
 
Velocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.pptVelocity and Acceleration PowerPoint.ppt
Velocity and Acceleration PowerPoint.ppt
 
Dr. E. Muralinath_ Blood indices_clinical aspects
Dr. E. Muralinath_ Blood indices_clinical  aspectsDr. E. Muralinath_ Blood indices_clinical  aspects
Dr. E. Muralinath_ Blood indices_clinical aspects
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptx
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdf
 
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .
 
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort ServiceCall Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
 
Introduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptxIntroduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptx
 
biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
 

On Unified Stream Reasoning

  • 1. Daniele Dell’Aglio On Unified Stream Reasoning Daniele Dell’Aglio Advisor: Prof. Emanuele Della Valle Milano, 15/07/2016. Ph.D. Viva
  • 2. Daniele Dell’Aglio Problem setting Real time integration of dynamic data from heterogeneous sources – Traffic Prediction 2/33
  • 3. Daniele Dell’Aglio Problem setting Real time integration of dynamic data from heterogeneous sources – Traffic Prediction – Social media analytics 2/33
  • 4. Daniele Dell’Aglio Problem setting Real time integration of dynamic data from heterogeneous sources – Traffic Prediction – Social media analytics – Personalised services 2/33
  • 5. Daniele Dell’Aglio Information Flow Processing In literature there are two different main approaches to process streams 3/33
  • 6. Daniele Dell’Aglio Information Flow Processing In literature there are two different main approaches to process streams Data Stream Management Systems (DSMSs) • Roots in DBMS research • Aggregations, filters and joins 3/33
  • 7. Daniele Dell’Aglio Information Flow Processing In literature there are two different main approaches to process streams Data Stream Management Systems (DSMSs) • Roots in DBMS research • Aggregations, filters and joins Complex Event Processors (CEPs) • Roots in Distributed Systems (Publish/Subscribe) • Search of relevant patterns in the stream • Non-equi-join on the timestamps (after, before, etc.) 3/33
  • 8. Daniele Dell’Aglio Information Flow Processing In literature there are two different main approaches to process streams Data Stream Management Systems (DSMSs) • Roots in DBMS research • Aggregations, filters and joins Complex Event Processors (CEPs) • Roots in Distributed Systems (Publish/Subscribe) • Search of relevant patterns in the stream • Non-equi-join on the timestamps (after, before, etc.) Current systems implements feature of both of them • EPL (e.g. Esper, ORACLE CEP) 3/33
  • 9. Daniele Dell’Aglio Stream Reasoning Information Flow Processing Semantic Technologies Stream Reasoning Inference over streams of data Real-time processing of highly dynamic data Integration of heterogeneous data and access through query answering 4/33
  • 10. Daniele Dell’Aglio The SR research so far EuropeMapfromWikipedia Key 5/33
  • 11. Daniele Dell’Aglio The SR research so far EuropeMapfromWikipedia Key 5/33
  • 12. Daniele Dell’Aglio The SR research so far IMaRS STARQL DynamiTE TROWL EuropeMapfromWikipedia StreamRule StarCITY SPARKWAVE LARS Key 5/33 StreamQR
  • 13. Daniele Dell’Aglio The problem (1) t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 6/33
  • 14. Daniele Dell’Aglio The problem (1) Where are Alice and Bob, when they are together? t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 6/33
  • 15. Daniele Dell’Aglio The problem (1) Where are Alice and Bob, when they are together? Let’s consider a tumbling window W of size 5 Let’s execute the experiment 4 times t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 6/33
  • 16. Daniele Dell’Aglio The problem (1) Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] Where are Alice and Bob, when they are together? Let’s consider a tumbling window W of size 5 Let’s execute the experiment 4 times t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} Which is the correct answer? e1 e2 e3 e4S 6/33
  • 17. Daniele Dell’Aglio The problem (2) Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] CSPARQL t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 7/33
  • 18. Daniele Dell’Aglio The problem (2) Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] Execution 1° answer 2° answer 1 :hall [3] :kitchen [9] 2 No answers 3 :hall [3] :kitchen [9] 4 No answers CSPARQL CQELS Which system behaves in the correct way? t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 7/33
  • 19. Daniele Dell’Aglio Research Question 1 In the context of continuous query answering over RDF streams, how can the behaviour of existing systems be captured, compared and contrast when deductive reasoning processes are not involved? 8/33
  • 20. Daniele Dell’Aglio Research Question 1 In the context of continuous query answering over RDF streams, how can the behaviour of existing systems be captured, compared and contrast when deductive reasoning processes are not involved? Why do we need it? • Comparison and contrast • Study RDF Stream Processing related problems • Standard RSP query language 8/33
  • 21. Daniele Dell’Aglio Background data Streams Applications RDF SPARQL RSEP-QL A reference model that formally defines the semantics of RDF Stream Processing engines 9/33
  • 22. Daniele Dell’Aglio Background data Streams Applications RSP-QL RDF SPARQL RSEP-QL A reference model that formally defines the semantics of RDF Stream Processing engines 9/33
  • 23. Daniele Dell’Aglio Background data Streams Applications RSP-QL BGP evaluation over background data BGP evaluation over streams Model to express continous queries RDF SPARQL RSEP-QL A reference model that formally defines the semantics of RDF Stream Processing engines 9/33
  • 24. Daniele Dell’Aglio Background data Streams RSEP-QL Applications RSP-QL BGP evaluation over background data BGP evaluation over streams Event Pattern detection operators Model to express continous queries RDF SPARQL RSEP-QL A reference model that formally defines the semantics of RDF Stream Processing engines 9/33
  • 25. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Query Interface 10/33
  • 26. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Data layer RDF graphs DS Query Interface 10/33
  • 27. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Evaluator Data layer RDF graphs E DS Query Interface 10/33
  • 28. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Evaluator Data layer Result Formatter Ans(Q)RDF graphs E DS QF Query Interface 10/33
  • 29. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Evaluator Data layer Result Formatter Ans(Q)RDF graphs E DS QF RDF graphs RDF streams Query Interface SDS Q (E, SDS, QF) 10/33
  • 30. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Evaluator Data layer Result Formatter Ans(Q)RDF graphs E DS QF Continuous EvaluatorET RDF graphs RDF streams Query Interface SDS Q (E, SDS, QF) Q (E, SDS, ET, QF) 10/33 Ans(Q,t)
  • 31. Daniele Dell’Aglio Q (E, DS, QF) RSEP-QL From SPARQL to RSEP-QL Evaluator Data layer Result Formatter Ans(Q)RDF graphs E DS QF Continuous EvaluatorET RDF graphs RDF streams Query Interface SDS Q (E, SDS, QF) Q (E, SDS, ET, QF) SE 10/33 Q (SE, SDS, ET, QF) Ans(Q,t)
  • 32. Daniele Dell’Aglio t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 33. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 34. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 35. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) ω t width S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 36. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) ω t width S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 37. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) β ω t widthslide S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 38. Daniele Dell’Aglio Sequence of timestamped graphs (stream items) 𝕎(2,1,1) β ω t widthslide S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 RSEP-QL: Dataset Time-based Sliding Window: 𝕎(ω,β,t0) 11/33
  • 39. Daniele Dell’Aglio 𝕃(2) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 Sequence of timestamped graphs (stream items) RSEP-QL: Dataset Landmark window: 𝕃(t0) 12/33
  • 40. Daniele Dell’Aglio 𝕃(2) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 Sequence of timestamped graphs (stream items) RSEP-QL: Dataset Landmark window: 𝕃(t0) 12/33
  • 41. Daniele Dell’Aglio 𝕃(2) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 Sequence of timestamped graphs (stream items) RSEP-QL: Dataset Landmark window: 𝕃(t0) 12/33
  • 42. Daniele Dell’Aglio 𝕃(2) t S3 S4 S5 S6 S7 S8 S9 S10 S11 S S1 S2 t0 Sequence of timestamped graphs (stream items) RSEP-QL: Dataset Landmark window: 𝕃(t0) 12/33
  • 43. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset R={RDF graph} SPARQL dataset 13/33
  • 44. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset R={RDF graph} SPARQL dataset S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S S1 S2 13/33
  • 45. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset R={RDF graph} SPARQL dataset S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S S1 S2 𝕎(S) 13/33
  • 46. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset t1 G(t1) T⊆ ℕ R={RDF graph} SPARQL dataset G Instantaneous Graph G(t1)  RTime-Varying Graph G: T R S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S S1 S2 𝕎(S) 13/33
  • 47. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset t1 G(t1) T⊆ ℕ R={RDF graph} SPARQL dataset G H Instantaneous Graph G(t1)  RTime-Varying Graph G: T R S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S S1 S2 𝕎(S) 13/33
  • 48. Daniele Dell’Aglio RSEP-QL: Dataset From SPARQL to RSEP-QL dataset t1 G(t1) T⊆ ℕ R={RDF graph} SPARQL dataset G H Instantaneous Graph G(t1)  RTime-Varying Graph G: T R RESP-QL dataset S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S S1 S2 𝕎(S) 13/33
  • 49. Daniele Dell’Aglio RSEP-QL: Operators Stream Processing operators (RSP-QL) • SPARQL operators • WINDOW to specify that the active element is a window (similar to GRAPH) • RStream, IStream, DStream to create the output stream 14/33
  • 50. Daniele Dell’Aglio RSEP-QL: Operators Stream Processing operators (RSP-QL) • SPARQL operators • WINDOW to specify that the active element is a window (similar to GRAPH) • RStream, IStream, DStream to create the output stream Event Processing operators (RSEP-QL) • EVENT w P (Basic Event Pattern) • E1 SEQ E2 • FIRST E1, LAST E1 • MATCH to describe an event pattern • ... 14/33
  • 51. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The SPARQL evaluation function is defined as ⟦𝑃⟧ 𝐷𝑆(𝐺) 15/33
  • 52. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The SPARQL evaluation function is defined as ⟦𝑃⟧ 𝐷𝑆(𝐺) The RSEP-QL evaluation function extends the SPARQL one by introducing the evaluation time instant ⟪𝑃⟫ 𝑆𝐷𝑆(𝐴) 𝑡 15/33
  • 53. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The SPARQL evaluation function is defined as ⟦𝑃⟧ 𝐷𝑆(𝐺) The RSEP-QL evaluation function extends the SPARQL one by introducing the evaluation time instant ⟪𝑃⟫ 𝑆𝐷𝑆(𝐴) 𝑡 SPARQL operators are straight extended to the new evaluation function Example: JOIN ⟦𝐽𝑂𝐼𝑁(𝑃1, 𝑃2)⟧ 𝐷𝑆(𝐺) = ⟦𝑃1⟧ 𝐷𝑆 𝐺 ⨝⟦𝑃2⟧ 𝐷𝑆 𝐺 ⟪𝐽𝑂𝐼𝑁(𝑃1, 𝑃2)⟫ 𝑆𝐷𝑆 𝐴 𝑡 = ⟪𝑃1⟫ 𝑆𝐷𝑆 𝐴 𝑡 ⨝⟪𝑃2⟫ 𝑆𝐷𝑆 𝐴 𝑡 15/33
  • 54. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The main difference is on the BGP evaluation: ⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴) 𝑡 =⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡) 16/33
  • 55. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The main difference is on the BGP evaluation: ⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴) 𝑡 =⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡) SDS(A,t) is: SDS(G,t)= SDS(G(t)) if A is a time-varying graph G 16/33
  • 56. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Stream Processing Evaluation Semantics The main difference is on the BGP evaluation: ⟪𝐵𝐺𝑃⟫ 𝑆𝐷𝑆(𝐴) 𝑡 =⟦𝐵𝐺𝑃⟧ 𝑆𝐷𝑆(𝐴,𝑡) SDS(A,t) is: SDS(G,t)= SDS(G(t)) if A is a time-varying graph G SDS(𝕎(S),t)=SDS(m(𝕎(S,t))) if A is from a sliding window 𝕎 SDS(𝕃(S),t)=SDS(m(𝕃(S,t))) if A is from a landmark window 𝕃 where m denotes a merge function m(𝕎(S,t))= 𝑑 𝑖,𝑡 𝑖 ∈𝕎(S,t) 𝑑𝑖 • takes as input a window content i.e. a sequence of timestamped RDF graphs • produces an RDF graph 16/33
  • 57. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Event Processing Evaluation semantics A new evaluation function ⦅⋅⦆ 𝑜,𝑐 𝑡 • t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴) 𝑡 ), • 𝑜, 𝑐 is an additional window to identify the portion of the data on which the event may happen 17/33
  • 58. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Event Processing Evaluation semantics A new evaluation function ⦅⋅⦆ 𝑜,𝑐 𝑡 • t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴) 𝑡 ), • 𝑜, 𝑐 is an additional window to identify the portion of the data on which the event may happen Event pattern evaluation produces event mappings 𝜇, 𝑡1, 𝑡2 • 𝜇 is a solution mapping • 𝑡1 and 𝑡2 denote the time inverval justifying 𝜇 17/33
  • 59. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Event Processing Evaluation semantics A new evaluation function ⦅⋅⦆ 𝑜,𝑐 𝑡 • t is the evaluation time instant (as in ⟪⋅⟫ 𝑆𝐷𝑆(𝐴) 𝑡 ), • 𝑜, 𝑐 is an additional window to identify the portion of the data on which the event may happen Event pattern evaluation produces event mappings 𝜇, 𝑡1, 𝑡2 • 𝜇 is a solution mapping • 𝑡1 and 𝑡2 denote the time inverval justifying 𝜇 Selection and consumption policies to determine the data involved in the evaluation 17/33
  • 60. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 18/33
  • 61. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 18/33
  • 62. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 18/33
  • 63. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 18/33
  • 64. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 S1 S10 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 11 13 18/33
  • 65. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 S1 S10 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 11 13 18/33
  • 66. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 S1 S10 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 11 13 18/33
  • 67. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Evaluation semantics - Example ⦅FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2⦆ 9,16 𝑡 S2 S3 S4 S1 S1 S6 S7 S8 S9 S10 S11 S12 S2 S1 S10 S1 S12 FIRST EVENT 𝑤1 𝑃1 SEQ EVERY EVENT 𝑤2 𝑃2 t 10 12 14 1611 13 15 11 13 11 15 18/33
  • 68. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics MATCH graph pattern Event patterns are enclosed in MATCH graph patterns • Event mappings exist only in the context of event patterns • The evaluation of a MATCH graph pattern produces a bag of solution mappings ⟪𝑀𝐴𝑇𝐶𝐻 𝐸⟫ 𝑆𝐷𝑆 𝐴 𝑡 = {𝜇| 𝜇, 𝑡1, 𝑡2 ∈ ⦅𝐸⦆ 0,𝑡 𝑡 } It is possible to combine the MATCH graph pattern with other SPARQL graph patterns 19/33
  • 69. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Continuous evaluation For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴) 𝑡 • The continuous evaluation is a sequence of instantaneous evaluations 20/33
  • 70. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Continuous evaluation For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴) 𝑡 • The continuous evaluation is a sequence of instantaneous evaluations It is not always possible to compute ET a priori 20/33
  • 71. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Continuous evaluation For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴) 𝑡 • The continuous evaluation is a sequence of instantaneous evaluations It is not always possible to compute ET a priori • Can be infinite • Can be data dependent 20/33
  • 72. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Continuous evaluation For each evaluation time t ∈ ET: ⟪𝑆𝐸⟫ 𝑆𝐷𝑆(𝐴) 𝑡 • The continuous evaluation is a sequence of instantaneous evaluations It is not always possible to compute ET a priori • Can be infinite • Can be data dependent ET is expressed through a Report Policy • A set of conditions to one or more window operators in SDS • Initially defined in SECRET for Stream Processing engines 20/33
  • 73. Daniele Dell’Aglio RSEP-QL: Evaluation Semantics Continuous evaluation Report Policy examples: • P Periodic: the window reports only at regular intervals • WC Window Close: the window reports if the active window closes • CC Content Change: the window reports if the content changes. 21/33
  • 74. Daniele Dell’Aglio Research Question 2 Is it possible to add deductive reasoning features to RSEP-QL? 22/33
  • 75. Daniele Dell’Aglio Research Question 2 Is it possible to add deductive reasoning features to RSEP-QL? Applications RDF SPARQL Ontology 22/33
  • 76. Daniele Dell’Aglio Research Question 2 Is it possible to add deductive reasoning features to RSEP-QL? Applications RDF SPARQL Ontology SPARQL Entailment Regimes 22/33
  • 77. Daniele Dell’Aglio Research Question 2 Is it possible to add deductive reasoning features to RSEP-QL? Streams Ontology Background data RSEP-QL Applications RSP-QL RDF SPARQL Ontology SPARQL Entailment Regimes 22/33
  • 78. Daniele Dell’Aglio Research Question 2 Is it possible to add deductive reasoning features to RSEP-QL? Streams Ontology Background data RSEP-QL Entailment Regimes RSEP-QL Applications RSP-QL RDF SPARQL Ontology SPARQL Entailment Regimes 22/33
  • 79. Daniele Dell’Aglio RSEP-QL: Reasoning Stream Processing At which point of the continuous query answering process should the inference process be taken into account? Event ProcessingWindow merge Window operator Stream S3 4 5 6 7 8 9 S 1 2 6 7 8 9 6-9 t RDF Graph RDF Stream Window 23/33
  • 80. Daniele Dell’Aglio RSEP-QL: Reasoning Stream Processing At which point of the continuous query answering process should the inference process be taken into account? Direct application on SPARQL entailment regimes Event ProcessingWindow merge Window operator Stream S Graph-level entailment 3 4 5 6 7 8 9 S 1 2 6 7 8 9 6-9 t RDF Graph RDF Stream Window 23/33
  • 81. Daniele Dell’Aglio RSEP-QL: Reasoning Stream Processing At which point of the continuous query answering process should the inference process be taken into account? After applying the window operator Direct application on SPARQL entailment regimes Event ProcessingWindow merge Window operator Stream S Graph-level entailment Window-level entailment 3 4 5 6 7 8 9 S 1 2 6 7 8 9 6-9 t RDF Graph RDF Stream Window 23/33
  • 82. Daniele Dell’Aglio RSEP-QL: Reasoning Stream Processing At which point of the continuous query answering process should the inference process be taken into account? A larger, landmark window to include relevant information from the past After applying the window operator Direct application on SPARQL entailment regimes Event ProcessingWindow merge Window operator Stream S Graph-level entailment Window-level entailment Stream-level entailment 3 4 5 6 7 8 9 S 1 2 6 7 8 9 6-9 t 6 7 8 9 3 4 5 RDF Graph RDF Stream Window 23/33
  • 83. Daniele Dell’Aglio RSEP-QL: Reasoning Window-level and stream-level entailment regimes How can DL ontology be extended to capture the window content? 24/33
  • 84. Daniele Dell’Aglio RSEP-QL: Reasoning Window-level and stream-level entailment regimes How can DL ontology be extended to capture the window content? • Ontology stream – a sequence of time-stamped ABoxes 𝑆 𝑜 𝑐 𝑖 w.r.t a static TBox 24/33
  • 85. Daniele Dell’Aglio RSEP-QL: Reasoning Window-level and stream-level entailment regimes How can DL ontology be extended to capture the window content? • Ontology stream – a sequence of time-stamped ABoxes 𝑆 𝑜 𝑐 𝑖 w.r.t a static TBox • Introduction of so-far closure, as the closure of the i-th snapshot w.r.t. the Tbox and the previus snapshots • The so-far closure of 𝑆 𝑜 𝑐 𝑖 is done w.r.t. the TBox and the snapshots 𝑆 𝑜 𝑐 𝑜 … 𝑆 𝑜 𝑐 𝑖 − 1 • The so-far closure of the ontology stream is obtained by so-far closing all the ABox snapshots 24/33
  • 86. Daniele Dell’Aglio Event Processing Stream-level entailment RSEP-QL: Reasoning Results 1. Theorem: in the context of Stream Processing operations, graph- and window-level entailments have the same behaviour as far as no inconsistency is entailed 25/33 Stream Processing Window merge Window operator Stream S Graph-level ent. Window-level entailment
  • 87. Daniele Dell’Aglio Event Processing Stream-level entailment RSEP-QL: Reasoning Results 1. Theorem: in the context of Stream Processing operations, graph- and window-level entailments have the same behaviour as far as no inconsistency is entailed 2. Theorem: The stream-level entailment brings to a larger set of answers w.r.t. graph- and window- entailment ones. 25/33 Stream Processing Event ProcessingWindow merge Window operator Stream S Graph-level ent. Window-level entailment Stream-level entailment
  • 88. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 89. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 90. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 91. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] t0=1 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 92. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] t0=1 :hall [6] :kitchen [11] t0=1 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 93. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] t0=1 :hall [6] :kitchen [11] t0=1 t0=2 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 94. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] t0=1 :hall [6] :kitchen [11] t0=2 - [7] - [12] t0=1 t0=2 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 95. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] t0=0 Window 1° answer 2° answer t0=0 :hall [5] :kitchen [10] t0=1 :hall [6] :kitchen [11] t0=2 - [7] - [12] t0=1 t0=2 RSEP-QL in action Correctness assessment t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S 26/33
  • 96. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] Execution 1° answer 2° answer 1 :hall [3] :kitchen [9] 2 No answers 3 :hall [3] :kitchen [9] 4 No answers CSPARQL CQELS RSEP-QL in action Correctness assessment 27/33 t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S
  • 97. Daniele Dell’Aglio Execution 1° answer 2° answer 1 :hall [6] :kitchen [11] 2 :hall [5] :kitchen [10] 3 :hall [6] :kitchen [11] 4 - [7] - [12] Execution 1° answer 2° answer 1 :hall [3] :kitchen [9] 2 No answers 3 :hall [3] :kitchen [9] 4 No answers CSPARQL CQELS Window-close vs content-change Empty relation notification (yes|no) RSEP-QL in action Correctness assessment 27/33 t3 6 91 {:alice :isIn :hall} {:bob :isIn :hall} {:alice :isIn :kitchen} {:bob :isIn :kitchen} e1 e2 e3 e4S
  • 98. Daniele Dell’Aglio CSR Bench CSR Bench is an extension of the SRbench benchmark that focuses on correctness A test suite • LinkedSensorData as dataset • 8 parametric queries to tests the RSP engines in different conditions An oracle (an automatic correctness validator) • Based on RSP-QL 28/33
  • 99. Daniele Dell’Aglio CSR Bench Experimental Results All the three systems that we considered in our experiments showed wrong behaviours The defects we identified are related to: •The window operator • Initialization • Slide parameter • Window contents •Timestamps of the stream items • Internal timestamp management CQELS C-SPARQL SPARQLstream Q1 Q2 Q3 Q4 Q5 Q6 Q7 29/33
  • 100. Daniele Dell’Aglio What’s next? An RSEP-QL query language • W3C RSP CG ongoing activities 30/33
  • 101. Daniele Dell’Aglio What’s next? An RSEP-QL query language • W3C RSP CG ongoing activities Implementations 30/33
  • 102. Daniele Dell’Aglio What’s next? An RSEP-QL query language • W3C RSP CG ongoing activities Implementations • Yet another RSP engine 30/33
  • 103. Daniele Dell’Aglio What’s next? An RSEP-QL query language • W3C RSP CG ongoing activities Implementations • Yet another RSP engine • Stream Reasoner composition • RSEP-QL as model to capture the behaviour of SRs • RSEP-QL queries to define tasks to be executed over one or more SR engines 30/33
  • 104. Daniele Dell’Aglio What’s next? An RSEP-QL query language • W3C RSP CG ongoing activities Implementations • Yet another RSP engine • Stream Reasoner composition • RSEP-QL as model to capture the behaviour of SRs • RSEP-QL queries to define tasks to be executed over one or more SR engines Stream-level entailment scalable techniques • Initial work on stream without inference • Permanent storage of portions of data (raw or inferred) 30/33
  • 105. Daniele Dell’Aglio What’s next? Reasoning over streams and continuous query answering over streams are still two different worlds • Key to show why RDF Stream Processing is useful w.r.t. DSMS and CEP • Few initial attempts to put them together 31/33
  • 106. Daniele Dell’Aglio What’s next? Reasoning over streams and continuous query answering over streams are still two different worlds • Key to show why RDF Stream Processing is useful w.r.t. DSMS and CEP • Few initial attempts to put them together Streams in the Web are getting popular – applications want more and more sophisticated features • Different timestamps, out-of-orders • Noise (inductive reasoning) 31/33
  • 107. Daniele Dell’Aglio Conclusions RSEP-QL captures the evaluation semantics of existing RSP engines 32/33
  • 108. Daniele Dell’Aglio Conclusions RSEP-QL captures the evaluation semantics of existing RSP engines RSEP-QL can determine which are the correct answers of an RSP engine, given the input data and query • At the basis of CSR Bench 32/33
  • 109. Daniele Dell’Aglio Conclusions RSEP-QL captures the evaluation semantics of existing RSP engines RSEP-QL can determine which are the correct answers of an RSP engine, given the input data and query • At the basis of CSR Bench The dynamics introduced in the continuous query evaluation process have not been totally understood • Not fully captured by existing models • RSEP-QL captures those dynamics 32/33
  • 110. Daniele Dell’Aglio Thank you! Questions? On Unified Stream Reasoning Daniele Dell’Aglio Advisor: Prof. Emanuele Della Valle 33/33