Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang Joint work with Muhammad Aamir Cheema, Xuemin Lin,

Similar presentations


Presentation on theme: "Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang Joint work with Muhammad Aamir Cheema, Xuemin Lin,"— Presentation transcript:

1 Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang Joint work with Muhammad Aamir Cheema, Xuemin Lin, Wei Wang, Wenjie Zhang University of New South Wales, Australia 1

2 Reverse Nearest Neighbor Nearest Neighbor Query (NN) –Find the object closest to q Reverse Nearest Neighbor Query (RNN) –Korn et. al. Sigmod 2000 –Find objects s.t. q is their NN Reverse k Nearest Neighbor Query (RkNN) –Find objects s.t. q is their kNN p2 is the nearest neighbor of q p1 and p4 are the reverse nearest neighbors of q 2

3 Applications Location based services, Location based games, Army strategic planning … Continuous Monitoring of RkNN 3

4 Related Work Continuous RNN and RkNN –Benetis et. al (IDEAS 2002) : motion patterns (e.g., speed, direction) of objects and query are known –Xia et. al (ICDE 2006) : continuous RNN without motion patterns –Kang et. al (ICDE 2007) : improve the ICDE 2006 techniques –Wu et. al (MDM 2008) : extend to RkNN monitoring 4

5 Preliminaries Half-space Pruning [VLDB04] –Objects in the half-space containing a can be pruned Filtering –Repeat until no objects in unpruned area Verification –p is RNN iff no object p s.t. dist(p,p) < dist( p,q) q c b a d e Static RNN query 5 Unpruned area

6 Preliminaries Do filtering starting from the existing candidates if –Query moves, or – Candidate objects move, or – An object moves to the unpruned area Do verification q c b a d e Continuous RNN query [ICDE07] 6 Unpruned area

7 Proposed Framework Assign rectangular safe regions to objects and queries Prune objects using safe regions Advantages –Low Computation Cost –Low Communication Cost q c b a d e 7

8 8 Challenges R Q ? Based on : Shortest pair ? Longest pair ? Combination of them ? NO

9 Half-Space Pruning q MN p mindist(x,MN) > dist(x,p) x H p:M H p:N x x –Any x on right side of L N : mindist(x,MN) = dist(x,N) –H p:N : the half-space containing p and defined by the bisector between p and N –Any x on left side of L M : mindist(x,MN) = dist(x,M) –Any x between L M and L N : a parabola with mindist(x, MN) = dist(x,p) LMLM LNLN 9

10 Challenges 10 R Q ?

11 q MN p H p:M H p:N –Frontier point F p –Moved to F p, the intersection of the half-spaces correctly bounds the pruned area –H p:N passing F p : normalized half-space H p:N Half-Space Pruning: Normalization FpFp 11 H p:M H p:N

12 Half-space Pruning: Pruning Rule 1 R M NO P Q D A B E H M:B H P:A H N:E H O:D FpFp Pairs of antipodal corners are (B,M), (A,P), (E,N) and (D,O) H M:B H P:A 12

13 Dominance Pruning : pruning rule 2 R M N O P Q D A B C H M:B H P:A H N:C H O:D FpFp 13

14 Trimming the rectangle 14 Q R F1 R F2 R

15 Metric based pruning : pruning rule 3 Q R R maxdist(R,R) mindist(R,Q) 15

16 16 Order of pruning rules Q RFRF R1R1 R2R2 R3R3 FpFp

17 Algorithm Overview Initial Computation – Filtering: Determine candidates – Verification: Verify each candidate Continuous Monitoring –Update candidate objects (filtering) if Query or a candidate moves out of safe region, or An object enters the unpruned area –Verify all candidates 17

18 Illustration of Filtering O 3 Q O 2 O 1 O 4 O 6 O 5 O 7 18

19 Illustration of Verification O 3 Q O 2 O 1 O 4 O 6 O 5 O 7 O1O1 O2O2 O3O3 O5O5 O6O6 19 Q ?

