PREFER: A System for the Efficient Execution of Multi-parametric Ranked Queries Vagelis Hristidis University of California, San Diego Nick Koudas AT&T.

Similar presentations

Presentation on theme: "PREFER: A System for the Efficient Execution of Multi-parametric Ranked Queries Vagelis Hristidis University of California, San Diego Nick Koudas AT&T."— Presentation transcript:

1
PREFER: A System for the Efficient Execution of Multi-parametric Ranked Queries Vagelis Hristidis University of California, San Diego Nick Koudas AT&T Research Yannis Papakonstantinou University of California, San Diego

8
Definitions - Problem statement A preference query orders the tuples of a relation according to a function of the attribute values. eg: 0.01· Mileage + 0.6·Year + 0.03· Price Goal is to produce top-K answers of a preference query, retrieving the minimum # of tuples

9
Our Approach PREFER materializes a number of ranked views of the relation and uses them to efficiently answer to preference queries.

17
Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price t1t1 1.Calculate Watermark for t 1, which is 14.26 Car ID

18
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price 1.Calculate Watermark for t 1, which is 14.26 2.Find prefix of view with f v greater than watermark value and sort them by f q Car ID

19
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price 1.Calculate Watermark for t 1, which is 14.26 2.Find prefix of view with f v greater than watermark value and sort them by f q Car ID

20
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 1.Calculate Watermark for t 1, which is 14.26 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 Car ID 2 1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price

21
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 1.Calculate Watermark for t 1, which is 14.26 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 4.Repeat using first unprocessed as t 1 Car ID 2 1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price

22
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price 1.Calculate Watermark for t 1, which is 13.1 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 4.Repeat using first unprocessed as t 1 Car ID 2 1

23
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price 1.Calculate Watermark for t 1, which is 13.1 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 4.Repeat using first unprocessed as t 1 Car ID 2 1 3

24
How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm t1t1 1.Calculate Watermark for t 1, which is 8.3 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 4.Repeat using first unprocessed as t 1 Car ID 2 1 3

25
Ranked View, ordered by 0.02*Mileage+0.4*Year+0.04*Price How to use a ranked view to answer a preference query (cont’d) PipelineResults Algorithm Result, ordered by 0.01*Mileage+0.6*Year+0.03*Price t1t1 1.Calculate Watermark for t 1, which is 8.3 2.Find prefix of view with f v greater than watermark value and sort them by f q 3.Output tuples up to t 1 4.Repeat using first unprocessed as t 1 Car ID 2 1 3 5 4

37
Related Work The Onion Technique (Sigmod 2000). Main observation: the points of interest lie on the convex hull of the tuple space. Drawbacks of Onion: Does not scale Computing the convex hull is very computationally intensive Not efficient if the domain of an attribute has a small cardinality Not efficient for more than the top-1 result