SlideShare a Scribd company logo
1 of 10
Download to read offline
HPPS project work: Semantic Data Box

                G. Orsi

           Computing Laboratory
             Oxford University


            March 2, 2011
Introduction
Ontology-Based Data Access (OBDA)
  • New type of database management systems (DBMS) combining classic
     databases with advanced reasoning and query processing capabilities.
  • Marriage of ontologies and databases is a rich commercial opportunity:
        •   Oracle Spatial 11g Semantic Technologies
        •   IBM IODT
        •   Data-Grid Inc.
        •   Ontotext BigOWLLim
  • and source of many research papers and systems:
        •   QuOnto
        •   Pellet
        •   Presto
        •   Requiem
        •   IRIS±
Databases and constraints
Query answering under constraints
   • In OBDA, an extensional relational database D is combined with a set of
     ontological constraints Σ.
   • A query Q is then answered against D ∪ Σ instead of D only.

The chase
   • Answering a query Q over D ∪ Σ has been shown to be equivalent to answer Q
     over the chase expansion of D w.r.t. Σ.
   • The expansion chase(D, Σ) can be obtained through the well-known chase
     procedure.
   • whenever the chase procedure does not fail, the chase(D, Σ) is a universal
     model for Σ and can be used to answer Q.
Example: the chase

weakly-acyclic constraints                   chase expansion
 R:    {teaches,professor,student}            D:           professor(santa)
                                                           teaches(giorgio,cheng)
 Σ:    σ1 : professor(X) → ∃Z teaches(X,Z)
       σ2 : teaches(X,Y) → student(Y)         Q=           ∅

 Q:    q(A) ← teaches(A,B),student(B)
                                              apply σ1 :   teaches(santa, z0 )
 D:    professor(santa)                       apply σ2 :   student(z0 )
       teaches(giorgio,cheng)                              student(cheng)


                                              Q=           {santa,giorgio}
Databases and constraints (cont.)

so... where is the problem?                         chase expansion
Critical issue: chase(D, Σ) might be infinite         D:           person(santa)
                                                                  father(roberto,giorgio)
also for a very simple Σ.
                                                     Q=           person(santa)
 R:    {person,father}

 Σ:    σ1 : person(X) → ∃Y father(Y,X), person(Y)    apply σ1 :   person(roberto)
                                                                  father(z0 ,santa)
 Q:    q(A) ← person(A)                                           father(z1 ,roberto)
                                                                  person(z0 )
 D:    person(santa)                                              person(z1 )
       father(roberto,giorgio)                                    father(z2 ,z0 )
                                                                  father(z3 ,z1 )
                                                                  ...


                                                     Q=           ?
Answering queries when the chase is infinite
The bounded derivation depth (BDD) property
   • Johnson and Klug proved that it is possible to answer the queries even when the
      chase is infinite if we know that all the needed tuples can be produced in a finite
      initial fragment of chase(D, Σ).
   • query answering under a set Σ enjoys the BDD property if given a query Q it is
      possible to compute the chase up to k steps (chasek (D, Σ)) and:
         • chasek (D, Σ) |= Q iff chase(D, Σ) |= Q iff D ∪ Σ |= Q
         • k depends only on Q and Σ.
   • All the Σs with the BDD property enjoy also the property of FO-rewritability.

the first-order rewritability property
   • A set of constraints Σ is first-order rewritable (FO-Rewritable) if, given a query
      Q, there exists a first-order query QΣ (the reformulation of Q) such that
      D ∪ Σ |= Q iff D |= QΣ for any database D.
   • The reformulated query does not depend on the size of D!
   • Answer QΣ over D, instead of Q over chase(D, Σ).
Chase vs Rewriting




Example                                            Rewriting
 R:   {person,father}                               D:         person(santa)
                                                               father(roberto,giorgio)
 Σ:   σ1 : person(X) → ∃Y father(Y,X), person(Y)
                                                    Q=         person(santa)
 Q:   q(A) ← person(A)

 D:   person(santa)                                 use σ1 :   q(A) ← person(A)
      father(roberto,giorgio)                                  q(A) ← father(A,B)


                                                    Q=         {santa,roberto}
