SlideShare a Scribd company logo
1 of 44
Download to read offline
Stream Reasoning
For Linked Data
M. Balduini, J-P Calbimonte, O. Corcho,
D. Dell'Aglio, E. Della Valle, and J.Z. Pan
http://streamreasoning.org/sr4ld2013

IMaRS: Incremental
Materialization for RDF Streams
Daniele Dell'Aglio – daniele.dellaglio@polimi.it
Emanuele Della Valle – emanuele.dellavalle@polimi.it
Share, Remix, Reuse — Legally
 This work is licensed under the Creative Commons
Attribution 3.0 Unported License.
 Your are free:
to Share — to copy, distribute and transmit the work
to Remix — to adapt the work

 Under the following conditions
Attribution — You must attribute the work by inserting
– “[source http://streamreasoning.org/sr4ld2013]” at the end of
each reused slide
– a credits slide stating
-

These slides are partially based on “Streaming Reasoning for Linked
Data 2013” by M. Balduini, J-P Calbimonte, O. Corcho, D. Dell'Aglio,
E. Della Valle, and J.Z. Pan http://streamreasoning.org/sr4ld2013

 To view a copy of this license, visit
http://creativecommons.org/licenses/by/3.0/
http://streamreasoning.org/sr4ld2013

2
Running Example – Data Model
Streaming
information

Background
information
where

Observation

isIn

observes

subClassOf

subPropOf

Post

posts

Room
isConnectedTo

Sensor

subClassOf

discusses
who

Person
isWith

http://streamreasoning.org/sr4ld2013

3
Running Example – Data Model
Streaming
information Instances

Background
information
where

1

2

3

Observation

isIn

observes

subClassOf

subPropOf

Post

posts

Room
isConnectedTo

Sensor

subClassOf

discusses
who

Person
isWith

http://streamreasoning.org/sr4ld2013

4
What
 Add reasoning in window-based RSPs
 Naïve solution: materialize everything, every time
 But windows slide:
• The materialisation is executed every time the
window updates
• Only part of data changes at each window update
• Materialisation is (usually) an expensive task

http://streamreasoning.org/sr4ld2013

4
Naïve solution: an example
TBOX
dom(

)⊑

rng(

)⊑

1

∈

2

∈

S

∈

1
http://streamreasoning.org/sr4ld2013

∈

2
5
Naïve solution: an example
TBOX
dom(

)⊑

rng(

)⊑

S

1

∈

2

∈

1
http://streamreasoning.org/sr4ld2013

∈
∈

2

3
5
Naïve solution: an example
TBOX
dom(

)⊑

rng(

)⊑

S

1
http://streamreasoning.org/sr4ld2013

2

3
5
Naïve solution: an example
TBOX
dom(

)⊑

rng(

)⊑

S

2
3

∈
∈

1
http://streamreasoning.org/sr4ld2013

2

3
5
Incremental maintenance
 Adopt an incremental approach
 Compute only the differences that should be removed and
added from the materialization

Inferred statements

To be added

To be removed

∆

−

∆

+

Explicit statements
http://streamreasoning.org/sr4ld2013

6
Incremental maintenance: an example
TBOX
dom(

)⊑

rng(

)⊑

1

∈

2

∈

S

∈

1
http://streamreasoning.org/sr4ld2013

∈

2
7
Incremental maintenance: an example
TBOX
dom(

)⊑

rng(

)⊑

S

1

∈

2

∈

1
http://streamreasoning.org/sr4ld2013

∈
∈

2

3
7
Incremental maintenance: an example
TBOX
dom(

)⊑

rng(

)⊑

S

To be
deleted

1

∈

2

∈

1
http://streamreasoning.org/sr4ld2013

∈
∈

2

3
7
Incremental maintenance: an example
TBOX
dom(

)⊑

rng(

)⊑

S

3
To be
deleted

1

∈

2

∈

1
http://streamreasoning.org/sr4ld2013

∈
To be
added

∈
∈

2

3
7
Incremental maintenance: an example
TBOX
dom(

)⊑

rng(

To be
renewed

)⊑

S

3
To be
deleted

1

∈

2

∈

1
http://streamreasoning.org/sr4ld2013

∈
To be
added

∈
∈

2

3
7
Which technique?
 The common problem in designing incremental
maintenance techniques is in the management of
deletions
 In general it is not possible to foresee the statement
deletions
• DRed works with random insertions and deletions
 In our setting it is possible
• The window operator allow us to determine when
statements will be removed

http://streamreasoning.org/sr4ld2013

8
IMaRS
 Variation of DRed for RDF streams
 It pushes the maintenance algorithm in the window
operator
 An IMaRS window is a sliding window with four
parameters:
• ω: the size of the window
• β: the slide of the window
• T: the TBox that describes the data model
• M: the mantinance program
 One of the central IMaRS concepts is the expiration
time

http://streamreasoning.org/sr4ld2013

9
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
TBOX
dom(

)⊑

rng(

Window (2,1)

)⊑

Current time
10

1

S
7

8

http://streamreasoning.org/sr4ld2013

9

t

10
10
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
TBOX
dom(

)⊑

rng(

Window (2,1)

)⊑

Current time
11

The statement
will exit at 13

1

S
8

9

http://streamreasoning.org/sr4ld2013

10

t

11
10
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
TBOX

Window (2,1)

)⊑

