View
214
Download
0
Embed Size (px)
Citation preview
A scalable algorithm for answering queries using views
Rachel Pottinger, Alon Levy [2000]Rachel Pottinger and Alon Y. Levy A Scalable Algorithm for Answering Queries Using Views. In Proceedings of VLDB 2000.
Presented by:Paea LePendu
Introduction
Θ Q(x) :- cites(x,y), cites(y,x), SameTopic(x,y)● This looks like a RULE (HEAD :- Body)● Join Predicates / Database relations
Θ But this paper is about VIEWS.
Θ SQL ↔ Views ↔ Rules
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
SQL ↔ Views ↔ Rules
Outline
Θ IntroductionΘ MotivationΘ ContributionsΘ AlgorithmsΘ Experimental resultsΘ Future work
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
SQL ↔ Views ↔ Rules
Bucket, MiniCon
What is a view (in SQL)?
Θ Virtual TableΘ Logical dataΘ Query vs. View
Θ Materialized View
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
SQL ↔ Views ↔ Rules
Logical
Online Instructor Evaluation System for Whitman College, by Paea LePendu, 2003.
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Virtual Table
Online Instructor Evaluation System for Whitman College, by Paea LePendu, 2003.
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Re-cap
Θ SQL ↔ Views ↔ Rules
Θ SQL ↔ Views ↔ Rules
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Datalog
Θ Deductive DatabasesΘ Facts, rules, queries
● Forward Chaining● Backward Chaining
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
SQL ↔ Views ↔ Rules
Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems (3rd Edition), Addison-Wesley, 2000.
Facts, Rules, Queries *
Θ superior(james,joyce)? :- supervise(X,Z), superior(Z,Y)(bindings: X→james, Z→franklin, Y→joyce)
Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems (3rd Edition), Addison-Wesley, 2000.
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Re-cap
Θ Q(x) :- cites(x,y), cites(y,x), SameTopic(x,y)
Θ V4(a) :- cites(a,b), cites(b,a)
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
SQL ↔ Views ↔ Rules
Why rewrite a query using a view?
Θ Data managementΘ Data integrationΘ Query optimizationΘ Data independence
Θ Materialized Views
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Data Integration
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Maximally-containedrewriting
Conjunctive query
Materialized views
Contributions
Θ MiniConΘ Algorithm analysis
● Bucket● Inverse Rules● MiniCon
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Q :- V1, V2, ..., Vn
Θ NP completeΘ Bucket algorithmΘ Inverse rules algorithmΘ MiniCon algorithm
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p487.
Bucket
Θ Redundant rewritingsΘ Cartesian productΘ Inefficient
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p487.
Bucket
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p487.
Q :- V1, V2, ..., Vn
Θ Bucket algorithmΘ Inverse rules algorithmΘ MiniCon algorithm
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Inverse Rules
Θ Polynomial timeΘ Redundant rewritingsΘ Redeemable
● Back to Bucket
Pottinger et al. 2000 p488.
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Q :- V1, V2, ..., Vn
Θ Bucket algorithmΘ Inverse rules algorithmΘ MiniCon algorithm
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
MiniCon
Θ BucketΘ Change perspectiveΘ MCDΘ Eliminates redundancy
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
MCD
Θ Partial mappings from Vars(Q) to Vars(V)● Constraint: distinguished range contained in head variables
Θ Head homomorphism mappings
Θ Covered subgoals● Constraint: ranged existential variables are distinguished
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p489.
MCD
V6(f,h)?
1 2 3
y→g?
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p489.
V4(a) | a→a | x→a, y→b | 1,2 (3) eliminated
combineMCD
Θ Pair-wise disjoint subsets of subgoals● Define mappings Q↔V● Create conjunctive rewriting
Θ Union resulting conjunctive rewritings
Q1'(x) :- V6(x,x)
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p490.
V5(c,d) | c→c, d→d | x→c, y→d | 3 (1,2) eliminated
V6(f,f) | f→f, h→f | x→f, y→f | 1,2,3
Experimental Results
Θ Chain, Star, Complete Queries
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
(a) Steinbrunn, G. Moerkotte, and A. Kemper. Heuristic and randomized optimization for the join. VLDB Journal, 6(3):191-208, 1997. (b) W. Sun and C. Yu. Semantic Query Optimization for Tree and Chain Queries. IEEE Transactions on Knowledge and Data Engineering. 6(1):136-15, 1994. (c) http://www.eecs.umich.edu/db/mbench/images/chainTwig.ppt
Chain Queries
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p492.
Star and Complete Queries
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Pottinger et al. 2000 p493.
Future Work
Θ Query optimization
Θ Semantic Search ?
Introduction → Motivation → Contributions → Algorithms → Expmt'l Results → Future Work
Questions for you
Θ Why the distinction between views and materialized views?
Θ Is a maximally-contained rewriting satisfactory?
Θ What similarities do you see with the Abiteboul et al paper (Correspondence and translation for heterogeneous data)?