Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang...

29
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

Transcript of Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN Presented By: Ying Zhang...

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

Lazy Updates: An Efficient Technique to Continuously Monitoring Reverse kNN

Presented By: Ying ZhangJoint work with

Muhammad Aamir Cheema, Xuemin Lin, Wei Wang, Wenjie Zhang

University of New South Wales, Australia1

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

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 qp1 and p4 are the reverse nearest neighbors of q 2

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

Applications

• Location based services,

• Location based games,

• Army strategic planning …

Continuous Monitoring of RkNN

3

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

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

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

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

de

Static RNN query

5

Unpruned area

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

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

de

Continuous RNN query [ICDE07]

6

Unpruned area

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

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

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

8

Challenges

R

Q

?

Based on : Shortest pair ?Longest pair ?Combination of them ?

NO

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

Half-Space Pruning

qM N

p

mindist(x,MN) > dist(x,p)

x

Hp:M

Hp:N

x

x

– Any x on right side of LN :• mindist(x,MN) = dist(x,N)

– Hp:N : the half-space containing p and defined by the bisector between p and N

– Any x on left side of LM :• mindist(x,MN) = dist(x,M)

– Any x between LM and LN :• a parabola with mindist(x,

MN) = dist(x,p)

LMLN

9

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

Challenges

10

R

Q

?

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

qM N

p

Hp:M

Hp:N

– Frontier point Fp

– Moved to Fp, the intersection of the half-spaces correctly bounds the pruned area

– Hp:N passing Fp : normalized half-space H’p:N

Half-Space Pruning: Normalization

Fp

11

H’p:M

H’p:N

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

Half-space Pruning: Pruning Rule 1

RM

N O

P

QD

A B

E

H’M:B

H’P:A

H’N:E

H’O:D

Fp

Pairs of antipodal corners are (B,M), (A,P), (E,N) and (D,O)

HM:B HP:A

12

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

Dominance Pruning : pruning rule 2

RM

N O

P

QD

A B

C

H’M:B

H’P:A

H’N:C

H’O:D

Fp

13

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

Trimming the rectangle

14

Q

RF1RF2

R

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

Metric based pruning : pruning rule 3

Q

R

R’

maxdist(R,R’)

mindist(R’,Q)

15

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

16

Order of pruning rules

Q

RF

R1

R2

R3

Fp

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

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

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

Illustration of Filtering

O3

Q

O2

O1

O4

O6

O5

O7

18

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

Illustration of Verification

O3

Q

O2

O1

O4

O6

O5

O7

O1

O2

O3

O5

O6

19

Q

?

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

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

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

Theoretical AnalysisCommunication Cost : |Q| x (M1 + M2 + 1) + M3

M1: # candidate objects

M2: #objects need exact location during the boolean range queries

M3: #objects that leave the safe regions

21

N: Total number of objects w : width of the safe regionv: average speed of objects |Q| : The number of queries

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

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

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

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 )

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

Experiments: Size of safe region

24

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

Experiments: Number of objects

25

IGERN : ICDE 2007 work for RNNSAC : Our algorithm

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

Experiments: Effect of data mobility

• Data mobility is the percentage of objects/queries that change their location within one time unit

26

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

Experiments: RkNN queries

27

CRkNN : MDM 2008 work for continuous monitoring RkNNSAC : Our algorithm

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

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

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

Thanks

29