the spatial skyline queries
play

The Spatial Skyline Queries Mehdi Sharifzadeh and Cyrus Shahabi - PDF document

10/27/2009 Coffee shop The Spatial Skyline Queries Mehdi Sharifzadeh and Cyrus Shahabi VLDB 2006 VLDB 2006 Presented by Ali Khodaei Coffee shop Coffee shop Dont choose this Three friends Three friends place p is closer to each three


  1. 10/27/2009 Coffee shop The Spatial Skyline Queries Mehdi Sharifzadeh and Cyrus Shahabi VLDB 2006 VLDB 2006 Presented by Ali Khodaei Coffee shop Coffee shop Don’t choose this Three friends Three friends place p is closer to each three friends than here!! p’ q1 q1 p q2 q2 q3 q3 dist(p,q1) < dist(p’,q1) and query point query point dist(p,q2) < dist(p’,q2) and dist(p,q3) < dist(p’,q3) � p spatially dominate p’ Problem Definition p 1 spatially dominates p 2 with respect to Q iff • Data P = {p 1 , p 2 , p 3 , p 4 } D(p 1 , q i ) ≤ D(p 2 , q i ) for all q i in Q and • Query Q = {q 1 , q 2 } D(p 1 , q j ) < D(p 2 , q j ) for at least one q j • Distance D() = Euclidean p 3 • p 2 spatially dominates p 1 with respect to {q 1 , q 2 } p p 1 • Dominator Region of p • Dominator Region of p 1 • p 1 spatially dominates p 3 q 2 p 2 • Dominance Region of p 1 q 1 • No dominance relation Spatial p 4 Skyline between p 1 and p 4 Points query point Spatial Skyline Query (SSQ): find the data points p i that are not spatially dominated by any other point p j with respect to the given query points (here, p 2 and p 4 ). spatial skyline point spatial skyline point is not dominated by any other data point 1

  2. 10/27/2009 □ spatially domiante □ spatially domiante p spatially dominate p’ if p is closer to All query points than p’ p spatially dominate p’ if D(p, q i ) ≤ D(p’, q i ) for all q i ∈Q if D(p, q i ) ≤ D(p’, q i ) for all q i ∈Q closer to p than p’ p p p’ p’ closer to p’ than p p spatially dominate p’ □ spatially domiante □ Spatial skyline p spatially dominate p’ Spatial skyline point : p is not spatially dominated by any other point in P than p is spatial skyline point if D(p, q i ) ≤ D(p’, q i ) for all q i ∈Q spatial skyline point ? p p p’ p can’t spatially dominate p’ □ Spatial skyline □ Spatial skyline Spatial skyline point : not spatially dominated by any other point in P Spatial skyline point : not spatially dominated by any other point in P p p O( |Q| ) O( |Q| ) 2

  3. 10/27/2009 □ Spatial skyline □ Spatial skyline Spatial skyline point : not spatially dominated by any other point in P Spatial skyline point : not spatially dominated by any other point in P p is spatial skyline point !! p p □ Spatial skyline Naïve approach • Complexity: O(|P| 2 |Q| ) p is spatial – skyline point !! |P| : number of data points, |Q| : number of query points Why a new algorithm is needed: • p Complexity of Naïve approach is high – Each dominance check involves 2|Q| distance Each dominance check involves 2|Q| distance • • computation operations: increases with more query points General skyline algorithms are either inapplicable or inefficient – y (latitude) Due to dynamic spatial attributes • Optimization opportunity – The geometric properties of space can we can compute all spatial skyline points • be exploited Time Complexity: O(|P| 2 |Q| ) |P|: number of data points, |Q|: number of query points x (longitude) ( naïve algorithm ) Geometric Properties Preliminaries:Voronoi Diagras • Given a set of spatial objects, a Voronoi diagram uniquely partitions the Complexity of Naïve approach: O(|P| 2 |Q| ) space into disjoint regions (cells). • • The region including object p includes all locations which are closer to p |P| : number of data points – than to any other object p’. |Q| : number of query points Point q inside the cell of p – <=> Ordinary Voronoi Diagram D(q, p) <= D(q, p’) We identify geometric properties to reduce th f • Dataset: is complexity by reducing the number of : Points data points to be investigated Distance D( .,.) : – Euclidean (L 2 ) p query points that has no effect on the result q – p’ Less and cheaper dominance checks • Voronoi We identify three properties … • Cell of p 3

  4. 10/27/2009 Geometric Properties Preliminaries: Convex Hull GP 1 : Any point p inside the convex hull of query points Q is a spatial skyline point. Convex hull of a set Q of points is the smallest convex polygon CH for which each point in Q is either on the boundary of CH or in its interior p Convex Hull of query points Intuition: circles defining the Data Point dominator region of p Query Point intersect only at p Geometric Properties GP 2 : The set of skyline points does not depend on any naive algorithm query point q inside the convex hull of query points Q . q2 q3 q1 p Dominator p q4 region of p q5 p’ q 3 q6 q 4 q 2 compute whether q1 is in left side or right side q 1 compute whether q2 is in left side or right side compute whether q3 is in left side or right side Data Point I ntuition: circle corresponding compute whether q4 is in left side or right side Query Point to q 4 does not change the compute whether q5 is in left side or right side dominator region of p Geometric Properties GP 3 : Any point p whose Voronoi cell intersects with the convex hull of Q is a spatial skyline point. compute q2 is in left side or right side q2 compute q3 is in left side or right side q3 compute q6 is in left side or right side q1 p p’ q4 compute vertices of convex hull are q5 p p’ p in left side or right side i l ft id i ht id � take O( |CHv(Q)| ) time q6 p’ we don’t need to compute q1,q4 and q5 I ntuition: any point inside Data Point CH(Q) (including parts of VC(p) ) is closer to p ’ that Query Point dominates p -> contradiction 4

  5. 10/27/2009 Algorithm: VS 2 □ mindist of p : dist(p,q1) + dist(p,q2) + dist(p,q3) VS 2 : Voronoi-based Spatial Skyline Algorithm if p dominate p’ then mindist(p) < mindist(p’) • Utilizes the geometric interpretation of the dist(p,q1) < dist(p’,q1) and • dist(p,q2) < dist(p’,q2) and skyline dist(p,q3) < dist(p’,q3) (by definition of ‘spatially dominate) GP 1 With no dominance check , adds any data point p wh – GP 3 ose Voronoi cell intersects with the convex hull of Q ose Voronoi cell intersects with the convex hull of Q q2 q1 Performs cheaper dominance check only on a small – subset of points GP 2 p (neighbors of skyline points ~ O(S)) p’ Traversal is based on monotone function q3 • mindist Top of t he heap Top of t he heap Algorithm: VS 2 □ mindist of p : dist(p,q1) + dist(p,q2) + dist(p,q3) Cont ent s of t he h Cont ent s o t he heap eap • Voronoi cell of point intersects with CH(Q) (GP3: no dominance check) • We check the top of heap when all of its neighbors are already in the heap. • Apply dominance check as neither the point is in the CH(Q) nor its VC intersects • Voronoi cell of point intersects with CH(Q) (GP3: no dominance check) • Voronoi cell of point intersects with CH(Q) (GP3: no dominance check) • Traversal is started from NN of q i towards minimizing a monotone function • Voronoi cell of point intersects with CH(Q) (GP3: no dominance check) • First, the convex hull of query points is computed. • Voronoi Diagram of data points is given. • point inside CH(Q) (GP1: no dominance check) • Check current point as all of its Voronoi neighbors have been traversed. if p dominate p’ then mindist(p) < mindist(p’) • Each iteration extracts the Voronoi neighbors of the current point. with CH(Q) (GP2: cheaper dominance check) • No dominance check so far … • point inside CH(Q) � GP1: The first skyline point was found. • Use a minheap for traversal • Check with only the current spatial skyline points � if mindist(p) > mindist(p’), than p can’t dominate p’ So, sort the data point by mindist ascending order. To determine whether p is skyline point or not, To determine whether p is skyline point or not, q p we only need to compare p with the point that has smaller mindist than p. Algorithm: VS 2 Algorithm: VS 2 Time Complexity: O(|S| 2 |CH v (Q)| + Φ(|P|) ) • Traversal stops before reaching the dominance region of the current skyline set. • • We check only a small number of non-skyline points. Naïve: O(|P| 2 |Q| ) – |S| : number of skyline points • |CH v (Q)| : number of vertices of the • convex hull of Q (<= |Q|) Φ(|P|) : complexity of finding the data point from • which VS 2 starts traversing inside the convex hull of Q ( O(log(|P|)) Space Complexity: O(|P|) • Space required for ordinary Voronoi Diagram is O(|P|) – 5

  6. 10/27/2009 Algorithms: B 2 S 2 Performance Evaluation B 2 S 2 : Branch-and-Bound Spatial Skyline Algorith • Dataset: USGS including one million loc m • Customization of BBS [Papadias et al.] for SSQs ations • Uses some of the geometric properties of the s R*-tree on data points for BBS and • • kyline (GP 1 and GP 2 ) y 1 2 B 2 S 2 B 2 S 2 Similar to BBS traverses an R-tree on data • Pre-built Delaunay graph of data points points • for VS 2 Traversal order: specified by any monotone • function (e.g., mindist(p, CH v (Q)) ) Performance Evaluation Performance Evaluation 4 6 BBS B2S2 BBS B2S2 CPU VS2 number of VS2 3.5 cost 5 dominance 3 (sec) checks 4 ( x 1000) 2.5 2 3 1.5 1 5 2 1 1 0.5 0 0 2 4 6 8 10 2 4 6 8 10 |Q| |Q| • Max MBR(Q)=0.3% •Variations of B 2 S 2 require less dominance checks than BBS. •Note that each dominance check is cheaper in our VS 2 and B 2 S 2 algorithms. •The difference in improvement of VS 2 over BBS increases for larger query sets. Performance Evaluation Questions? BBS B2S2 2 CPU VS2 cost 1.5 (sec) 1 0.5 0 0.56% 1.60% 7% 15% 34% Density • Max |MBR(Q)| = 0.5%, |Q| = 6 •VS 2 is also scalable with respect to the density of data (i.e., number of skyline points) 6

Recommend


More recommend