The hard(ware) part...
Size of the rewriting
   • QΣ as the form of a union of conjunctive queries (UCQs), i.e.,


                           select a,b from R1,R2 where cond1
                                         UNION
                           select a,b from R1,R2 where cond2
                                         UNION
                                          ...
                                         UNION
                           select a,b from R1,R2 where condn



   • Johnson and Klug forgot to mention that the number of queries in QΣ is
      exponential in the number of atoms of Q and in the size of Σ
   • we have two ways to go:
       1. generate another form of rewriting instead of UCQs (e.g., Datalog
            queries) to eliminate at least the exponentiality in Σ → no more good
            properties of UCQs :-(
        2. go brute-force in hardware :-)
The hard(ware) part...
In-hardware databases (e.g., Glacier)
   •   Starting from a query Q and a set of constraints Σ
   •   reformulate the query in software and generate a query plan
   •   synthesize the query plan in hardware
   •   execute the queries in hardware




         Figure: Glacier: A query-to-hardware compiler (SIGMOD 2010)
Problems
Reconfigurability
   •   Current approaches implement in hardware the general SQL operators.
   •   if we synthesize the reformulation we go faster than ever!
   •   but...
   •   every time the query changes, the reformulation changes
   •   does reconfigurability help?

More Related Content

What's hot

Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)
Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)
Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)Yandex
 
Reflect tsukuba524
Reflect tsukuba524Reflect tsukuba524
Reflect tsukuba524kazuhase2011
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
On gradient Ricci solitons
On gradient Ricci solitonsOn gradient Ricci solitons
On gradient Ricci solitonsmnlfdzlpz
 
11.on generalized dislocated quasi metrics
11.on generalized dislocated quasi metrics11.on generalized dislocated quasi metrics
11.on generalized dislocated quasi metricsAlexander Decker
 
On generalized dislocated quasi metrics
On generalized dislocated quasi metricsOn generalized dislocated quasi metrics
On generalized dislocated quasi metricsAlexander Decker
 
R. Jimenez - Fundamental Physics from Astronomical Observations
R. Jimenez - Fundamental Physics from Astronomical ObservationsR. Jimenez - Fundamental Physics from Astronomical Observations
R. Jimenez - Fundamental Physics from Astronomical ObservationsSEENET-MTP
 
Signal Processing Course : Sparse Regularization of Inverse Problems
Signal Processing Course : Sparse Regularization of Inverse ProblemsSignal Processing Course : Sparse Regularization of Inverse Problems
Signal Processing Course : Sparse Regularization of Inverse ProblemsGabriel Peyré
 

What's hot (11)

Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)
Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)
Maksim Zhukovskii – Zero-one k-laws for G(n,n−α)
 
Reflect tsukuba524
Reflect tsukuba524Reflect tsukuba524
Reflect tsukuba524
 
Lista exercintegrais
Lista exercintegraisLista exercintegrais
Lista exercintegrais
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
On gradient Ricci solitons
On gradient Ricci solitonsOn gradient Ricci solitons
On gradient Ricci solitons
 
11.on generalized dislocated quasi metrics
11.on generalized dislocated quasi metrics11.on generalized dislocated quasi metrics
11.on generalized dislocated quasi metrics
 
On generalized dislocated quasi metrics
On generalized dislocated quasi metricsOn generalized dislocated quasi metrics
On generalized dislocated quasi metrics
 
R. Jimenez - Fundamental Physics from Astronomical Observations
R. Jimenez - Fundamental Physics from Astronomical ObservationsR. Jimenez - Fundamental Physics from Astronomical Observations
R. Jimenez - Fundamental Physics from Astronomical Observations
 
Signal Processing Course : Sparse Regularization of Inverse Problems
Signal Processing Course : Sparse Regularization of Inverse ProblemsSignal Processing Course : Sparse Regularization of Inverse Problems
Signal Processing Course : Sparse Regularization of Inverse Problems
 
20 prolog5
20 prolog520 prolog5
20 prolog5
 
SSA slides
SSA slidesSSA slides
SSA slides
 

Viewers also liked

ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014
ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014
ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014Giorgio Orsi
 
Invited Iceis Tanca Orsi
Invited Iceis Tanca OrsiInvited Iceis Tanca Orsi
Invited Iceis Tanca OrsiGiorgio Orsi
 
SAE: Structured Aspect Extraction
SAE: Structured Aspect ExtractionSAE: Structured Aspect Extraction
SAE: Structured Aspect ExtractionGiorgio Orsi
 
Web Data Extraction Como2010
Web Data Extraction Como2010Web Data Extraction Como2010
Web Data Extraction Como2010Giorgio Orsi
 