dom(

1

)⊑

rng(

∈

The inferred
statements will
exit at 13

∈

Current time
11

The statement
will exit at 13

1

S
8

9

http://streamreasoning.org/sr4ld2013

10

t

11
10
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
TBOX
dom(

)⊑

rng(

Window (2,1)

)⊑

1

∈
∈

Current time
12

1

S
9

10

http://streamreasoning.org/sr4ld2013

11

t

12
10
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
The inferred
TBOX

statements
expire

Window (2,1)

dom(

)⊑

rng(

)⊑

1

∈
∈

Current time
13

1

S
10

11

http://streamreasoning.org/sr4ld2013

12

t

13
10
Expiration time
 Every time a statement is added to the window, it is
annotated with an expiration time
 The expiration time indicates when the statement should
be removed from the materialization
The inferred
TBOX

statements
expire

Window (2,1)

dom(

)⊑

rng(

)⊑

Current time
13

1

S
10

11

http://streamreasoning.org/sr4ld2013

12

t

13
10
Expiration time generation
 At each window update

Expiration time
update

Statement
deletion

Inferred
statements
Explicit
statements

 The computation is done through the
execution of a maintenance program

http://streamreasoning.org/sr4ld2013

To be
added

To be
removed

To be renewed

Expiration time
assignment

Expiration time
assignment
11
IMaRS at a glance

DRed

IMaRS

Delete

Lookup
Rederive

Insert +
Renew
Insert

http://streamreasoning.org/sr4ld2013

25
IMaRS maintenance program
 The maintenance program computes the delta sets ∆−
and ∆+
• It is a logic program
 The program is executed every time the content
changes
• In our context, the program is executed every time
the window slides

 The program is composed by maintenance rules
• A maintenance rule adds a statement in a set
(context) if the preconditions are satisfied

http://streamreasoning.org/sr4ld2013

13
IMaRS contexts

 The maintenance program uses four contexts to
build the delta sets ∆− and ∆+
• Mat: the current materialization
• Ins: the input that enters the stream and the
related inferred statements

 Additionally, two support sets are used:
• New: statements to be added to the
materialization
• Ren: renewed statements

 The new materialization is computed as
Mat U

http://streamreasoning.org/sr4ld2013

∆+  ∆−
14
IMaRS maintenance rules
 Two examples of maintenance rules:
Δ-(?s,?p,?o)[e] Mat(?s,?p,?o)[e] .
e < now

A triple is removed by the materialization when its
expiration time expires
Ins(?x,?p,?z)[e] New(?x,?p,?y)[e1].
Ins(?x,?p,?y)[e2] .
Ins(?p,isA,TransitiveProperty)[e3].
e=min{e1,e2,e3}

When a triple <s,p,o> enters the window, p is transitive
and there is a triple <o,p,k> in the Ins context, then the
triple <s,p,k> is a candidate for the addition in the
materialization
http://streamreasoning.org/sr4ld2013

15
IMaRS maintenance program
 The maintenance program is composed by two sets of
maintenance rules:
• One set of fixed maintenance rules
• One dependent on the ontological language

 The ontological language should be expressed as a
set of inference rules, e.g.
T(?x, ?p, ?z) :T(?p, rdf:type, owl:TransitiveProperty),
T(?x, ?p, ?y), T(?y, ?p, ?z)

 It does not depend on the TBox!

http://streamreasoning.org/sr4ld2013

16
Generation of the maintenance program
Rewriting
functions

Maintenance
program
generator

Ontological
language

Maintenance
program

TBox

IMaRS Window (ω, β)
http://streamreasoning.org/sr4ld2013

30
Example: DRed
2
1
TBOX

tr(

Window (3,1)

)

Current time
11

2

S

7

8

http://streamreasoning.org/sr4ld2013

9

1

t

10
18
Example: DRed
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
12

3

1

3
4

2

S

8

9

http://streamreasoning.org/sr4ld2013

2
1

1

10

t

11
18
Example: DRed
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
13

3

3
2

S

1

2

1

3
4

9

10

http://streamreasoning.org/sr4ld2013

4

1
11

t

12
18
Example: DRed
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
14

3

3

3

S 2

4

2

1
4
10

1

1
11

http://streamreasoning.org/sr4ld2013

12

t

13
18
Example: DRed
Delete

2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
14

3

3

3

S 2

4

2

1
4
10

1

1
11

http://streamreasoning.org/sr4ld2013

12

t

13
18
Example: DRed
Delete

2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
14

3

3

3

S 2

4

2

1
4
10

1

1
11

http://streamreasoning.org/sr4ld2013

12

t

13
18
Example: DRed
Delete

2
1

3
Rederive

4
TBOX

tr(

Window (3,1)

)

Current time
14

3

3

3

S 2

4

2

1
4
10

1

1
11

http://streamreasoning.org/sr4ld2013

12

t

13
18
Example: IMaRS
2
1
TBOX

tr(

Window (3,1)

)

Current time
11

2

S

7

8

http://streamreasoning.org/sr4ld2013

9

1

t

10
19
Example: IMaRS
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
12

3

1

3
4

2

S

8

9

http://streamreasoning.org/sr4ld2013

2
1

1

10

t

11
19
Example: IMaRS
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
13

3

3
2

S

1

2

1

3
4

9

10

http://streamreasoning.org/sr4ld2013

4

1
11

t

12
19
Example: IMaRS
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
13

3

3
2

S

1

2

1

3
4

9

10

http://streamreasoning.org/sr4ld2013

4

1
11

t

12
19
Example: IMaRS
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
13

3

3
2

S

1

2

1

3
4

9

10

http://streamreasoning.org/sr4ld2013

4

1
11

t

12
19
Example: IMaRS
2
1

3

4
TBOX

tr(

Window (3,1)

)

Current time
14

3

3

3

S 2

4

2

1
4
10

1

1
11

http://streamreasoning.org/sr4ld2013

12

t

13
19
Stream Reasoning
For Linked Data
M. Balduini, J-P Calbimonte, O. Corcho,
D. Dell'Aglio, E. Della Valle, and J.Z. Pan
http://streamreasoning.org/sr4ld2013

IMaRS: Incremental
Materialization for RDF Streams
Daniele Dell'Aglio – daniele.dellaglio@polimi.it
Emanuele Della Valle – emanuele.dellavalle@polimi.it

More Related Content

What's hot

Computer Science Programming Assignment Help
Computer Science Programming Assignment HelpComputer Science Programming Assignment Help
Computer Science Programming Assignment HelpProgramming Homework Help
 
Scoped dynamic rewrite rules
Scoped dynamic rewrite rulesScoped dynamic rewrite rules
Scoped dynamic rewrite rulesEelco Visser
 
Acunu Analytics: Simpler Real-Time Cassandra Apps
Acunu Analytics: Simpler Real-Time Cassandra AppsAcunu Analytics: Simpler Real-Time Cassandra Apps
Acunu Analytics: Simpler Real-Time Cassandra AppsAcunu
 
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...Alex Pruden
 
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...PingCAP
 
ZK Study Club: Sumcheck Arguments and Their Applications
ZK Study Club: Sumcheck Arguments and Their ApplicationsZK Study Club: Sumcheck Arguments and Their Applications
ZK Study Club: Sumcheck Arguments and Their ApplicationsAlex Pruden
 
Functional Programming inside OOP? It’s possible with Python
Functional Programming inside OOP? It’s possible with PythonFunctional Programming inside OOP? It’s possible with Python
Functional Programming inside OOP? It’s possible with PythonCarlos V.
 
Apache Flink Training: DataStream API Part 2 Advanced
Apache Flink Training: DataStream API Part 2 Advanced Apache Flink Training: DataStream API Part 2 Advanced
Apache Flink Training: DataStream API Part 2 Advanced Flink Forward
 

What's hot (11)

Computer Science Programming Assignment Help
Computer Science Programming Assignment HelpComputer Science Programming Assignment Help
Computer Science Programming Assignment Help
 
Scoped dynamic rewrite rules
Scoped dynamic rewrite rulesScoped dynamic rewrite rules
Scoped dynamic rewrite rules
 
Map Reduce Online
Map Reduce OnlineMap Reduce Online
Map Reduce Online
 
C07.heaps
C07.heapsC07.heaps
C07.heaps
 
Acunu Analytics: Simpler Real-Time Cassandra Apps
Acunu Analytics: Simpler Real-Time Cassandra AppsAcunu Analytics: Simpler Real-Time Cassandra Apps
Acunu Analytics: Simpler Real-Time Cassandra Apps
 
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
zkStudyClub: PLONKUP & Reinforced Concrete [Luke Pearson, Joshua Fitzgerald, ...
 
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...
[Paper Reading] Generalized Sub-Query Fusion for Eliminating Redundant I/O fr...
 
ZK Study Club: Sumcheck Arguments and Their Applications
ZK Study Club: Sumcheck Arguments and Their ApplicationsZK Study Club: Sumcheck Arguments and Their Applications
ZK Study Club: Sumcheck Arguments and Their Applications
 
Functional Programming inside OOP? It’s possible with Python
Functional Programming inside OOP? It’s possible with PythonFunctional Programming inside OOP? It’s possible with Python
Functional Programming inside OOP? It’s possible with Python
 
~Ns2~
~Ns2~~Ns2~
~Ns2~
 
Apache Flink Training: DataStream API Part 2 Advanced
Apache Flink Training: DataStream API Part 2 Advanced Apache Flink Training: DataStream API Part 2 Advanced
Apache Flink Training: DataStream API Part 2 Advanced
 

Viewers also liked

Learning for a New Leadership:The Collaborative Redesign of Lidera Programme
Learning for a New Leadership:The Collaborative Redesign of Lidera ProgrammeLearning for a New Leadership:The Collaborative Redesign of Lidera Programme
Learning for a New Leadership:The Collaborative Redesign of Lidera ProgrammeObservatório do Recife
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)Daniele Dell'Aglio
 

Viewers also liked (6)

P&MSP2012 - Maven
P&MSP2012 - MavenP&MSP2012 - Maven
P&MSP2012 - Maven
 
Learning for a New Leadership:The Collaborative Redesign of Lidera Programme
Learning for a New Leadership:The Collaborative Redesign of Lidera ProgrammeLearning for a New Leadership:The Collaborative Redesign of Lidera Programme
Learning for a New Leadership:The Collaborative Redesign of Lidera Programme
 
Kapittel 15
Kapittel 15Kapittel 15
Kapittel 15
 
Wapz
WapzWapz
Wapz
 
Kapittel 15
Kapittel 15Kapittel 15
Kapittel 15
 
RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)RDF Stream Processing Models (RSP2014)
RDF Stream Processing Models (RSP2014)
 

