Optimal Nearest Neighbor Queries in Sensor Networks Gokarna Sharma - - PowerPoint PPT Presentation

optimal nearest neighbor queries in sensor networks
SMART_READER_LITE
LIVE PREVIEW

Optimal Nearest Neighbor Queries in Sensor Networks Gokarna Sharma - - PowerPoint PPT Presentation

Optimal Nearest Neighbor Queries in Sensor Networks Gokarna Sharma and Costas Busch Division of Computer Science and Eng. Louisiana State University 1 Problem Description Distributed sensor network 2 Problem Description Objects are tracked


slide-1
SLIDE 1

Optimal Nearest Neighbor Queries in Sensor Networks Gokarna Sharma and Costas Busch

Division of Computer Science and Eng. Louisiana State University

1

slide-2
SLIDE 2

Problem Description

2

Distributed sensor network

slide-3
SLIDE 3

Problem Description

3

Objects are tracked by the sensors Red nodes are proxy nodes that detect the objects (one proxy per object)

slide-4
SLIDE 4

Problem Description

4

Query from a node: find the closest object Where is the closest object?

slide-5
SLIDE 5

Problem Description

5

Response to query: proxy to closest object Closeness is measured with graph hops (or graph distance)

slide-6
SLIDE 6

Problem Challenges

6

  • Queries may initiate from arbitrary nodes
  • Objects can move
  • Unknown number of objects
slide-7
SLIDE 7

Performance Metrics

7

Use a distributed data structure to maintain position information for the objects Two performance cost metrics: Query cost: distance to returned proxy node Update cost: total communication cost to maintain data structure as the objects move

slide-8
SLIDE 8

Update Cost

8

Update cost lower bound: the total distance that the objects (proxies) have moved in the graph

1

d

2

d

3

d

4

d

5

d

i

d

slide-9
SLIDE 9

Contributions

9

A distributed directory approach based on a hierarchical clustering of the graph Low doubling dimension graphs: Query cost approximation: Update cost approximation:

 

1 O

 

n O log n is the number of nodes

slide-10
SLIDE 10

Contributions

10

General weighted graphs: Query cost approximation: Update cost approximation:

 

n O

4

log

 

n O

3

log n is the number of nodes

The results can be generalized to general graphs

slide-11
SLIDE 11

Closeness

11

Due to the directory structure, the absolute nearest object may be missed We guarantee closeness in low doubling dimension graphs

d ) (d O

Query node closest proxy node returned proxy

) 1 ( O

slide-12
SLIDE 12

Distributed Directory Approaches (for single object)

12

Protocol Move Cost Network Kind Runs on Arrow [DISC’98] O(SST)=O(D) General Spanning tree Relay [OPODIS’09] O(SST)=O(D) General Spanning tree Combine [SSS’10] O(SOT)=O(D) General Overlay tree Ballistic [DISC’05] O(log D) Constant- doubling dimension Hierarchical directory with independent sets Spriral [IPDPS/12] Arbitrary Graphs Hierarchical directory with sparse covers

➢ D is the diameter of the network kind ➢ S is the stretch of the tree used

 

D n O log log2

slide-13
SLIDE 13

13

Problem of Spanning Tree Approaches These two nodes are far in tree

slide-14
SLIDE 14

14

Network graph

Hierarchical Clustering

slide-15
SLIDE 15

15

Alternative representation as a hierarchy tree with leader nodes

Hierarchical Clustering

slide-16
SLIDE 16

16

At the lowest level (level 0) every node is a cluster

Hierarchical Clustering

slide-17
SLIDE 17

p-Doubling Dimension Graphs

Every ball of radius R can be completely covered by at most balls of radius R/2.

2-doubling dimension

2

slide-18
SLIDE 18

Overlay Tree

18

Layers of independent sets of leaders Graph nodes root

1

2 

k 2

2 

k 3

2 

k

D k log 

k

1  k 2  k

… ……

slide-19
SLIDE 19

Parent Node

19

Level i+1 Level i

1

2 

i i

2

Refinement of independent sets

slide-20
SLIDE 20

Parent Set

20

Level i+1 Level i

1

2 

i i

2

Useful for query lookups Constant number of potential parent nodes

slide-21
SLIDE 21

21

General Graphs

The clusters are built from sparse covers Each cluster has diameter The parent set size is at most

) log 2 (

1

n O

i

) (logn O

slide-22
SLIDE 22

Multiple Objects

22

slide-23
SLIDE 23

23

proxy node

root

➢ Assume that is the creator of which invokes the Publish operation ➢ Nodes know their parent in the hierarchy

ξ ξ

Publish Object

slide-24
SLIDE 24

24

root

Send request to the parent leader

Publish Object

slide-25
SLIDE 25

25

root

Continue up phase

Sets downward pointer while going up

Publish Object

slide-26
SLIDE 26

26

root

Continue up phase

Sets downward pointer while going up

Publish Object

slide-27
SLIDE 27

27

root

Root node found, stop up phase

Publish Object

slide-28
SLIDE 28

28

root

A successful Publish operation ξ

Publish Object

slide-29
SLIDE 29

29

root

The publish operation ends at any node with downward path

Publish Object – multiple objects

slide-30
SLIDE 30

30

destination

  • rigin

root

➢ Initially, nodes point downward to object owner (predecessor node) due to Publish operation ➢ Nodes know their parent in the hierarchy

ξ

Move Object

Classic directory approach

slide-31
SLIDE 31

31

Send request to parent leader node

root

Move Object

slide-32
SLIDE 32

32

Continue up phase until downward pointer found

root

Sets downward path while going up

Move Object

slide-33
SLIDE 33

33

Continue up phase

root

Sets downward path while going up

Move Object

slide-34
SLIDE 34

34

Continue up phase

root

Sets downward path while going up

Move Object

slide-35
SLIDE 35

35

Downward pointer found, start down phase

root

Discards path while going down

Move Object

slide-36
SLIDE 36

36

Continue down phase

root

Discards path while going down

Move Object

slide-37
SLIDE 37

37

Continue down phase

root

Discards path while going down

Move Object

slide-38
SLIDE 38

38

Predecessor reached, object move completed

root

Query Lookup is similar without changing the directory structure

Move Object

slide-39
SLIDE 39

39

Move Object - Limitation

For multiple objects the origin path and destination path may not be matched with the same object. move delete wrong path

x

slide-40
SLIDE 40

40

Concurrent -

Insert operations from destination

& Synchronous

Delete operations from source

Common ancestor

Move Object – new scenario

insert delete Inserts and delete eventually meet at lowest common ancestor

slide-41
SLIDE 41

41

Move Object – 2 approaches

slide-42
SLIDE 42

Conclusions

42

O(1) query lookup, and polylog update cost In low doubling dimension graphs Polylog approximation for general graphs Open problem:

  • Prove matching lower bounds for move costs
  • r improve upper bounds
  • Analyze concurrent multiple moves