Joint Repairs for Web Wrappers
Joint Repairs for Web WrappersJoint Repairs for Web Wrappers
Joint Repairs for Web WrappersGiorgio Orsi
 

Viewers also liked (8)

ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014
ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014
ROSeAnn: Reconciling Opinions of Semantic Annotators VLDB 2014
 
SAFE EDBT 2011
SAFE EDBT 2011SAFE EDBT 2011
SAFE EDBT 2011
 
Invited Iceis Tanca Orsi
Invited Iceis Tanca OrsiInvited Iceis Tanca Orsi
Invited Iceis Tanca Orsi
 
Orsi PersDB11
Orsi PersDB11Orsi PersDB11
Orsi PersDB11
 
SAE: Structured Aspect Extraction
SAE: Structured Aspect ExtractionSAE: Structured Aspect Extraction
SAE: Structured Aspect Extraction
 
Table Recognition
Table RecognitionTable Recognition
Table Recognition
 
Web Data Extraction Como2010
Web Data Extraction Como2010Web Data Extraction Como2010
Web Data Extraction Como2010
 
Joint Repairs for Web Wrappers
Joint Repairs for Web WrappersJoint Repairs for Web Wrappers
Joint Repairs for Web Wrappers
 

Similar to Semantic Data Box

Truth, deduction, computation lecture c
Truth, deduction, computation   lecture cTruth, deduction, computation   lecture c
Truth, deduction, computation lecture cVlad Patryshev
 
Sensors and Samples: A Homological Approach
Sensors and Samples:  A Homological ApproachSensors and Samples:  A Homological Approach
Sensors and Samples: A Homological ApproachDon Sheehy
 
Query Rewriting and Optimization for Ontological Databases
Query Rewriting and Optimization for Ontological DatabasesQuery Rewriting and Optimization for Ontological Databases
Query Rewriting and Optimization for Ontological DatabasesGiorgio Orsi
 
Collision Detection In 3D Environments
Collision Detection In 3D EnvironmentsCollision Detection In 3D Environments
Collision Detection In 3D EnvironmentsUng-Su Lee
 
Provenance in Databases and Scientific Workflows: Part II (Databases)
Provenance in Databases and Scientific Workflows: Part II (Databases)Provenance in Databases and Scientific Workflows: Part II (Databases)
Provenance in Databases and Scientific Workflows: Part II (Databases)Bertram Ludäscher
 
555_Spring12_topic06.ppt
555_Spring12_topic06.ppt555_Spring12_topic06.ppt
555_Spring12_topic06.pptSnehSinha6
 
cloud computing training in chennai
cloud computing training in chennaicloud computing training in chennai
cloud computing training in chennaimatrixphagwara
 
6months industrial training in artificial intelligence, jalandhar
6months industrial training in artificial intelligence, jalandhar6months industrial training in artificial intelligence, jalandhar
6months industrial training in artificial intelligence, jalandhardeepikakaler1
 
6 weeks summer training in artificial intelligence,jalandhar
6 weeks summer training in artificial intelligence,jalandhar6 weeks summer training in artificial intelligence,jalandhar
6 weeks summer training in artificial intelligence,jalandhardeepikakaler1
 
cloud computing training in Bathinda
cloud  computing training in Bathinda cloud  computing training in Bathinda
cloud computing training in Bathinda matrixphagwara
 
cloud computing training in delhi
cloud computing training in delhicloud computing training in delhi
cloud computing training in delhimatrixphagwara
 
L03 ai - knowledge representation using logic
L03 ai - knowledge representation using logicL03 ai - knowledge representation using logic
L03 ai - knowledge representation using logicManjula V
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebracseiitgn
 
Exchanging More than Complete Data
Exchanging More than Complete DataExchanging More than Complete Data
Exchanging More than Complete Datanet2-project
 
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie Algebras
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie AlgebrasT. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie Algebras
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie AlgebrasSEENET-MTP
 
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1Stavros Vassos
 

Similar to Semantic Data Box (20)

Crypto lecture PDF
Crypto lecture PDFCrypto lecture PDF
Crypto lecture PDF
 
Truth, deduction, computation lecture c
Truth, deduction, computation   lecture cTruth, deduction, computation   lecture c
Truth, deduction, computation lecture c
 
Sensors and Samples: A Homological Approach
Sensors and Samples:  A Homological ApproachSensors and Samples:  A Homological Approach
Sensors and Samples: A Homological Approach
 