Similar to Stream Reasoning for Linked Data Incrementally

Colvin RMAN New Features
Colvin RMAN New FeaturesColvin RMAN New Features
Colvin RMAN New FeaturesEnkitec
 
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
 
Kyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdfKyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdfFlavio W. Brasil
 
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executionsRedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executionsRedis Labs
 
Tutorial Stream Reasoning SPARQLstream and Morph-streams
Tutorial Stream Reasoning SPARQLstream and Morph-streamsTutorial Stream Reasoning SPARQLstream and Morph-streams
Tutorial Stream Reasoning SPARQLstream and Morph-streamsJean-Paul Calbimonte
 
How History Justifies System Architecture (or Not)
How History Justifies System Architecture (or Not)How History Justifies System Architecture (or Not)
How History Justifies System Architecture (or Not)Thomas Zimmermann
 
Deep Dive with Spark Streaming - Tathagata Das - Spark Meetup 2013-06-17
Deep Dive with Spark Streaming - Tathagata  Das - Spark Meetup 2013-06-17Deep Dive with Spark Streaming - Tathagata  Das - Spark Meetup 2013-06-17
Deep Dive with Spark Streaming - Tathagata Das - Spark Meetup 2013-06-17spark-project
 
ComputeFest 2012: Intro To R for Physical Sciences
ComputeFest 2012: Intro To R for Physical SciencesComputeFest 2012: Intro To R for Physical Sciences
ComputeFest 2012: Intro To R for Physical Sciencesalexstorer
 
101 3.4 use streams, pipes and redirects
101 3.4 use streams, pipes and redirects101 3.4 use streams, pipes and redirects
101 3.4 use streams, pipes and redirectsAcácio Oliveira
 
HARD COPY REPORT CDAC
HARD COPY REPORT CDACHARD COPY REPORT CDAC
HARD COPY REPORT CDACSarthak Dubey
 
Pumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisPumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisUniversity of Illinois,Chicago
 
A Parallel Data Distribution Management Algorithm
A Parallel Data Distribution Management AlgorithmA Parallel Data Distribution Management Algorithm
A Parallel Data Distribution Management AlgorithmGabriele D'Angelo
 
Pumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisPumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisUniversity of Illinois,Chicago
 

Similar to Stream Reasoning for Linked Data Incrementally (20)

Anton Dignös - Towards a Temporal PostgresSQL
Anton Dignös - Towards a Temporal PostgresSQLAnton Dignös - Towards a Temporal PostgresSQL
Anton Dignös - Towards a Temporal PostgresSQL
 
Colvin RMAN New Features
Colvin RMAN New FeaturesColvin RMAN New Features
Colvin RMAN New Features
 
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
 
Kyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdfKyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdf
 
15 - Streams
15 - Streams15 - Streams
15 - Streams
 
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executionsRedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
 
Tutorial Stream Reasoning SPARQLstream and Morph-streams
Tutorial Stream Reasoning SPARQLstream and Morph-streamsTutorial Stream Reasoning SPARQLstream and Morph-streams
Tutorial Stream Reasoning SPARQLstream and Morph-streams
 
CRDTs and Redis
CRDTs and RedisCRDTs and Redis
CRDTs and Redis
 
How History Justifies System Architecture (or Not)
How History Justifies System Architecture (or Not)How History Justifies System Architecture (or Not)
How History Justifies System Architecture (or Not)
 
Deep Dive with Spark Streaming - Tathagata Das - Spark Meetup 2013-06-17
Deep Dive with Spark Streaming - Tathagata  Das - Spark Meetup 2013-06-17Deep Dive with Spark Streaming - Tathagata  Das - Spark Meetup 2013-06-17
Deep Dive with Spark Streaming - Tathagata Das - Spark Meetup 2013-06-17
 
ComputeFest 2012: Intro To R for Physical Sciences
ComputeFest 2012: Intro To R for Physical SciencesComputeFest 2012: Intro To R for Physical Sciences
ComputeFest 2012: Intro To R for Physical Sciences
 
WCM Transfer Services
WCM Transfer Services WCM Transfer Services
WCM Transfer Services
 
C Programming Homework Help
C Programming Homework HelpC Programming Homework Help
C Programming Homework Help
 
JGrass-NewAge water budget
JGrass-NewAge water budget JGrass-NewAge water budget
JGrass-NewAge water budget
 
101 3.4 use streams, pipes and redirects
101 3.4 use streams, pipes and redirects101 3.4 use streams, pipes and redirects
101 3.4 use streams, pipes and redirects
 
Critical Path Method
Critical Path MethodCritical Path Method
Critical Path Method
 
HARD COPY REPORT CDAC
HARD COPY REPORT CDACHARD COPY REPORT CDAC
HARD COPY REPORT CDAC
 
Pumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisPumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency Analysis
 
A Parallel Data Distribution Management Algorithm
A Parallel Data Distribution Management AlgorithmA Parallel Data Distribution Management Algorithm
A Parallel Data Distribution Management Algorithm
 
Pumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency AnalysisPumps, Compressors and Turbine Fault Frequency Analysis
Pumps, Compressors and Turbine Fault Frequency Analysis
 

More from Daniele Dell'Aglio

Distributed stream consistency checking
Distributed stream consistency checkingDistributed stream consistency checking
Distributed stream consistency checkingDaniele Dell'Aglio
 
Triplewave: a step towards RDF Stream Processing on the Web
Triplewave: a step towards RDF Stream Processing on the WebTriplewave: a step towards RDF Stream Processing on the Web
Triplewave: a step towards RDF Stream Processing on the WebDaniele Dell'Aglio
 
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
 
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
 
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
 
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
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)Daniele 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
 
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
 

More from Daniele Dell'Aglio (19)

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
 
Triplewave: a step towards RDF Stream Processing on the Web
Triplewave: a step towards RDF Stream Processing on the WebTriplewave: a step towards RDF Stream Processing on the Web
Triplewave: a step towards RDF Stream Processing on the Web
 
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...
 
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
 
On Unified Stream Reasoning
On Unified Stream ReasoningOn Unified Stream Reasoning
On Unified Stream Reasoning
 
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...
 
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
 
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
 
RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)RDF Stream Processing Models (SR4LD2013)
RDF Stream Processing Models (SR4LD2013)
 
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
 
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 - 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
 

Recently uploaded

Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxabhijeetpadhi001
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 

Recently uploaded (20)

Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptx
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 

Stream Reasoning for Linked Data Incrementally

  • 1. Stream Reasoning For Linked Data M. Balduini, J-P Calbimonte, O. Corcho, D. Dell'Aglio, E. Della Valle, and J.Z. Pan http://streamreasoning.org/sr4ld2013 IMaRS: Incremental Materialization for RDF Streams Daniele Dell'Aglio – daniele.dellaglio@polimi.it Emanuele Della Valle – emanuele.dellavalle@polimi.it
  • 2. Share, Remix, Reuse — Legally  This work is licensed under the Creative Commons Attribution 3.0 Unported License.  Your are free: to Share — to copy, distribute and transmit the work to Remix — to adapt the work  Under the following conditions Attribution — You must attribute the work by inserting – “[source http://streamreasoning.org/sr4ld2013]” at the end of each reused slide – a credits slide stating - These slides are partially based on “Streaming Reasoning for Linked Data 2013” by M. Balduini, J-P Calbimonte, O. Corcho, D. Dell'Aglio, E. Della Valle, and J.Z. Pan http://streamreasoning.org/sr4ld2013  To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/ http://streamreasoning.org/sr4ld2013 2
  • 3. Running Example – Data Model Streaming information Background information where Observation isIn observes subClassOf subPropOf Post posts Room isConnectedTo Sensor subClassOf discusses who Person isWith http://streamreasoning.org/sr4ld2013 3
  • 4. Running Example – Data Model Streaming information Instances Background information where 1 2 3 Observation isIn observes subClassOf subPropOf Post posts Room isConnectedTo Sensor subClassOf discusses who Person isWith http://streamreasoning.org/sr4ld2013 4
  • 5. What  Add reasoning in window-based RSPs  Naïve solution: materialize everything, every time  But windows slide: • The materialisation is executed every time the window updates • Only part of data changes at each window update • Materialisation is (usually) an expensive task http://streamreasoning.org/sr4ld2013 4
  • 6. Naïve solution: an example TBOX dom( )⊑ rng( )⊑ 1 ∈ 2 ∈ S ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ 2 5
  • 7. Naïve solution: an example TBOX dom( )⊑ rng( )⊑ S 1 ∈ 2 ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ ∈ 2 3 5
  • 8. Naïve solution: an example TBOX dom( )⊑ rng( )⊑ S 1 http://streamreasoning.org/sr4ld2013 2 3 5
  • 9. Naïve solution: an example TBOX dom( )⊑ rng( )⊑ S 2 3 ∈ ∈ 1 http://streamreasoning.org/sr4ld2013 2 3 5
  • 10. Incremental maintenance  Adopt an incremental approach  Compute only the differences that should be removed and added from the materialization Inferred statements To be added To be removed ∆ − ∆ + Explicit statements http://streamreasoning.org/sr4ld2013 6
  • 11. Incremental maintenance: an example TBOX dom( )⊑ rng( )⊑ 1 ∈ 2 ∈ S ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ 2 7
  • 12. Incremental maintenance: an example TBOX dom( )⊑ rng( )⊑ S 1 ∈ 2 ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ ∈ 2 3 7
  • 13. Incremental maintenance: an example TBOX dom( )⊑ rng( )⊑ S To be deleted 1 ∈ 2 ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ ∈ 2 3 7
  • 14. Incremental maintenance: an example TBOX dom( )⊑ rng( )⊑ S 3 To be deleted 1 ∈ 2 ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ To be added ∈ ∈ 2 3 7
  • 15. Incremental maintenance: an example TBOX dom( )⊑ rng( To be renewed )⊑ S 3 To be deleted 1 ∈ 2 ∈ 1 http://streamreasoning.org/sr4ld2013 ∈ To be added ∈ ∈ 2 3 7
  • 16. Which technique?  The common problem in designing incremental maintenance techniques is in the management of deletions  In general it is not possible to foresee the statement deletions • DRed works with random insertions and deletions  In our setting it is possible • The window operator allow us to determine when statements will be removed http://streamreasoning.org/sr4ld2013 8
  • 17. IMaRS  Variation of DRed for RDF streams  It pushes the maintenance algorithm in the window operator  An IMaRS window is a sliding window with four parameters: • ω: the size of the window • β: the slide of the window • T: the TBox that describes the data model • M: the mantinance program  One of the central IMaRS concepts is the expiration time http://streamreasoning.org/sr4ld2013 9
  • 18. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization TBOX dom( )⊑ rng( Window (2,1) )⊑ Current time 10 1 S 7 8 http://streamreasoning.org/sr4ld2013 9 t 10 10
  • 19. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization TBOX dom( )⊑ rng( Window (2,1) )⊑ Current time 11 The statement will exit at 13 1 S 8 9 http://streamreasoning.org/sr4ld2013 10 t 11 10
  • 20. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization TBOX Window (2,1) )⊑ dom( 1 )⊑ rng( ∈ The inferred statements will exit at 13 ∈ Current time 11 The statement will exit at 13 1 S 8 9 http://streamreasoning.org/sr4ld2013 10 t 11 10
  • 21. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization TBOX dom( )⊑ rng( Window (2,1) )⊑ 1 ∈ ∈ Current time 12 1 S 9 10 http://streamreasoning.org/sr4ld2013 11 t 12 10
  • 22. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization The inferred TBOX statements expire Window (2,1) dom( )⊑ rng( )⊑ 1 ∈ ∈ Current time 13 1 S 10 11 http://streamreasoning.org/sr4ld2013 12 t 13 10
  • 23. Expiration time  Every time a statement is added to the window, it is annotated with an expiration time  The expiration time indicates when the statement should be removed from the materialization The inferred TBOX statements expire Window (2,1) dom( )⊑ rng( )⊑ Current time 13 1 S 10 11 http://streamreasoning.org/sr4ld2013 12 t 13 10
  • 24. Expiration time generation  At each window update Expiration time update Statement deletion Inferred statements Explicit statements  The computation is done through the execution of a maintenance program http://streamreasoning.org/sr4ld2013 To be added To be removed To be renewed Expiration time assignment Expiration time assignment 11
  • 25. IMaRS at a glance DRed IMaRS Delete Lookup Rederive Insert + Renew Insert http://streamreasoning.org/sr4ld2013 25
  • 26. IMaRS maintenance program  The maintenance program computes the delta sets ∆− and ∆+ • It is a logic program  The program is executed every time the content changes • In our context, the program is executed every time the window slides  The program is composed by maintenance rules • A maintenance rule adds a statement in a set (context) if the preconditions are satisfied http://streamreasoning.org/sr4ld2013 13
  • 27. IMaRS contexts  The maintenance program uses four contexts to build the delta sets ∆− and ∆+ • Mat: the current materialization • Ins: the input that enters the stream and the related inferred statements  Additionally, two support sets are used: • New: statements to be added to the materialization • Ren: renewed statements  The new materialization is computed as Mat U http://streamreasoning.org/sr4ld2013 ∆+ ∆− 14
  • 28. IMaRS maintenance rules  Two examples of maintenance rules: Δ-(?s,?p,?o)[e] Mat(?s,?p,?o)[e] . e < now A triple is removed by the materialization when its expiration time expires Ins(?x,?p,?z)[e] New(?x,?p,?y)[e1]. Ins(?x,?p,?y)[e2] . Ins(?p,isA,TransitiveProperty)[e3]. e=min{e1,e2,e3} When a triple <s,p,o> enters the window, p is transitive and there is a triple <o,p,k> in the Ins context, then the triple <s,p,k> is a candidate for the addition in the materialization http://streamreasoning.org/sr4ld2013 15
  • 29. IMaRS maintenance program  The maintenance program is composed by two sets of maintenance rules: • One set of fixed maintenance rules • One dependent on the ontological language  The ontological language should be expressed as a set of inference rules, e.g. T(?x, ?p, ?z) :T(?p, rdf:type, owl:TransitiveProperty), T(?x, ?p, ?y), T(?y, ?p, ?z)  It does not depend on the TBox! http://streamreasoning.org/sr4ld2013 16
  • 30. Generation of the maintenance program Rewriting functions Maintenance program generator Ontological language Maintenance program TBox IMaRS Window (ω, β) http://streamreasoning.org/sr4ld2013 30
  • 31. Example: DRed 2 1 TBOX tr( Window (3,1) ) Current time 11 2 S 7 8 http://streamreasoning.org/sr4ld2013 9 1 t 10 18
  • 32. Example: DRed 2 1 3 4 TBOX tr( Window (3,1) ) Current time 12 3 1 3 4 2 S 8 9 http://streamreasoning.org/sr4ld2013 2 1 1 10 t 11 18
  • 33. Example: DRed 2 1 3 4 TBOX tr( Window (3,1) ) Current time 13 3 3 2 S 1 2 1 3 4 9 10 http://streamreasoning.org/sr4ld2013 4 1 11 t 12 18
  • 34. Example: DRed 2 1 3 4 TBOX tr( Window (3,1) ) Current time 14 3 3 3 S 2 4 2 1 4 10 1 1 11 http://streamreasoning.org/sr4ld2013 12 t 13 18
  • 35. Example: DRed Delete 2 1 3 4 TBOX tr( Window (3,1) ) Current time 14 3 3 3 S 2 4 2 1 4 10 1 1 11 http://streamreasoning.org/sr4ld2013 12 t 13 18
  • 36. Example: DRed Delete 2 1 3 4 TBOX tr( Window (3,1) ) Current time 14 3 3 3 S 2 4 2 1 4 10 1 1 11 http://streamreasoning.org/sr4ld2013 12 t 13 18
  • 37. Example: DRed Delete 2 1 3 Rederive 4 TBOX tr( Window (3,1) ) Current time 14 3 3 3 S 2 4 2 1 4 10 1 1 11 http://streamreasoning.org/sr4ld2013 12 t 13 18
  • 38. Example: IMaRS 2 1 TBOX tr( Window (3,1) ) Current time 11 2 S 7 8 http://streamreasoning.org/sr4ld2013 9 1 t 10 19
  • 39. Example: IMaRS 2 1 3 4 TBOX tr( Window (3,1) ) Current time 12 3 1 3 4 2 S 8 9 http://streamreasoning.org/sr4ld2013 2 1 1 10 t 11 19
  • 40. Example: IMaRS 2 1 3 4 TBOX tr( Window (3,1) ) Current time 13 3 3 2 S 1 2 1 3 4 9 10 http://streamreasoning.org/sr4ld2013 4 1 11 t 12 19
  • 41. Example: IMaRS 2 1 3 4 TBOX tr( Window (3,1) ) Current time 13 3 3 2 S 1 2 1 3 4 9 10 http://streamreasoning.org/sr4ld2013 4 1 11 t 12 19
  • 42. Example: IMaRS 2 1 3 4 TBOX tr( Window (3,1) ) Current time 13 3 3 2 S 1 2 1 3 4 9 10 http://streamreasoning.org/sr4ld2013 4 1 11 t 12 19
  • 43. Example: IMaRS 2 1 3 4 TBOX tr( Window (3,1) ) Current time 14 3 3 3 S 2 4 2 1 4 10 1 1 11 http://streamreasoning.org/sr4ld2013 12 t 13 19
  • 44. Stream Reasoning For Linked Data M. Balduini, J-P Calbimonte, O. Corcho, D. Dell'Aglio, E. Della Valle, and J.Z. Pan http://streamreasoning.org/sr4ld2013 IMaRS: Incremental Materialization for RDF Streams Daniele Dell'Aglio – daniele.dellaglio@polimi.it Emanuele Della Valle – emanuele.dellavalle@polimi.it