Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Query Processing in Spatial Network Databases presented by Hao Hong Dimitris Papadias Jun Zhang Hong Kong University of Science and Technology Nikos.

Similar presentations


Presentation on theme: "1 Query Processing in Spatial Network Databases presented by Hao Hong Dimitris Papadias Jun Zhang Hong Kong University of Science and Technology Nikos."— Presentation transcript:

1 1 Query Processing in Spatial Network Databases presented by Hao Hong Dimitris Papadias Jun Zhang Hong Kong University of Science and Technology Nikos MamoulisUniversity of Hong Kong Yufei TaoCity University of Hong Kong

2 2 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

3 3 Introduction Motivation Euclidean distance vs. network distance Euclidean distance <= network distance Conventional spatial queries: K Nearest neighbor query: retrieves the k ponits closest to the query location Range query: retrieves the points covered by certain range Intersection join: retrieves all the intersected points from the query location sets

4 4 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

5 5 Spatial query processing in Euclidean Space An R-tree index Multidimentional extension of B-tree (quoted from Query Processing in Spatial Network Databases) MBR: Minimum Bounding Rectangle Spatial points are clustered according to the distances between their MBR Hereby, R-tree is fast for spatial query

6 6 Spatial query processing in Euclidean Space an example n1 n3 n4 n6 n8 E1E2 E3 E4 n2 n5 n7 E5 E6E1 E2 n9 E5E6E3E4 n1n2n7n8n9n3n4n5n6

7 7 Disk-based graph representations- CCAM structure A graph can be represented as An adjacency list Two-dimensional matrix The Connectivity-clustered Access Method (CCAM) structure Stores the single dimensional lists Stores the lists of neighbor nodes together

8 8 Disk-based graph representations- CCAM structure An example n1 n2 n3 n4 n5 A graph n1n4 A B-tree in order of node id n1n2n3n4n5 Disk pages List 1...... List 5 List 3...... List 4 page1 page2 5 6 2 1 4 n22n47 7 n55 null Adjacency list of n1

9 9 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

10 10 Architecture The above example n1 n2 n3 n4 n5 The network E1E2 Network R-tree n1n2n3n4n5 5 6 2 1 4 7 E1 E2 Adjacency component List 1...... List 5 List 3...... List 4 page1 page2 Adjacency list of n1 2MBR(n1, n2) page17MBR(n1, n4) page15MBR(n1, n5)

11 11 Architecture E1E2 Network R-tree n1n2n3n4n5 page1 page2 listPtr Disk pages 2MBR(n1, n2) listPtr7MBR(n1, n4) listPtr5MBR(n1, n5) Adjacency component : Enanle fast access to Neighbor nodes and the corresponding polyline.................. listPtr4MBR(n4, n5) pageN pageM polyline Component: Stores the endpoints And the MBR of each segment Polyline of n1,n2 Page2 Polyline of n1,n4 Polyline of n1, n5... page1... pageNMBR(n1, n2) pageNMBR(n1, n4) pageNMBR(n1, n5)...

12 12 Primitive operations Check_entity(seg,p): if entity p is covered by seg, then it returns true Find_segment(p): returns the segment which covers entity p If there are more than one result, then return the first one If there is no result, then return the most appoximate one Find_entities(seg): returns the entities which are covered by the specified segment seg Compute_ND(p1, p2): returns the network distance between the specified entities p1 and p2 P1 and p2 are arbitrary points in the network

13 13 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

14 14 Nearest neighbor query Incremental Euclidean Restriction (IER) algorithm: Find the first 1 nearest neighbors of location q n1 n2 n3 n4 n5 5 5 2 1 4 7 Find the Euclidean nearest neighbor n3 Compute the network distance: d N (q, n3)= Compute_ND(q, n3) Set d Emax = d N (q, n3) Repeat the process of retrieving other nodes. To node nk, if d N (q, nk) < d N (q, n3), then set d Emax = d N (q, nk) Otherwise, return the node which has set d Emax and stop q 1

15 15 Nearest neighbor query Incremental Euclidean Restriction (IER) algorithm: Find the k nearest neighbors of location q Has the R-tree sorted in ascending order of their network distance to q If the k th node is n k, then set d Emax = d N (q, n k ) Repeat the process of retrieving other nodes (n k+1, n k+2,..., n m ), for node n i, if d N (q, n i ) <= d Emax, then set d Emax = d N (q, n i ) Insert n i to the queue of k nesrest neighbors Remove the former k th node Otherwise, return the node which has set d Emax and stop

16 16 Nearest neighbor query In this case, according to IER algorithm, p5 will be retrieved as the last one, because it has the largest Euclidean distance to q Quoted from Query Processing in Spatial Network Databases

17 17 Nearest neighbor query Incremental Network Expansion (INE) algorithm Performe the nodes checking in the order of encounting sequence Initiate the Q to be (n1, n2), which covers q Since (n1, n2) doesn ‘ t cover any entity, expand n1 with n7, and Q = Repeate the expansion Expand n2 with n4 and n3, Q = Here p5 is covered by segment (n2, n4), set threshold d Nmax = d N (q, p5) = 6 Since the next one in the Q has d N (q, n4) > d Nmax, the algorithm terminates, returning p5.

18 18 Other queries Other queries: Range query Closest-Pairs E-distance joins Provide algorithms which process queries in euclidean space and network spaces

19 19 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

20 20 Performancess Experiments comparing between Euclidean restriction (ER) and Network Expansion (NE) Experimental targets: Page accesses CPU cost

21 21 Nearest Neighbor Queries Experiments |S|=the number of the entity set and |N|=the number of segments When |S| / |N| decrease, the entities among segments are relatively sparse, which relatively increases false hits. Therefore, the amount of network computation is increased. Quoted from Query Processing in Spatial Network Databases

22 22 Outline Introduction Related work Spatial query processing in Euclidean Space Disk-based graph representations- CCAM structure Spatial query in network databases Architecture Spatial queries: Nearest neighbor query Other queries Performances Summary

23 23 Relating to DE3 project Our idea: Spatial network is represented by Oracle Spatial (SDO_Geometry) Indexing with R-tree Tracking moving objects with segment-based policy We have in common: Processing NN query and Range query in Euclidean space and network space Using R-tree index We can borrow the idea: The network expansion policy

24 24 Summary Strong points Contribution: the data structure is high efficient Support more than one query Weak points It is not wasy to read, because there are too many brackets among lines.


Download ppt "1 Query Processing in Spatial Network Databases presented by Hao Hong Dimitris Papadias Jun Zhang Hong Kong University of Science and Technology Nikos."

Similar presentations


Ads by Google