Gottlob ICDE 2011
Gottlob ICDE 2011Gottlob ICDE 2011
Gottlob ICDE 2011
 
Query Rewriting and Optimization for Ontological Databases
Query Rewriting and Optimization for Ontological DatabasesQuery Rewriting and Optimization for Ontological Databases
Query Rewriting and Optimization for Ontological Databases
 
Collision Detection In 3D Environments
Collision Detection In 3D EnvironmentsCollision Detection In 3D Environments
Collision Detection In 3D Environments
 
Provenance in Databases and Scientific Workflows: Part II (Databases)
Provenance in Databases and Scientific Workflows: Part II (Databases)Provenance in Databases and Scientific Workflows: Part II (Databases)
Provenance in Databases and Scientific Workflows: Part II (Databases)
 
555_Spring12_topic06.ppt
555_Spring12_topic06.ppt555_Spring12_topic06.ppt
555_Spring12_topic06.ppt
 
cloud computing training in chennai
cloud computing training in chennaicloud computing training in chennai
cloud computing training in chennai
 
6months industrial training in artificial intelligence, jalandhar
6months industrial training in artificial intelligence, jalandhar6months industrial training in artificial intelligence, jalandhar
6months industrial training in artificial intelligence, jalandhar
 
6 weeks summer training in artificial intelligence,jalandhar
6 weeks summer training in artificial intelligence,jalandhar6 weeks summer training in artificial intelligence,jalandhar
6 weeks summer training in artificial intelligence,jalandhar
 
cloud computing training in Bathinda
cloud  computing training in Bathinda cloud  computing training in Bathinda
cloud computing training in Bathinda
 
cloud computing training in delhi
cloud computing training in delhicloud computing training in delhi
cloud computing training in delhi
 
L03 ai - knowledge representation using logic
L03 ai - knowledge representation using logicL03 ai - knowledge representation using logic
L03 ai - knowledge representation using logic
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebra
 
Exchanging More than Complete Data
Exchanging More than Complete DataExchanging More than Complete Data
Exchanging More than Complete Data
 
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie Algebras
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie AlgebrasT. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie Algebras
T. Popov - Drinfeld-Jimbo and Cremmer-Gervais Quantum Lie Algebras
 
Iwsmbvs
IwsmbvsIwsmbvs
Iwsmbvs
 
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1
Intro to AI STRIPS Planning & Applications in Video-games Lecture3-Part1
 
AI.ppt
AI.pptAI.ppt
AI.ppt
 

More from Giorgio Orsi

Web Data Extraction: A Crash Course
Web Data Extraction: A Crash CourseWeb Data Extraction: A Crash Course
Web Data Extraction: A Crash CourseGiorgio Orsi
 
Fairhair.ai – alan turing institute june '17 (public)
Fairhair.ai – alan turing institute june '17 (public)Fairhair.ai – alan turing institute june '17 (public)
Fairhair.ai – alan turing institute june '17 (public)Giorgio Orsi
 
wadar_poster_final
wadar_poster_finalwadar_poster_final
wadar_poster_finalGiorgio Orsi
 
Deos 2014 - Welcome
Deos 2014 - WelcomeDeos 2014 - Welcome
Deos 2014 - WelcomeGiorgio Orsi
 
Heuristic Ranking in Tightly Coupled Probabilistic Description Logics
Heuristic Ranking in Tightly Coupled Probabilistic Description LogicsHeuristic Ranking in Tightly Coupled Probabilistic Description Logics
Heuristic Ranking in Tightly Coupled Probabilistic Description LogicsGiorgio Orsi
 
Datalog and its Extensions for Semantic Web Databases
Datalog and its Extensions for Semantic Web DatabasesDatalog and its Extensions for Semantic Web Databases
Datalog and its Extensions for Semantic Web DatabasesGiorgio Orsi
 
AMBER WWW 2012 Poster
AMBER WWW 2012 PosterAMBER WWW 2012 Poster
AMBER WWW 2012 PosterGiorgio Orsi
 
AMBER WWW 2012 (Demonstration)
AMBER WWW 2012 (Demonstration)AMBER WWW 2012 (Demonstration)
AMBER WWW 2012 (Demonstration)Giorgio Orsi
 
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)Giorgio Orsi
 
Querying UML Class Diagrams - FoSSaCS 2012
Querying UML Class Diagrams - FoSSaCS 2012Querying UML Class Diagrams - FoSSaCS 2012
Querying UML Class Diagrams - FoSSaCS 2012Giorgio Orsi
 
