Stream Reasoning : Where We Got So Far

2,501 views

Published on

The presentation I gave at NeFoRS'10 colocated with ESWC 2010 in Heraklion, Greece, on May 31st, 2010

Published in: Education, Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,501
On SlideShare
0
From Embeds
0
Number of Embeds
55
Actions
Shares
0
Downloads
69
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Service-Finder
  • Stream Reasoning : Where We Got So Far

    1. 1. Stream Reasoning Where We Got So Far http://streamreasoning.org Emanuele Della Valle DEI - Politecnico di Milano [email_address] http://emanueledellavalle.org Joint work with: Davide Francesco Barbieri, Daniele Braga, Stefano Ceri, and Michael Grossniklaus
    2. 2. Agenda <ul><li>Motivation </li></ul><ul><li>Background </li></ul><ul><li>Concept </li></ul><ul><li>Running Example </li></ul><ul><li>Achievements </li></ul><ul><li>Retrospective and Conclusions </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    3. 3. Motivation It‘s a streaming World! [IEEE-IS2009] <ul><li>Sensor networks, … </li></ul><ul><li>traffic engineering, … </li></ul><ul><li>social networking, … </li></ul><ul><li>financial markets, … </li></ul><ul><li>generate streams! </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    4. 4. Motivation Questions People are Asking <ul><li>Given this brand of turbine, what is the expected time to failure when the barring starts to vibrate as now detected? </li></ul><ul><li>Is a traffic jam going to happen in this highway? And is then convenient to reallocate travelers based upon the forecast?” </li></ul><ul><li>Who are the opinion makers? i.e., the users who are likely to influence the behavior of other users who follow them </li></ul><ul><li>In the financial context, can we detect any intraday correlation clusters among stock exchange?  </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    5. 5. Motivation Problem Statement <ul><li>Making sense </li></ul><ul><ul><li>in real time </li></ul></ul><ul><ul><li>of gigantic and inevitably noisy data streams </li></ul></ul><ul><ul><li>in order to support the decision process of extremely large numbers of concurrent users </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    6. 6. Background What are data streams anyway? <ul><li>Formally: </li></ul><ul><ul><li>Data streams are unbounded sequences of time-varying data elements </li></ul></ul><ul><li>Less formally: </li></ul><ul><ul><li>an (almost) “continuous” flow of information </li></ul></ul><ul><ul><li>with the recent information being more relevant as it describes the current state of a dynamic system </li></ul></ul>time NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    7. 7. Background Can the Semantic Web process data stream? <ul><li>The Semantic Web, the Web of Data is doing fine </li></ul><ul><ul><li>RDF, RDF Schema, SPARQL, OWL, DL </li></ul></ul><ul><ul><li>well understood theory, </li></ul></ul><ul><ul><li>rapid increase in scalability </li></ul></ul><ul><li>BUT it pretends that the world is static or at best a low change rate both in change-volume and change-frequency </li></ul><ul><ul><li>ontology versioning </li></ul></ul><ul><ul><li>belief revision </li></ul></ul><ul><ul><li>time stamps on named graphs </li></ul></ul><ul><li>It sticks to the traditional one-time semantics </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    8. 8. Background Continuous Semantics <ul><li>Processing data streams in the space of one-time semantics is difficult because of the very nature of the underlying data </li></ul><ul><li>Innovative * assumption: continuous semantics! </li></ul><ul><ul><li>streams can be consumed on the fly rather than being stored forever and </li></ul></ul><ul><ul><li>queries are registered and continuously produce answers </li></ul></ul><ul><li>* This innovation arose in DB community in ’90s </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    9. 9. Background Stream Processing <ul><li>Continuous queries registered over streams that are observed trough windows </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 window input stream stream of answer Registered Continuous Query
    10. 10. Background Key Optimization in Stream Processing <ul><li>When a continuous query is registered, generate a query execution plan </li></ul><ul><ul><li>New plan merged with existing plans </li></ul></ul><ul><ul><li>Global scheduler for plan execution maximizing experience gathered with previous queries. </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    11. 11. Background Data Stream Management Systems (DSMS) <ul><li>Research Prototypes </li></ul><ul><ul><li>Amazon/Cougar (Cornell) – sensors </li></ul></ul><ul><ul><li>Aurora (Brown/MIT) – sensor monitoring, dataflow </li></ul></ul><ul><ul><li>Gigascope: AT&T Labs – Network Monitoring </li></ul></ul><ul><ul><li>Hancock (AT&T) – Telecom streams </li></ul></ul><ul><ul><li>Niagara (OGI/Wisconsin) – Internet DBs & XML </li></ul></ul><ul><ul><li>OpenCQ (Georgia) – triggers, view maintenance </li></ul></ul><ul><ul><li>Stream (Stanford) – general-purpose DSMS </li></ul></ul><ul><ul><li>Stream Mill (UCLA) - power & extensibility </li></ul></ul><ul><ul><li>Tapestry (Xerox) – publish/subscribe filtering </li></ul></ul><ul><ul><li>Telegraph (Berkeley) – adaptive engine for sensors </li></ul></ul><ul><ul><li>Tribeca (Bellcore) – network monitoring </li></ul></ul><ul><li>High-tech startups </li></ul><ul><ul><li>Streambase, Coral8, Apama, Truviso </li></ul></ul><ul><li>Major DBMS vendors are all adding stream extensions as well </li></ul><ul><ul><li>Oracle http://www.oracle.com/technology/products/dataint/htdocs/streams_fo.html </li></ul></ul><ul><ul><li>DB2 http://www.eweek.com/c/a/Database/IBM-DB2-Turns-25-and-Prepares-for-New-Life/ </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    12. 12. Concept Stream Reasoning [IEEE-IS2010, Dagstuhl2010] <ul><li>Idea origination </li></ul><ul><ul><li>Can continuous semantics be ported to reasoning? </li></ul></ul><ul><ul><li>This is an unexplored yet high impact research area! </li></ul></ul><ul><li>Stream Reasoning </li></ul><ul><ul><li>Logical reasoning in real time on gigantic and inevitably noisy data streams in order to support the decision process of extremely large numbers of concurrent users. </li></ul></ul><ul><ul><li>-- S. Ceri , E. Della Valle , F. van Harmelen and H. Stuckenschmidt , 2010 </li></ul></ul><ul><li>Note: making sense of streams necessarily requires processing them against rich background knowledge </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    13. 13. Concept Research Challenges <ul><li>Relation with data-stream systems </li></ul><ul><ul><li>Just as RDF relates to data-base systems? </li></ul></ul><ul><li>Query languages for semantic streams </li></ul><ul><ul><li>Just as SPARQL for RDF but with continuous semantics? </li></ul></ul><ul><li>Reasoning on Streams </li></ul><ul><ul><li>Formal representations for stream reasoning </li></ul></ul><ul><ul><ul><li>Active Logic? Step Logic? Temporal Logic? None of them? </li></ul></ul></ul><ul><ul><li>Notions of soundness and completeness </li></ul></ul><ul><ul><ul><li>How to define these on windows? </li></ul></ul></ul><ul><ul><li>Efficient incremental updates of deductive closures? </li></ul></ul><ul><ul><li>How to combine streams and background knowledge? </li></ul></ul><ul><li>Dealing with incomplete & noisy data </li></ul><ul><ul><li>Even more so than on the current Web of Data </li></ul></ul><ul><li>Distributed and parallel processing </li></ul><ul><ul><li>Streams are parallel in nature </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    14. 14. Concept Engineering challenges <ul><li>Software architectures </li></ul><ul><li>Integration with existing systems </li></ul><ul><li>Optimization and scalability </li></ul><ul><li>Real-time computations </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    15. 15. Concept Evaluation and Success Criteria <ul><li>An early attempt </li></ul><ul><ul><li>-- S. Ceri , E. Della Valle , F. van Harmelen , Ralf Möller and H. Stuckenschmidt , 2009 </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 Efficiency Criterion Querying Answering Complex Inference Nr. of streams 10s of streams 10s of streams Speed per stream (assertions/second a/t) 1000s a/t 10s a/t Nr. of registered queries 100s of queries 100s of queries Response Latency 10s of milliseconds 1000s of milliseconds
    16. 16. Running Example Real-Time Streams on the Web <ul><li>Streams are appearing more and more often on the Web in sites that distribute and present information in real-time streams. </li></ul><ul><li>Checkout http://activitystrea.ms/ for a standard API </li></ul><ul><li>E.g. </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 Emanuele Della Valle - visit http://streamreasoning.org LDOW2010 @ WWW 2010, Raleigh, North Carolina, April 27th, 2010
    17. 17. Running Example Example of Questions Users are Asking <ul><li>What are the hottest topics under discussion on Twitter? </li></ul><ul><li>Which topics have my close friends discussed in the last hour? </li></ul><ul><li>Who is discussing about Italian food in northern Italy right now? </li></ul><ul><li>Which movie is my friend likely to watch next? </li></ul><ul><li>Which Tuscany red wine should I recommend to one of my friends? </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    18. 18. Running Example Real Social Media Stream Data: Glue NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    19. 19. Running Example Glue Data Model as an Ontology NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 URL rdfs : label skos : subject owl : sameAs Object Resource links describes URL foaf : name User sioc : follows foaf : knows accesses likes dislikes data stream background knowledge URL rdfs : label
    20. 20. Achievements Stream Reasoner Inputs and Outputs NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    21. 21. Achievements Explored Continuous Semantics for SeWeb <ul><li>We gave up one-time semantics in Semantic Web and explored the benefits provided by continuous semantics when dealing with streams </li></ul><ul><li>We investigated </li></ul><ul><ul><li>Architecture of a Simple Stream Reasoner </li></ul></ul><ul><ul><li>RDF streams </li></ul></ul><ul><ul><ul><li>the natural extension of the RDF data model to the new continuous scenario and </li></ul></ul></ul><ul><ul><li>Continuous SPARQL (or simply C-SPARQL ) </li></ul></ul><ul><ul><ul><li>the extension of SPARQL for querying RDF streams. </li></ul></ul></ul><ul><ul><li>Efficient incremental updates of deductive closures </li></ul></ul><ul><ul><ul><li>specifically considering the nature of data streams </li></ul></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    22. 22. Achievements Architecture of our Simple Stream Reasoner <ul><li>Based on the LarKC conceptual framework </li></ul><ul><li>http://www.larkc.eu </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 Select Abstract Reason Streamed Input Window Content RDF Streams Answers Streams Window RDF Graphs
    23. 23. Achievements RDF Stream [WWW2009,EDBT2010] <ul><li>RDF Stream Data Type </li></ul><ul><ul><li>Ordered sequence of pairs, where each pair is made of an RDF triple and its timestamp t </li></ul></ul><ul><ul><ul><li>(< triple >, t) </li></ul></ul></ul><ul><li>E.g., </li></ul><ul><ul><li>(<:Giulia :likes :Twilight >, 2010-02-12T13:34:41) </li></ul></ul><ul><ul><li>(<:John :accesses :TheLordOfTheRings >, 2010-02-12T13:36:28) </li></ul></ul><ul><ul><li>(<:Alice :dislikes :Twilight >, 2010-02-12T13:36:28) </li></ul></ul><ul><ul><li>(<:Bob :accesses :Chianti >, 2010-02-12T13:37:18) </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    24. 24. Achievements Windows on RDF Streams <ul><li>RDF streams are intrinsically infinite </li></ul><ul><li>A window extracts the last triples </li></ul><ul><li>The extraction can be </li></ul><ul><ul><li>physical </li></ul></ul><ul><ul><ul><li>a given number of triples </li></ul></ul></ul><ul><ul><li>logical </li></ul></ul><ul><ul><ul><li>a variable number of triples which occur during a given time interval </li></ul></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    25. 25. Achievements Example Window of RDF Stream [SDOW2009] <ul><li>A real source of social semantic data streams </li></ul><ul><ul><li>Source: the Social Network Glue http://getglue.com </li></ul></ul><ul><ul><li>RDF obtained applying GRDDL to XML results of invocation of http://api.getglue.com/v2/glue/recent Glue REST service </li></ul></ul><ul><ul><li>Check out the current content of the window http://c-sparql.cefriel.it/sdow-demo/RDFstream.html </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    26. 26. Achievements C-SPARQL [WWW2009,EDBT2010] <ul><li>We specificied of C-SPARQL syntax </li></ul><ul><ul><li>Incrementally, from existing specifications </li></ul></ul><ul><ul><ul><li>Including windows, grouping, aggregates, timestamping </li></ul></ul></ul><ul><li>We gave the formal semantics of C-SPARQL </li></ul><ul><ul><li>Query registration, handling overloads </li></ul></ul><ul><ul><li>Order of evaluation, pattern matching over time, … </li></ul></ul><ul><li>We investigated efficiency of evaluation </li></ul><ul><ul><li>Defining a suitable algebra </li></ul></ul><ul><ul><li>Applying optimizations </li></ul></ul><ul><ul><li>Efficient materialization of inferred data from streams </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    27. 27. Achievements An Simple Example of C-SPARQL Query <ul><li>What have my closest friends been visiting in the last hour? </li></ul><ul><li>REGISTER QUERY WhatMyFriendsVisitedInTheLastHour AS </li></ul><ul><li>PREFIX sioc: <http://rdfs.org/sioc/ns#> </li></ul><ul><li>PREFIX foaf: <http://xmlns.com/foaf/0.1/> </li></ul><ul><li>PREFIX glue: <http://c-sparql.cefriel.it/sdow-demo/> </li></ul><ul><li>SELECT DISTINCT ?friend ?topic </li></ul><ul><li>FROM <http://c-sparql.cefriel.it/sdow-demo/glueusers.rdf> </li></ul><ul><li>FROM STREAM <http://c-sparql.cefriel.it/sdow-demo/interactions.trdf> </li></ul><ul><li>[ RANGE 60m STEP 5m ] </li></ul><ul><li>WHERE { glue:id1 foaf:knows ?friend . </li></ul><ul><li>?post sioc:has_creator ?friend . </li></ul><ul><li>?post rdf:type sioc:Post . </li></ul><ul><li>?post sioc:topic ?topic . } </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    28. 28. Achievements An Simple Example of C-SPARQL Query <ul><li>What have my closest friends been visiting in the last hour? </li></ul><ul><li>REGISTER QUERY WhatMyFriendsVisitedInTheLastHour AS </li></ul><ul><li>PREFIX sioc: <http://rdfs.org/sioc/ns#> </li></ul><ul><li>PREFIX foaf: <http://xmlns.com/foaf/0.1/> </li></ul><ul><li>PREFIX glue: <http://c-sparql.cefriel.it/sdow-demo/> </li></ul><ul><li>SELECT DISTINCT ?friend ?topic </li></ul><ul><li>FROM <http://c-sparql.cefriel.it/sdow-demo/glueusers.rdf> </li></ul><ul><li>FROM STREAM <http://c-sparql.cefriel.it/sdow-demo/interactions.trdf> </li></ul><ul><li>[ RANGE 60m STEP 5m ] </li></ul><ul><li>WHERE { glue:id1 foaf:knows ?friend . </li></ul><ul><li>?post sioc:has_creator ?friend . </li></ul><ul><li>?post rdf:type sioc:Post . </li></ul><ul><li>?post sioc:topic ?topic . } </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 Triples from a graph Combined with triples from a stream Query registration (for continuous execution) FROM STREAM clause WINDOW
    29. 29. Achievements An Advance Example of C-SPARQL Query <ul><li>Who are the opinion makers? i.e., the users who are likely to influence the behavior of other users who follow them </li></ul><ul><li>REGISTER STREAM OpinionMakers COMPUTED EVERY 5m AS </li></ul><ul><li>CONSTRUCT { ?opinionMaker sd:about ?resource } </li></ul><ul><li>FROM STREAM <http://streamingsocialdata.org/interactions> [RANGE 30m STEP 5m] </li></ul><ul><li>WHERE { </li></ul><ul><li>?opinionMaker ?opinion ?resource . </li></ul><ul><li>?follower sioc:follows ?opinionMaker. </li></ul><ul><li>?follower ?opinion ?resource. </li></ul><ul><li>FILTER ( cs:timestamp (?follower) > cs:timestamp (?opinionMaker) </li></ul><ul><li>&& ?opinion != sd:accesses ) </li></ul><ul><li>} </li></ul><ul><li>HAVING ( COUNT(DISTINCT ?follower) > 3 ) </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    30. 30. Achievements C-SPARQL at Work [SDOW2009] NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 http://c-sparql.cefriel.it/sdow-demo/C-SPARQLquery.html
    31. 31. Achievements Efficiency of Evaluation 1/3 [SDOW2009] <ul><li>Evaluation of Window-based Selection </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    32. 32. Achievements Efficiency of Evaluation 2/3 [EDBT2010] <ul><li>Several transformations can be applied to algebraic representation of C-SPARQL </li></ul><ul><li>some recalling well known results from classical relational optimization </li></ul><ul><ul><li>push of FILTERs and projections </li></ul></ul><ul><li>some being more specific to the domain of streams. </li></ul><ul><ul><li>push of aggregates. </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    33. 33. Achievements Efficiency of Evaluation 3/3 [EDBT2010] <ul><li>Push of filters and projections </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    34. 34. Achievements Example of C-SPARQL and Reasoning 1/2 <ul><li>Who are the movie opinion makers ? </li></ul><ul><li>REGISTER STREAM MovieOpinionMakers COMPUTED EVERY 5m AS </li></ul><ul><li>CONSTRUCT { ?opinionMaker sd:about ?resource } </li></ul><ul><li>FROM STREAM <http://streamingsocialdata.org/interactions> [RANGE 30m STEP 5m] </li></ul><ul><li>WHERE { </li></ul><ul><li>?opinionMaker ?opinion ?resource . </li></ul><ul><li>?opinionMaker a sd:UserOnlyInterestInMovies . </li></ul><ul><li>?follower sioc:follows ?opinionMaker. </li></ul><ul><li>?follower ?opinion ?resource. </li></ul><ul><li>FILTER ( cs:timestamp(?follower) > </li></ul><ul><li>cs:timestamp(?opinionMaker) </li></ul><ul><li>&& ?opinion != sd:accesses ) </li></ul><ul><li>} </li></ul><ul><li>HAVING ( COUNT(DISTINCT ?follower) > 3 ) </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    35. 35. Achievements Example of C-SPARQL and Reasoning 2/2 <ul><li>If we define </li></ul><ul><li>sd:UserOnlyInterestInMovies rdfs:subClassOf sd:User; </li></ul><ul><li>rdfs:subClassOf [ </li></ul><ul><li> a owl:Restriction; </li></ul><ul><li> owl:onProperty sd:likes; </li></ul><ul><li> owl:allValuesFrom yago:Movie; </li></ul><ul><li>] . </li></ul><ul><li>if the current window contains the following triples, </li></ul><ul><li>( <:Giulia sd:likes :Avatar >, 2010-02-12T13:18:05) </li></ul><ul><li>( <:John sd:likes :StarWars >, 2010-02-12T13:36:23) </li></ul><ul><li>( <:John sd:likes :WutheringHeights >, 2010-02-12T13:38:07) </li></ul><ul><li>( <:Giulia sd:likes :AliceInWonderland >, 2010-02-12T13:42:07) </li></ul><ul><li>Giulia is an instance of the class UserOnlyInterestInMovies (i.e., she liked only movies), while John is not (i.e., he liked a movies and a book). </li></ul><ul><ul><li>NOTE: we are using OWL2-RL + Negation As Failure </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    36. 36. Achievements Incremental Reasoning: State-of-the-Art <ul><li>Incremental Maintenance of Materialized Views </li></ul><ul><ul><li>Stefano Ceri, Jennifer Widom: Deriving Incremental Production Rules for Deductive Data. Inf. Syst. 19(6): 467-490 (1994) </li></ul></ul><ul><ul><li>HA Kuno, EA Rundensteiner: Incremental Maintenance of Materialized Object-Oriented Views in MultiView: Strategies and Performance Evaluation. TDKE 1998 </li></ul></ul><ul><ul><li>Raphael Volz, Steffen Staab, Boris Motik: Incrementally Maintaining Materializations of Ontologies Stored in Logic Databases. J. Data Semantics 2: 1-34 (2005) </li></ul></ul><ul><li>Incremental Rule-based Reasoning </li></ul><ul><ul><li>F Fabret, M Regnier, E Simon: An Adaptive Algorithm for Incremental Evaluation of Production Rules in Databases. VLDB 1993 </li></ul></ul><ul><ul><li>B. Berster: Extending the RETE Algorithm for Event Management.TIME’02 </li></ul></ul><ul><li>Incremental DL Reasoning </li></ul><ul><ul><li>Cuenca-Grau et al : History Matters: Incremental Ontology Reasoning Using Modules. ISWC 2007. </li></ul></ul><ul><ul><li>Parsia et al: Towards incremental reasoning through updates in OWL-DL. - Reasoning on the Web-Workshop at WWW-2006 </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    37. 37. Achievements State-of-the-Art Approach [Ceri1994,Volz2005] <ul><li>Overestimation of deletion : Overestimates deletions by computing all direct consequences of a deletion. </li></ul><ul><li>Rederivation : Prunes those estimated deletions for which alternative derivations (via some other facts in the program) exist. </li></ul><ul><li>Insertion : Adds the new derivations that are consequences of insertions to extensional predicates. </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    38. 38. Achievements our approach [ESWC2010] 1/2 <ul><li>Assuption </li></ul><ul><ul><li>Insertions and deletions are triples respectively entering and exiting the window </li></ul></ul><ul><ul><li>The window size is known </li></ul></ul><ul><li>Therefore </li></ul><ul><ul><li>The time when each triple will expire is known and determined by the window size </li></ul></ul><ul><ul><ul><li>E.g. if the window is 10s long a triple entering at time t will exit at time t+10s </li></ul></ul></ul><ul><ul><li>Note: all knowledge can be annotated with an expiration time </li></ul></ul><ul><ul><ul><li>i.e., background knowledge is annotated with +  </li></ul></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    39. 39. Achievements our approach [ESWC2010] 2/2 <ul><li>The algorithm </li></ul><ul><ul><li>computes the entailments derived by the inserts, </li></ul></ul><ul><ul><li>annotates each entailed triple with a expiration time, and </li></ul></ul><ul><ul><li>eliminates from the current state all copies of derived triples except the one with the highest timestamp. </li></ul></ul><ul><li>NOTE: if you like to learn more come to my presentation on 1.6.2010 in Mobility & Sensor Network I session </li></ul><ul><ul><li>http://www.slideshare.net/emanueledellavalle/incremental-reasoning-on-streams-andrich-background-knowledge </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    40. 40. Achievements Comparative Evaluation [ESWC2010] <ul><li>Hypothesis </li></ul><ul><ul><li>Background knowledge do not change and it is materialized </li></ul></ul><ul><ul><li>Changes only take place in the window </li></ul></ul><ul><li>An experiment comparing the time required to compute a new materialization using </li></ul><ul><ul><li>Re-computing from scratch (i.e.,1250 ms in our setting) </li></ul></ul><ul><ul><li>State of the art incremental approach [Volz, 2005] </li></ul></ul><ul><ul><li>Our approach </li></ul></ul><ul><li>Results at increasing % of the triples updated </li></ul><ul><li>. </li></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    41. 41. Retrospective and Conclusions Wrap Up <ul><li>RDF Streams </li></ul><ul><ul><li>Notion defined </li></ul></ul><ul><ul><li>Examples of RDF streams can be easily created </li></ul></ul><ul><ul><ul><li>e.g., http://c-sparql.cefriel.it/sdow-demo/RDFstream.html </li></ul></ul></ul><ul><li>C-SPARQL </li></ul><ul><ul><li>Syntax and semantics defined as a SPARQL extension </li></ul></ul><ul><ul><li>Engine designed </li></ul></ul><ul><ul><li>Engine implemented based on the decision to keep stream management and query evaluation separated </li></ul></ul><ul><li>Experiments with C-SPARQL under simple RDF entailment regimes </li></ul><ul><ul><li>window based selection of C-SPARQL outperforms the standard FILTER based selection </li></ul></ul><ul><ul><li>having formally defined C-SPARQL semantics algebraic optimizations are possible </li></ul></ul><ul><li>Experiment with C-SPARQL under OWL-RL entailment regimes </li></ul><ul><ul><li>efficient incremental updates of deductive closures investigated </li></ul></ul><ul><ul><li>our approach outperform state-of-the-art when updates comes as stream </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    42. 42. Retrospective and Conclusions Achievements vs. Research Challenges <ul><li>Relation with data-stream systems </li></ul><ul><ul><li>Notion of RDF stream :-| </li></ul></ul><ul><li>Query languages for semantic streams </li></ul><ul><ul><li>C-SPARQL :-D </li></ul></ul><ul><li>Reasoning on Streams </li></ul><ul><ul><li>Formal representations for stream reasoning </li></ul></ul><ul><ul><ul><li>:-P </li></ul></ul></ul><ul><ul><li>Notions of soundness and completeness </li></ul></ul><ul><ul><ul><li>:-P </li></ul></ul></ul><ul><ul><li>Efficient incremental updates of deductive closures </li></ul></ul><ul><ul><ul><li>ESWC 2010 paper :-) ... but much more work is needed! </li></ul></ul></ul><ul><ul><li>How to combine streams and background knowledge </li></ul></ul><ul><ul><ul><li>ESWC 2010 paper :-| ... but a lot needs to be studied ... </li></ul></ul></ul><ul><li>Dealing with incomplete & noisy data </li></ul><ul><ul><li>:-P </li></ul></ul><ul><li>Distributed and parallel processing </li></ul><ul><ul><li>:-P </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    43. 43. Retrospective and Conclusions Achievements vs. Engineering challenges <ul><li>Software architectures </li></ul><ul><ul><li>C-SPARQL engine :-| only very preliminary results </li></ul></ul><ul><li>Integration with existing systems </li></ul><ul><ul><li>:-) C-SPARQL prototype based on esper </li></ul></ul><ul><li>Optimization </li></ul><ul><ul><li>:-) EDBT 2010 and ESWC 2010 paper, but still a lot of investigation is possible </li></ul></ul><ul><li>Scalability </li></ul><ul><ul><li>:-D for Query Answering in C-SPARQL under simple RDF entailment regime </li></ul></ul><ul><ul><li>:-| for Query Answering in C-SPARQL under OWL-RL entailment regime </li></ul></ul><ul><ul><li>:-P for Complex Reasoning </li></ul></ul><ul><li>Real-time computations </li></ul><ul><ul><li>:-P </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    44. 44. Retrospective and Conclusions A Key Problem to Investigate [Dagstuhl2010] <ul><li>Reasoning on Data streams has a huge potential impact </li></ul><ul><li>Current Reasoning methods are not suited to work on data with a high change frequency. </li></ul><ul><li>A promising approach? </li></ul><ul><ul><li>-- H. Stuckenschmidt, S. Ceri, E. Della Valle and F. van Harmelen, 2010 </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010 Raw Stream Processing RDF Streams Logic Programs DL Complexity Reasoning Querying Rewriting Abstraction Selection Interpretation Change Frequency PTIME 2NEXPTIME 10 4 Hz 1 Hz Dynamics and Scale vs. Complexity Evolving Knowlege
    45. 45. References (selection) <ul><li>Vision </li></ul><ul><ul><li>[IEEE-IS2009] Emanuele Della Valle, Stefano Ceri, Frank van Harmelen, Dieter Fensel It's a Streaming World! Reasoning upon Rapidly Changing Information . IEEE Intelligent Systems 24(6): 83-89 (2009) bibtex </li></ul></ul><ul><li>Continuous SPARQL (C-SPARQL) </li></ul><ul><ul><li>[EDBT2010] Davide Francesco Barbieri, Daniele Braga, Stefano Ceri and Michael Grossniklaus. An Execution Environment for C-SPARQL Queries . EDBT 2010 </li></ul></ul><ul><ul><li>[WWW2009] Davide Francesco Barbieri, Daniele Braga, Stefano Ceri, Emanuele Della Valle, Michael Grossniklaus: C-SPARQL: SPARQL for continuous querying . WWW 2009: 1061-1062 bibtex </li></ul></ul><ul><ul><li>[SDOW2009] Davide Francesco Barbieri, Daniele Braga, Stefano Ceri and Emanuele Della Valle and Michael Grossniklaus, Continuous Queries and Real-time Analysis of Social Semantic Data with C-SPARQL , in SDoW 2009 Colocated with ISWC 2009. bibtex </li></ul></ul><ul><li>Stream Reasoning </li></ul><ul><ul><li>[ESWC2010] Davide Francesco Barbieri, Daniele Braga, Stefano Ceri, Emanuele Della Valle, Michael Grossniklaus. Incremental Reasoning on Streams and Rich Background Knowledge. In. 7th Extended Semantic Web Conference (ESWC 2010) </li></ul></ul><ul><ul><li>[Dagstuhl2010] Heiner Stuckenschmidt, Stefano Ceri, Emanuele Della Valle and Frank van Harmelen. Towards Expressive Stream Reasoning. Proceedings of the Dagstuhl Seminar on Semantic Aspects of Sensor Networks, 2010. </li></ul></ul>NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010
    46. 46. Thank You! Questions? Much More to Come! Keep an eye on http://www.streamreasoning.org NeFoRS'10 @ ESWC 2010, Heraklion, Greece, May 31st, 2010

    ×