20 Data structure Query table : id, safe region, candidate objects Object table : id, safe region Use grid data structure to support update Each cell c of the grid : – Object list : objects whose safe regions overlap c – Influence list : queries whose unpruned area overlaps c 20

21 Theoretical Analysis Communication Cost : |Q| x (M 1 + M 2 + 1) + M 3 M 1 : # candidate objects M 2 : #objects need exact location during the boolean range queries M 3 : #objects that leave the safe regions 21 N: Total number of objects w : width of the safe region v: average speed of objects |Q| : The number of queries

22 Experiment settings Generate Moving objects and queries using Brinkhoff Generator [1] on road map of Texas Data space : 1000 Km X 1000 Km Our algorithm (SAC) is compared with IGERN [2] for RNN queries and CRkNN [3] for RkNN queries [1] T. Brinkhoff. A framework for generating network-based moving objects. GeoInformatica, 2002. [2] J. M. Kang, M. F. Mokbel, S. Shekhar, T. Xia, and D. Zhang. Continuous evaluation of monochromatic and bichromatic reverse nearest neighbors. ICDE, 2007. [3] W. Wu, F. Yang, C. Y. Chan, and K.-L. Tan. Continuous reverse k-nearest-neighbor monitoring. MDM, 2008 22

23 23 Evaluation of pruning rules Avg. time for PR3 : 1.1 µs ( metric based pruning rule ) PR2 : 2.3 µs ( dominance pruning rule ) PR1 : 10.5 µs ( half space based pruning rule )

24 Experiments: Size of safe region 24

25 Experiments: Number of objects 25 IGERN : ICDE 2007 work for RNN SAC : Our algorithm

26 Experiments: Effect of data mobility Data mobility is the percentage of objects/queries that change their location within one time unit 26

27 Experiments: RkNN queries 27 CRkNN : MDM 2008 work for continuous monitoring RkNN SAC : Our algorithm

28 28 Conclusion Study the problem of continuously monitoring reverse kNN. Propose new framework based on safe region Outperform previous algorithms in terms of computation cost and communication cost

29 Thanks 29

30 Conceptual Grid-tree Grid data structure is preferred for moving objects, so we also use a grid structure To efficiently search the objects in unpruned area, we treat grid as a conceptual tree 30

31 Half-space Pruning: Pruning Rule 1 R M N O P Q D A B E Pairs of antipodal corners are (B,M), (A,P), (E,N) and (D,O) H M:B H P:A H N:E H O:D Any point that lies in intersection of normalized halfspaces between all pairs of antipodal corners of R and Q can be pruned (such point is closer to every point in R than any point in Q) X 31

32 Continuous Monitoring The pruning remains valid unless at least one of the following two happens; 1.Query or a candidate object leave its safe region 2.An object enters into the unpruned region If any of the above two happens Repeat the filtering phase Verify all candidate objects 32

33 Extensions Extension to RkNN queries –An entry e can pruned if it is pruned by at least k filtering objects –An object p is verified if there are less that k objects within range dist(p,q) Extension to Bichromatic queries –Let there be two set of objects O and P and query belongs to O –Repeat until no object of type O in unpruned region Find a nearby object of type O in the unpruned region Prune the space using this object –All objects of type P that lie in the unpruned region are the canidate objects –Verify them if there are less than k objects of type O within the range 33

34 Theoretical Analysis The filtering phase is required if at least one of the following two happens; 1.The query or a candidate objects leaves its safe zone 2.Any other object enters in the unpruned region – Let p be the probability that at a given timestamp at least one of the above two conditions hold Computation Cost = p x C Fil + C ver – Where C Fil is the cost of filtering phase and C ver is the cost of the verification phase – Let C br be the cost of a boolean range query 34

35 Experiments: Effect of Speed 35

36 Experiments: Number of queries 36


Download ppt "Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang Joint work with Muhammad Aamir Cheema, Xuemin Lin,"

Similar presentations


Ads by Google