OPAL: automated form understanding for the deep web - WWW 2012
OPAL: automated form understanding for the deep web - WWW 2012OPAL: automated form understanding for the deep web - WWW 2012
OPAL: automated form understanding for the deep web - WWW 2012Giorgio Orsi
 
Nyaya: Semantic data markets: a flexible environment for knowledge management...
Nyaya: Semantic data markets: a flexible environment for knowledge management...Nyaya: Semantic data markets: a flexible environment for knowledge management...
Nyaya: Semantic data markets: a flexible environment for knowledge management...Giorgio Orsi
 
The Diadem Ontology
The Diadem OntologyThe Diadem Ontology
The Diadem OntologyGiorgio Orsi
 
AMBER presentation
AMBER presentationAMBER presentation
AMBER presentationGiorgio Orsi
 

More from Giorgio Orsi (20)

Web Data Extraction: A Crash Course
Web Data Extraction: A Crash CourseWeb Data Extraction: A Crash Course
Web Data Extraction: A Crash Course
 
Fairhair.ai – alan turing institute june '17 (public)
Fairhair.ai – alan turing institute june '17 (public)Fairhair.ai – alan turing institute june '17 (public)
Fairhair.ai – alan turing institute june '17 (public)
 
diadem-vldb-2015
diadem-vldb-2015diadem-vldb-2015
diadem-vldb-2015
 
wadar_poster_final
wadar_poster_finalwadar_poster_final
wadar_poster_final
 
Deos 2014 - Welcome
Deos 2014 - WelcomeDeos 2014 - Welcome
Deos 2014 - Welcome
 
Perv a ds-rr13
Perv a ds-rr13Perv a ds-rr13
Perv a ds-rr13
 
Heuristic Ranking in Tightly Coupled Probabilistic Description Logics
Heuristic Ranking in Tightly Coupled Probabilistic Description LogicsHeuristic Ranking in Tightly Coupled Probabilistic Description Logics
Heuristic Ranking in Tightly Coupled Probabilistic Description Logics
 
Datalog and its Extensions for Semantic Web Databases
Datalog and its Extensions for Semantic Web DatabasesDatalog and its Extensions for Semantic Web Databases
Datalog and its Extensions for Semantic Web Databases
 
AMBER WWW 2012 Poster
AMBER WWW 2012 PosterAMBER WWW 2012 Poster
AMBER WWW 2012 Poster
 
AMBER WWW 2012 (Demonstration)
AMBER WWW 2012 (Demonstration)AMBER WWW 2012 (Demonstration)
AMBER WWW 2012 (Demonstration)
 
DIADEM WWW 2012
DIADEM WWW 2012DIADEM WWW 2012
DIADEM WWW 2012
 
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)
OPAL: a passe-partout for web forms - WWW 2012 (Demonstration)
 
Querying UML Class Diagrams - FoSSaCS 2012
Querying UML Class Diagrams - FoSSaCS 2012Querying UML Class Diagrams - FoSSaCS 2012
Querying UML Class Diagrams - FoSSaCS 2012
 
OPAL: automated form understanding for the deep web - WWW 2012
OPAL: automated form understanding for the deep web - WWW 2012OPAL: automated form understanding for the deep web - WWW 2012
OPAL: automated form understanding for the deep web - WWW 2012
 
Nyaya: Semantic data markets: a flexible environment for knowledge management...
Nyaya: Semantic data markets: a flexible environment for knowledge management...Nyaya: Semantic data markets: a flexible environment for knowledge management...
Nyaya: Semantic data markets: a flexible environment for knowledge management...
 
The Diadem Ontology
The Diadem OntologyThe Diadem Ontology
The Diadem Ontology
 
Diadem 1.0
Diadem 1.0Diadem 1.0
Diadem 1.0
 
Oxpath vldb
Oxpath vldbOxpath vldb
Oxpath vldb
 
OPAL Presentation
OPAL PresentationOPAL Presentation
OPAL Presentation
 
AMBER presentation
AMBER presentationAMBER presentation
AMBER presentation
 

