The Community for Technology Leaders
RSS Icon
Issue No.08 - August (2010 vol.22)
pp: 1158-1175
Jagan Sankaranarayanan , University of Maryland, College Park, MD
The popularity of location-based services and the need to do real-time processing on them has led to an interest in performing queries on transportation networks, such as finding shortest paths and finding nearest neighbors. The challenge here is that the efficient execution of spatial operations usually involves the computation of distance along a spatial network instead of "as the crow flies,” which is not simple. Techniques are described that enable the determination of the network distance between any pair of points (i.e., vertices) with as little as O(n) space rather than having to store the n^2 distances between all pairs. This is done by being willing to expend a bit more time to achieve this goal such as O(\log n) instead of O(1), as well as by accepting an error \varepsilon in the accuracy of the distance that is provided. The strategy that is adopted reduces the space requirements and is based on the ability to identify groups of source and destination vertices for which the distance is approximately the same within some \varepsilon. The reductions are achieved by introducing a construct termed a distance oracle that yields an estimate of the network distance (termed the \varepsilon-approximate distance) between any two vertices in the spatial network. The distance oracle is obtained by showing how to adapt the well-separated pair technique from computational geometry to spatial networks. Initially, an \varepsilon-approximate distance oracle of size O({n\over \varepsilon^2} ) is used that is capable of retrieving the approximate network distance in O(\log n) time using a B-tree. The retrieval time can be theoretically reduced further to O(1) time by proposing another \varepsilon-approximate distance oracle of size O({n \log n\over \varepsilon^2} ) that uses a hash table. Experimental results indicate that the proposed technique is scalable and can be applied to sufficiently large road networks. For example, a 10-percent-approximate oracle (\varepsilon = 0.1) on a large network yielded an average error of 0.9 percent with 90 percent of the answers having an error of 2 percent or less and an average retrieval time of 68 \mu {\rm seconds}. The fact that the network distance can be approximated by one value is used to show how a number of spatial queries can be formulated using appropriate SQL constructs and a few built-in primitives. The result is that these operations can be executed on almost any modern database with no modifications, while taking advantage of the existing query optimizers and query processing strategies.
Road networks, distance oracle, query processing.
Jagan Sankaranarayanan, "Query Processing Using Distance Oracles for Spatial Networks", IEEE Transactions on Knowledge & Data Engineering, vol.22, no. 8, pp. 1158-1175, August 2010, doi:10.1109/TKDE.2010.75
[1] J. Sankaranarayanan and H. Samet, “Distance Oracles for Spatial Networks,” Proc. IEEE Int'l Conf. Data Eng. (ICDE), pp. 652-663, Apr. 2009.
[2] D. Papadias, J. Zhang, N. Mamoulis, and Y. Tao, “Query Processing in Spatial Network Databases,” Proc. Conf. Very Large Data Bases (VLDB), pp. 802-813, Sept. 2003.
[3] H.-J. Cho and C.-W. Chung, “An Efficient and Scalable Approach to CNN Queries in a Road Network,” Proc. Conf. Very Large Data Bases (VLDB), pp. 865-876, Sept. 2005.
[4] N. Jing, Y.-W. Huang, and E.A. Rundensteiner, “Hierarchical Encoded Path Views for Path Query Processing: An Optimal Model and Its Performance Evaluation,” IEEE Trans. Knowledge and Data Eng., vol. 10, no. 3, pp. 409-432, May 1998.
[5] S. Jung and S. Pramanik, “An Efficient Path Computation Model for Hierarchically Structured Topographical Road Maps,” IEEE Trans. Knowledge and Data Eng., vol. 14, no. 5, pp. 1029-1046, Sept./Oct. 2002.
[6] H. Samet, Foundations of Multidimensional and Metric Data Structures. Morgan-Kaufmann, 2006.
[7] H. Bast, S. Funke, D. Matijevic, P. Sanders, and D. Schultes, “In Transit to Constant Time Shortest-Path Queries in Road Networks,” Proc. Workshop Algorithm Eng. and Experiments (ALENEX), pp. 34-43, Jan. 2007.
[8] A.V. Goldberg and R.F. Werneck, “Computing Point-to-Point Shortest Paths from External Memory,” Proc. Workshop Algorithm Eng. and Experiments (ALENEX), Jan. 2005.
[9] H. Samet, J. Sankaranarayanan, and H. Alborzi, “Scalable Network Distance Browsing in Spatial Databases,” Proc. ACM SIGMOD, pp. 43-54, June 2008.
[10] J. Sankaranarayanan, H. Alborzi, and H. Samet, “Efficient Query Processing on Spatial Networks,” Proc. ACM Int'l Workshop Geographic Information Systems (GIS), pp. 200-209, Nov. 2005.
[11] D. Wagner and T. Willhalm, “Geometric Speed-Up Techniques for Finding Shortest Paths in Large Sparse Graphs,” Proc. European Symp. Algorithms (ESA), pp. 776-787, Sept. 2003.
[12] J. Sankaranarayanan, H. Alborzi, and H. Samet, “Enabling Query Processing on Spatial Networks,” Proc. IEEE Int'l Conf. Data Eng. (ICDE), p. 163, Apr. 2006.
[13] G.M. Hunter and K. Steiglitz, “Operations on Images Using Quad Trees,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 1, no. 2, pp. 145-153, Apr. 1979.
[14] J. Sankaranarayanan, H. Samet, and H. Alborzi, “Path Oracles for Spatial Networks,” Proc. Conf. Very Large Data Bases (VLDB), vol. 2, no. 1, pp. 1210-1221, Aug. 2009.
[15] P.B. Callahan and S.R. Kosaraju, “Faster Algorithms for Some Geometric Graph Problems in Higher Dimensions,” Proc. ACM-SIAM Symp. Discrete Algorithms (SODA), pp. 291-300, Jan. 1993.
[16] J. Gao and L. Zhang, “Well-Separated Pair Decomposition for the Unit-Disk Graph Metric and Its Applications,” Proc. Ann. ACM Symp. Theory of Computing (STOC), pp. 483-492, July 2003.
[17] J. Gudmundsson, C. Levcopoulos, G. Narasimhan, and M. Smid, “Approximate Distance Oracles for Geometric Graphs,” Proc. ACM-SIAM Symp. Discrete Algorithms (SODA), pp. 828-837, Jan. 2002.
[18] G. Narasimhan and M. Smid, “Approximating the Stretch Factor of Euclidean Graphs,” SIAM J. Computing, vol. 30, no. 3, pp.978-989, 2000.
[19] C. Shahabi, M.R. Kolahdouzan, and M. Sharifzadeh, “A Road Network Embedding Technique for k-Nearest Neighbor Search in Moving Object Databases,” GeoInformatica, vol. 7, no. 3, pp. 255-273, Sept. 2003.
[20] H.-P. Kriegel, P. Kröger, M. Renz, and T. Schmidt, “Hierarchical Graph Embedding for Efficient Query Processing in Very Large Traffic Networks,” Proc. Int'l Conf. Scientific and Statistical Database Management (SSDBM), pp. 150-167, July 2008.
[21] N. Linial, E. London, and Y. Rabinovich, “The Geometry of Graphs and Some of Its Algorithmic Applications,” Combinatorica, vol. 15, pp. 215-245, 1995.
[22] M. Thorup and U. Zwick, “Approximate Distance Oracles,” Proc. Ann. ACM Symp. Theory of Computing (STOC), pp. 183-192, 2001.
[23] P.B. Callahan and S.R. Kosaraju, “A Decomposition of Multidimensional Point Sets with Applications to k-Nearest-Neighbors and n-Body Potential Fields,” J. ACM, vol. 42, no. 1, pp. 67-90, Jan. 1995.
[24] T.M. Chan, “Well-Separated Pair Decomposition in Linear Time?” Information Processing Letters, vol. 107, no. 5, pp. 138-141, Aug. 2008.
[25] J.A. Orenstein, “Multidimensional Tries Used for Associative Searching,” Information Processing Letters, vol. 14, no. 4, pp. 150-157, June 1982.
[26] J. Fischer and S. Har-Peled, “Dynamic Well-Separated Pair Decomposition Made Easy,” Proc. Canadian Conf. Computational Geometry (CCCG), pp. 235-238, Aug. 2005.
[27] G.M. Morton, “A Computer Oriented Geodetic Data Base and a New Technique in File Sequencing,” technical report, IBM Ltd., 1966.
[28] I. Gargantini, “An Effective Way to Represent Quadtrees,” Comm. ACM, vol. 25, no. 12, pp. 905-910, Dec. 1982.
[29] G.R. Hjaltason and H. Samet, “Ranking in Spatial Databases,” Proc. Int'l Symp. Advances in Spatial Databases (SSD), pp. 83-95, Aug. 1995.
[30] G.R. Hjaltason and H. Samet, “Incremental Distance Join Algorithms for Spatial Databases,” Proc. ACM SIGMOD, pp. 237-248, June 1998.
[31] J. Sankaranarayanan, H. Alborzi, and H. Samet, “Distance Join Queries on Spatial Networks,” Proc. ACM Int'l Workshop Geographic Information Systems (GIS), pp. 211-218, Nov. 2006.
[32] H. Samet, H. Alborzi, F. Brabec, C. Esperança, G.R. Hjaltason, F. Morgan, and E. Tanin, “Use of the SAND Spatial Browser for Digital Government Applications,” Comm. ACM, vol. 46, no. 1, pp.63-66, Jan. 2003.
[33] J.L. Bentley, “Decomposable Searching Problems,” Information Processing Letters, vol. 8, no. 5, pp. 244-251, June 1979.
[34] S. Chaudhuri, “An Overview of Query Optimization in Relational Systems,” Proc. Symp. Principles of Database Systems (PODS), pp.34-43, June 1998.
[35] A. Guttman, “R-Trees: A Dynamic Index Structure for Spatial Searching,” Proc. ACM SIGMOD, pp. 47-57, June 1984.
[36] H. Shin, B. Moon, and S. Lee, “Adaptive Multi-Stage Distance Join Processing,” Proc. ACM SIGMOD, pp. 343-354, May 2000.
[37] M.J. Carey and D. Kossmann, “On Saying ‘Enough Already!’ in SQL,” Proc. ACM SIGMOD, pp. 219-230, May 1997.
[38] S. Har-Peled, “Geometric Approximation Algorithms,” Collection of Lecture Notes, Nov. 2008.
[39] U.S. Census Bureau, “TIGER/Line Files, Census 2000,” tiger2000.html, Oct. 2001.
[40] USGS, “Major Roads of the United States,” http://nationalatlas. govatlasftp.html, Nov. 1999.
6 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool