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 Naive reasoning on RDF streams Emanuele Della Valle emanuele.dellavalle@polimi.it http://emanueledellavalle.org
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/ 2 http://streamreasoning.org/sr4ld2013
Agenda § Forms of reasoning for Q/A § Naïve forms of stream reasoning for Q/A § A not so naïve form of stream reasoning for Q/A § Wrap up 3 http://streamreasoning.org/sr4ld2013
MEMO: forms of reasoning for Q/A Data-driven (a.k.a. forward reasoning) § RDF Inferred Reasoner SPARQL data data ontology Query-driven – backward reasoning § RDF Reasoner SPARQL data ontology Query-driven – query rewriting (a.k.a. ontology based data access) § Rewritten SPARQL Reasoner data query ontology 4 http://streamreasoning.org/sr4ld2013
Naïve Stream Reasoning Data-driven (a.k.a. forward reasoning) § RDF Inferred S2R Reasoner SPARQL data data ontology Query-driven – backward reasoning § RDF S2R Reasoner SPARQL data ontology Query-driven – query rewriting (a.k.a. ontology based data access) § Rewritten SPARQL Reasoner data S2R query ontology 5 http://streamreasoning.org/sr4ld2013
Example of Stream Reasoning 1/2 § Query: measure the the impact of Alice's microposts MEMO: our running example data model Post discusses § For example Bob posts p 2 . discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ discusses ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ discusses ¡ p 6 ¡ Alice posts p 1 . 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 6 http://streamreasoning.org/sr4ld2013
Example of Stream Reasoning 2/2 What impact has been my micropost p 1 creating in the last hour? Let’s count the number of microposts that discuss it … REGISTER STREAM ImpactMeter AS SELECT (count(?p) AS ?impact) FROM STREAM <http://…/fb> [RANGE 60m STEP 10m] WHERE { :Alice posts [ sr:discusses ?p ] } discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ Transitive property discusses ¡ discusses ¡ discusses ¡ 7! p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ Alice posts p 1 . p 6 ¡ discusses ¡ 7 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 0 ontology p 1 ¡ now ¡ 8 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 1 ontology p 2 ¡ discusses ¡ p 1 ¡ 10 ¡min ¡ago ¡ now ¡ 9 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 2 ontology p 2 ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 10 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 3 ontology discusses ¡ p 2 ¡ p 4 ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 11 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 5 ontology The entire discusses ¡ p 2 ¡ p 4 ¡ inference process discusses ¡ is repeated each time the SR2 discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ operator delivers new RDF data discusses ¡ p 6 ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ now ¡ 12 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 7 ontology discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ discusses ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ discusses ¡ p 6 ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 13 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 7 ontology discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ discusses ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ p 6 ¡ discusses ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 14 http://streamreasoning.org/sr4ld2013
Naïve data-driven stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 0 ontology The reasoner discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ infers data that is irrelevant to query answering discusses ¡ discusses ¡ p 3 ¡ p 5 ¡ p 8 ¡ discusses ¡ p 6 ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 15 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF S2R Reasoner SPARQL data 0 ontology p 1 ¡ now ¡ 16 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 1 ontology p 2 ¡ discusses ¡ p 1 ¡ 10 ¡min ¡ago ¡ now ¡ 17 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 2 ontology p 2 ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 18 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 3 ontology discusses ¡ p 2 ¡ p 4 ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 19 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 5 ontology The entire discusses ¡ p 2 ¡ p 4 ¡ inference process discusses ¡ is repeated each time the SR2 discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ operator delivers new RDF data discusses ¡ p 6 ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ now ¡ 20 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 7 ontology discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ discusses ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ discusses ¡ p 6 ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 21 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 7 ontology discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ discusses ¡ discusses ¡ discusses ¡ discusses ¡ p 1 ¡ p 3 ¡ p 5 ¡ p 8 ¡ p 6 ¡ discusses ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 22 http://streamreasoning.org/sr4ld2013
Naïve query-driven (backward) stream reasoning § Memo RDF Inferred S2R Reasoner SPARQL data data 0 ontology The backward discusses ¡ discusses ¡ p 2 ¡ p 4 ¡ p 7 ¡ reasoner would not even start! discusses ¡ discusses ¡ p 3 ¡ p 5 ¡ p 8 ¡ discusses ¡ p 6 ¡ 50 ¡min ¡ago ¡ 40 ¡min ¡ago ¡ 30 ¡min ¡ago ¡ 20 ¡min ¡ago ¡ 10 ¡min ¡ago ¡ now ¡ 23 http://streamreasoning.org/sr4ld2013
Naïve query-driven stream reasoning by query rewriting § MEMO Rewritten SPARQL Reasoner data S2R query ontology § It is not that straight forward :-( • Lack of a standard query language for DSMS and CEP • Lack of a well-understood operational semantics for DSMS and CEP (cf. SECRET by I. Botan et al., PVLDB 3(1), 2010) • Lack of expressiveness in OWL2QL – Temporal reasoning – Aggregates – Functions 24 http://streamreasoning.org/sr4ld2013
Recommend
More recommend