Semantic Data Box

  • 1. HPPS project work: Semantic Data Box G. Orsi Computing Laboratory Oxford University March 2, 2011
  • 2. Introduction Ontology-Based Data Access (OBDA) • New type of database management systems (DBMS) combining classic databases with advanced reasoning and query processing capabilities. • Marriage of ontologies and databases is a rich commercial opportunity: • Oracle Spatial 11g Semantic Technologies • IBM IODT • Data-Grid Inc. • Ontotext BigOWLLim • and source of many research papers and systems: • QuOnto • Pellet • Presto • Requiem • IRIS±
  • 3. Databases and constraints Query answering under constraints • In OBDA, an extensional relational database D is combined with a set of ontological constraints Σ. • A query Q is then answered against D ∪ Σ instead of D only. The chase • Answering a query Q over D ∪ Σ has been shown to be equivalent to answer Q over the chase expansion of D w.r.t. Σ. • The expansion chase(D, Σ) can be obtained through the well-known chase procedure. • whenever the chase procedure does not fail, the chase(D, Σ) is a universal model for Σ and can be used to answer Q.
  • 4. Example: the chase weakly-acyclic constraints chase expansion R: {teaches,professor,student} D: professor(santa) teaches(giorgio,cheng) Σ: σ1 : professor(X) → ∃Z teaches(X,Z) σ2 : teaches(X,Y) → student(Y) Q= ∅ Q: q(A) ← teaches(A,B),student(B) apply σ1 : teaches(santa, z0 ) D: professor(santa) apply σ2 : student(z0 ) teaches(giorgio,cheng) student(cheng) Q= {santa,giorgio}
  • 5. Databases and constraints (cont.) so... where is the problem? chase expansion Critical issue: chase(D, Σ) might be infinite D: person(santa) father(roberto,giorgio) also for a very simple Σ. Q= person(santa) R: {person,father} Σ: σ1 : person(X) → ∃Y father(Y,X), person(Y) apply σ1 : person(roberto) father(z0 ,santa) Q: q(A) ← person(A) father(z1 ,roberto) person(z0 ) D: person(santa) person(z1 ) father(roberto,giorgio) father(z2 ,z0 ) father(z3 ,z1 ) ... Q= ?
  • 6. Answering queries when the chase is infinite The bounded derivation depth (BDD) property • Johnson and Klug proved that it is possible to answer the queries even when the chase is infinite if we know that all the needed tuples can be produced in a finite initial fragment of chase(D, Σ). • query answering under a set Σ enjoys the BDD property if given a query Q it is possible to compute the chase up to k steps (chasek (D, Σ)) and: • chasek (D, Σ) |= Q iff chase(D, Σ) |= Q iff D ∪ Σ |= Q • k depends only on Q and Σ. • All the Σs with the BDD property enjoy also the property of FO-rewritability. the first-order rewritability property • A set of constraints Σ is first-order rewritable (FO-Rewritable) if, given a query Q, there exists a first-order query QΣ (the reformulation of Q) such that D ∪ Σ |= Q iff D |= QΣ for any database D. • The reformulated query does not depend on the size of D! • Answer QΣ over D, instead of Q over chase(D, Σ).
  • 7. Chase vs Rewriting Example Rewriting R: {person,father} D: person(santa) father(roberto,giorgio) Σ: σ1 : person(X) → ∃Y father(Y,X), person(Y) Q= person(santa) Q: q(A) ← person(A) D: person(santa) use σ1 : q(A) ← person(A) father(roberto,giorgio) q(A) ← father(A,B) Q= {santa,roberto}
  • 8. The hard(ware) part... Size of the rewriting • QΣ as the form of a union of conjunctive queries (UCQs), i.e., select a,b from R1,R2 where cond1 UNION select a,b from R1,R2 where cond2 UNION ... UNION select a,b from R1,R2 where condn • Johnson and Klug forgot to mention that the number of queries in QΣ is exponential in the number of atoms of Q and in the size of Σ • we have two ways to go: 1. generate another form of rewriting instead of UCQs (e.g., Datalog queries) to eliminate at least the exponentiality in Σ → no more good properties of UCQs :-( 2. go brute-force in hardware :-)
  • 9. The hard(ware) part... In-hardware databases (e.g., Glacier) • Starting from a query Q and a set of constraints Σ • reformulate the query in software and generate a query plan • synthesize the query plan in hardware • execute the queries in hardware Figure: Glacier: A query-to-hardware compiler (SIGMOD 2010)
  • 10. Problems Reconfigurability • Current approaches implement in hardware the general SQL operators. • if we synthesize the reformulation we go faster than ever! • but... • every time the query changes, the reformulation changes • does reconfigurability help?