Presentation is loading. Please wait.

Presentation is loading. Please wait.

Influence Zone: Efficiently Processing Reverse k Nearest Neighbors Queries Presented By: Muhammad Aamir Cheema Joint work with Xuemin Lin, Wenjie Zhang,

Similar presentations


Presentation on theme: "Influence Zone: Efficiently Processing Reverse k Nearest Neighbors Queries Presented By: Muhammad Aamir Cheema Joint work with Xuemin Lin, Wenjie Zhang,"— Presentation transcript:

1 Influence Zone: Efficiently Processing Reverse k Nearest Neighbors Queries Presented By: Muhammad Aamir Cheema Joint work with Xuemin Lin, Wenjie Zhang, Ying Zhang University of New South Wales, Australia

2 Introduction Nearest Neighbor Query –Find the user that is closest to the query facility Reverse Nearest Neighbor Query (RNN) –Find every user for which the query facility is the closest facility u1u1 u2u2 u3u3 f1f1 f2f2 f3f3 q u3 is the nearest neighbor of qu1 and u2 are RNNs of q Nearest Neighbor Query –Find the user that is closest to the query facility Reverse k Nearest Neighbor Query (RkNN) –Find every user for which the query facility is one of the k closest facilities u1, u2 and u3 are R2NNs of q u4u4 Monochromatic RkNN queries are also supported

3 Preliminaries Half-space Pruning [VLDB04] –dist(u,f 2 ) < dist(u,q) so u cannot be RNN –The half-space that contains f 2 can be pruned Filtering –Repeat until there is no facility in the unpruned area Find a nearby facility in the unpruned space Prune by using the half-space Containment –The users that are contained in the unpruned space are the candidates Verification –For each candidate user u Verify it if no object is within range dist(u,q) q RNN query f1f1 f2f2 u f4f4 f5f5 u2u2 u1u1 u3u3 u4u4 f3f3

4 Preliminaries Half-space Pruning [VLDB04] –the space that is contained by k half-spaces can be pruned Filtering –Repeat until there is no facility in the unpruned area Find a nearby facility in the unpruned space Prune by using the half-space Containment –The users that are in the unpruned space are the candidate objects Verification –For each candidate user u Verify it if less than k facilities are within the range dist(u,q) f1f1 R2NN query q f2f2 f3f3 f5f5 f4f4 u2u2 u1u1 f6f6 u3u3 u4u4 u

5 Preliminaries Filtering –Repeat until there is no facility in the unpruned area Find a nearby facility in the unpruned space Prune by using the half-space Containment –The users that are in the unpruned space are the candidate objects Verification –For each candidate user u Verify it if less than k facilities are within the range dist(u,q) f1f1 R2NN query q f2f2 f3f3 f5f5 f4f4 f6f6 FINCH [VLDB08] approximates the unpruned region by a convex polygon

6 Preliminaries q f2f2 f3f3 f5f5 f4f4 u2u2 u1u1 f6f6 u3u3 u4u4 _ p Influence Zone Z k –An area such that for every p not in Z k, |C p | ≥ k and for every p’ in Z k, |C p’ | < k RkNN query –Return every user u for which |C u | < k OR every user u in Z k Notations For any point p, C p denotes the circle centered at p with radius r = dist(p,q) | C p | denotes the number of facilities inside C p p’ K =2

7 Advantage Prune the data space Candidates = objects in the unpruned space Verify each candidate object if q is one of its k nearest neighbors Pruning Containment Verification Compute influence zone Result = objects that are inside the influence zone Pruning Containment Existing AlgorithmsOur Algorithm

8 Naïve Approach q f2f2 f3f3 f5f5 f4f4 f6f6 _ For each facility f Draw the half-space between f and q Z k is the space that is pruned by at most k-1 half-spaces f5f5

9 Observation 1 A facility f can be ignored if it lies outside C p for every p inside current unpruned polygon q f2f2 f3f3 f5f5 f4f4 f6f6 Intuition If a facility f lies outside C p, the half-space b/w f and q cannot prune p If f lies outside every C p, the half-space of f cannot prune any p f7f7

10 Observation 2 A facility f can be ignored if it lies outside C p for every p on the boundary of current unpruned polygon q f2f2 f3f3 f5f5 f4f4 f6f6 Intuition For every p’ inside the polygon, there exists a p on the boundary such that C p contains C p’ f7f7 pp’

11 Observation 3 A facility f can be ignored if it lies outside C v for every vertex of current unpruned polygon q f2f2 f3f3 f5f5 f4f4 f6f6 Intuition C A U C B contains C C f7f7 q A B C p v v’

12 Observation 4 A facility f can be ignored if it lies outside C v for every convex vertex v of current unpruned polygon q f2f2 f3f3 f5f5 f4f4 f6f6 Intuition Any vertex v’ that is not a convex vertex lies inside the convex polygon and is not required to check for this reason f7f7 v’ The above pruning condition is tight

13 Algorithm Initialize Z k as the data universe Insert root of R-tree in heap While heap is not empty Deheap an entry e If e cannot be pruned If e is an intermediate node Insert children of e in the heap Else Use the half-space of e to update Z k If e lies outside every C v for every convex vertex of Z k then e can be pruned

14 Other highlights of our algorithm Observations to efficiently prune certain entries Efficient determination of convex vertices Prove that influence zone is always a star-shaped polygon Efficient containment checks are possible for star- shaped polygons

15 RkNN Processing Static RkNN queries Pruning Phase (compute Z k ) Containment Phase (return users inside Z k ) Continuous Bichromatic RkNN queries Compute Z k The users that enter Z k become RkNNs and the users that leave it are no more the RkNNs

16 Theoretical Analysis Area of Influence Zone = k/|F| Number of RkNNs = |U|. k / |F| IO cost of computing Z k = IO cost of RkNN queries = IO cost of computing Z k + r = S = number of facilities (i.e., |F|) f = fanout of the R-tree r = S = number of users (i.e., |U|) f = fanout of the R-tree

17 Experiments Snapshot RkNN Queries FINCH [1] (page size 4KB and number of buffers is 10) Real dataset containing 175,812 locations in North America Half of the randomly chosen points form the set of facilities The remaining half form the set of users [1] W. Wu, F. Yang, C. Y. Chan, K. L. Tan. FINCH: Evaluating Reverse k Nearest Neighbor Queries on Location Data. VLDB 2008

18 Experiments Snapshot RkNN Queries The facilities are from the real data set The users follow Normal distribution

19 Experiments Verification of Theoretical Analysis 100,000 facilities following Uniform distribution 100,000 users following Uniform distribution

20 Experiments Verification of Theoretical Analysis 100,000 facilities following Uniform distribution 100,000 users following Uniform distribution

21 Experiments Continuous RkNN Queries Moving objects and queries generated using Brinkhoff Generator [1] on road map of Texas Data space is 1000 Km X 1000 Km Our algorithm (InfZone) is compared with LazyUpdates [2] [1] T. Brinkhoff. A framework for generating network-based moving objects. GeoInformatica, 2002. [2] M. A. Cheema, X. Lin, Y. Zhang, W. Wang, W. Zhang. Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN. PVLDB, 2009.

22 Experiments

23 Thanks

24 Experiments Snapshot RkNN Queries

25 Experiments Snapshot RkNN Queries

26 Relationship with Voronoi


Download ppt "Influence Zone: Efficiently Processing Reverse k Nearest Neighbors Queries Presented By: Muhammad Aamir Cheema Joint work with Xuemin Lin, Wenjie Zhang,"

Similar presentations


Ads by Google