Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

17
Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras

Transcript of Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Page 1: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Handling Spatial Data In P2P Systems

Verena Kantere, Timos Sellis, Yannis Kouvaras

Page 2: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Problem Definition

Assumptions: Structure P2P Overlays Spatial Data in Peers

Problem: Necessity for indexing and routing

techniques for such an environment

Page 3: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Technique Requirements

We need a technique that: Guarantees the retrieval of any existing

spatial information in the system Achieves satisfying index size for any node Achieves a satisfying length for any search

path Provides easier access to popular

information Preserves proximity of areas

Page 4: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Related Work

P2PR-tree (Workshop of EDBT ‘04) Quad-tree approach (Poster in

ICDE’05) kd-tree approach (WebDB’04)

Page 5: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Partitioning Space

Spatial Coding

0

1

1

2

2

2

3

3

3

3

4

4

4

5

5 6

0

1

1

2

2

2

3

3

3

3

4

4

4

5

5 6

1

1

02

2

2

3

3

3

3

4

4

4

5

56

Page 6: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Partitioning Space cont’d

The code of an area A is: A azaxay

az: is the granularity level, i.e. the size in terms of cells. ax: is the average of the digit d1 of all the area cells. ay: is the average of the digit d2 of all the area cells.

Distance Metrics:d1(A1, A2) = |a1x-a2x|+|a1y-a2y|d2(A1, A2) = ||a1x-a2x|-|a1y-a2y||

D(A1, A2) d1d2

Dzoom(A1, A2) D(A1, A2)/(0.5*|A1.az+A2.az|)

Page 7: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Distributed Indexing for Spatial Areas

Distributed Indexing Algorithm Step 1: Indexing the grids of each level Phase A: Indexing areas of the same

grid Phase B: Indexing areas of other grids of

the same level Step 2: Indexing the grids of other

levels

Page 8: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Grid Example

0 7 1 6

1 8 3 6

5 6

7 6

9 6

11 6

13 6

3 8

5 8

7 8

9 8

11 8

13 8

2 7

4 7

6 7

8 7

10 7

12 7

14 7

3 4

5 4

7 4

9 4

11 4

2 5

4 5

6 5

8 5

10 5

12 5

5 2

7 2

9 2

4 3

6 3

8 3

10 3

6 1

8 1

7 0

3 10

5 10

7 10

9 10

11 10

5 12

7 12

9 12

2 9

4 9

6 9

8 9

10 9

12 9

4 11

6 11

8 11

10 11

6 13

8 137 14

Page 9: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Direct Neighbors &Data Hashing

Peers have 2 neighbors on each dimension: Horizontal Vertical PerpendicularNeighbors are the closest peers on each

direction. Areas are stored to the closest neighbor

following a priorities of dimensions

Page 10: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Direct Neighbors: Examples

horizontal successor

verticalsuccessor

horizontalpredecessor

verticalpredecessor

1st quadrant2nd quadrant

3rd quadrant 4th quadrant

Page 11: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Routing of Spatial Queries

Basic Routing Algorithm Step 1: Find a peer corresponding to

the same size as the sought area. Step 2: Find a peer hosting the sought

area or an overlapping area of the latterStep 3: Find the peer hosting the sought

area

Page 12: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Routing Example

0 7 1 6

1 8 3 6

5 6

7 6

9 6

11 6

13 6

3 8

5 8

7 8

9 8

11 8

13 8

2 7

4 7

6 7

8 7

10 7

12 7

14 7

3 4

5 4

7 4

9 4

11 4

2 5

4 5

6 5

8 5

10 5

12 5

5 2

7 2

9 2

4 3

6 3

8 3

10 3

6 1

8 1

7 0

3 10

5 10

7 10

9 10

11 10

5 12

7 12

9 127 14

2 9

4 9

6 9

8 9

10 9

12 9

4 11

6 11

8 11

10 11

6 13

8 13

1

2

suc

suc

su

c

suc

suc/pred

3

pred

Page 13: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Details…

0 7 1 6

1 8 3 6

5 6

7 6

9 6

11 6

13 6

3 8

5 8

7 8

9 8

11 8

13 8

2 7

4 7

6 7

8 7

10 7

12 7

14 7

3 4

5 4

7 4

9 4

11 4

2 5

4 5

6 5

8 5

10 5

12 5

5 2

7 2

9 2

4 3

6 3

8 3

10 3

6 1

8 1

7 0

3 10

5 10

7 10

9 10

11 10

5 12

7 12

9 12

2 9

4 9

6 9

8 9

10 9

12 9

4 11

6 11

8 11

10 11

6 13

8 137 14

suc

suc

0 7 1 6

1 8 3 6

5 6

7 6

9 6

11 6

13 6

3 8

5 8

7 8

9 8

11 8

13 8

2 7

4 7

6 7

8 7

10 7

12 7

14 7

3 4

5 4

7 4

9 4

11 4

2 5

4 5

6 5

8 5

10 5

12 5

5 2

7 2

9 2

4 3

6 3

8 3

10 3

6 1

8 1

7 0

3 10

5 10

7 10

9 10

11 10

5 12

7 12

9 12

2 9

4 9

6 9

8 9

10 9

12 9

4 11

6 11

8 11

10 11

6 13

8 13

-2 7 -1 6

-1 8

0 5 1 4 2 3 3 2 4 1 5 0 6 -1 7 -2

0 9

1 10

2 11

3 12

4 13

5 14

6 15

7 16

8 -1

9 0

10 1

11 2

12 3

13 4

14 5

15 6

16 78 15 9 14 10 13 11 12 12 11 13 10 14 9 15 8

7 14

Page 14: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Complexity Characteristics

Complexity for both pure Chord and our method is O(3log2n).

But with our method: Peers with big areas are favored with

small indexes Shorter search paths for bigger areas The search path grows with the

relative distance

Page 15: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Assignment of Peer IDs

The peer ID plays a significant role in our approach joining peers can ask for specific ids: it is adequate to assign an id that

belongs to the same or similar level as the requested id

The above constraint loosens with the size of the area (higher levels are more connected)

Page 16: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Preliminary Experiments

0

1

2

3

4

5

6

6> 12> 24> RANDProximity

Ave

rage

# o

f hop

s

S1024 C1024 S2048 C2048 S4096 C4096

Page 17: Handling Spatial Data In P2P Systems Verena Kantere, Timos Sellis, Yannis Kouvaras.

Preliminary Experiments (2)

0

1

2

3

4

5

6

6> 12> 24> RANDProximity

Ave

rage

# o

f hop

s

S400 C400 S900 C900 S1400 C1400