A scalable algorithm for answering queries using views Rachel Pottinger, Alon Levy [2000] Rachel...

Post on 20-Dec-2015

216 views 0 download

Transcript of A scalable algorithm for answering queries using views Rachel Pottinger, Alon Levy [2000] Rachel...

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

paea@cs.uoregon.edu

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)?