Skip to main content
Log in

Instance-level worst-case query bounds on R-trees

  • Regular Paper
  • Published:
The VLDB Journal Aims and scope Submit manuscript

Abstract

Even with its significant impacts on the database area, the R-tree is often criticized by its lack of good worst-case guarantees. For example, in range search (where we want to report all the data points in a query rectangle), it is known that on adversely designed datasets and queries, an R-tree can be as slow as a sequential scan that simply reads all the data points. Nevertheless, R-trees work so well on real data that they have been widely implemented in commercial systems. This stark contrast has caused long-term controversy between practitioners and theoreticians as to whether this structure deserves its fame. This paper provides theoretical evidence that, somewhat surprisingly, R-trees are efficient in the worst case for range search on many real datasets. Given any integer \(K\), we explain how to obtain an upper bound on the cost of answering all (i.e., infinitely many) range queries retrieving at most \(K\) objects. On practical data, the upper bound is only a fraction of the overhead of sequential scan (unless, apparently, \(K\) is at the same order as the dataset size). Our upper bounds are tight up to a constant factor, namely they cannot be lowered by more than \(O(1)\) times while still capturing the most expensive queries. Our upper bounds can be calculated in constant time by remembering only three integers. These integers, in turn, are generated from only the leaf MBRs of an R-tree, but not the leaf nodes themselves. In practice, the internal nodes are often buffered in memory, so that the integers aforementioned can be efficiently maintained along with the data updates and made available to a query optimizer at any time. Furthermore, our analytical framework introduces instance-level query bound as a new technique for evaluating the efficiency of heuristic structures in a theory-flavored manner (previously, experimentation was the dominant assessment method).

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

Notes

  1. All rectangles in this paper are axis-parallel.

  2. If the rectangle is covered by \((-\infty , x] \times (-\infty , y]\), it is not counted by \(\mathrm{downquad}(p, S)\).

  3. Such a query always exists for a generic \(P\). To see this, move a vertical sweep line \(\ell \) rightward starting from \(x = -\infty \), and stop as soon as \(\tau \) points are on or to the left of \(\ell \). The swept region is a range query with size \(\tau \).

References

  1. Arge, L., de Berg, M., Haverkort, H.J., Yi, K.: The priority R-tree: a practically efficient and worst-case optimal R-tree. In: Proceedings of ACM Management of Data (SIGMOD), pp. 347–358 (2004)

  2. Beckmann, N., Kriegel, H., Schneider, R., Seeger, B.: The R*-tree: an efficient and robust access method for points and rectangles. In: Proceedings of ACM Management of Data (SIGMOD), pp. 322–331 (1990)

  3. Bentley, J.L.: Multidimensional binary search trees used for associative searching. Commun. ACM (CACM) 18(9), 509–517 (1975)

    Article  MATH  Google Scholar 

  4. Faloutsos, C., Kamel, I.: Beyond uniformity and independence: analysis of R-trees using the concept of fractal dimension. In: Proceedings of ACM Symposium on Principles of Database Systems (PODS), pp. 4–13 (1994)

  5. Guttman, A.: R-trees: a dynamic index structure for spatial searching. In: Proceedings of ACM Management of Data (SIGMOD), pp. 47–57 (1984)

  6. Hellerstein, J.M., Koutsoupias, E., Miranker, D.P., Papadimitriou, C.H., Samoladas, V.: On a model of indexability and its bounds for range queries. JACM 49(1), 35–55 (2002)

    Google Scholar 

  7. Hjaltason, G.R., Samet, H.: Distance browsing in spatial databases. ACM Trans. Datab. Syst. 24(2), 265–318 (1999)

    Article  Google Scholar 

  8. Kamel, I., Faloutsos, C.: Hilbert R-tree: an improved R-tree using fractals. In: Proceedings of Very Large Data Bases (VLDB), pp. 500–509 (1994)

  9. Kanth, K.V.R., Singh, A.K.: Optimal dynamic range searching in non-replicating index structures. In: Proceedings of International Conference on Database Theory (ICDT), pp. 257–276 (1999)

  10. Leutenegger, S.T., Edgington, J.M., Lopez, M.A.: STR: A simple and efficient algorithm for R-tree packing. In: Proceedings of International Conference on Data Engineering (ICDE), pp. 497–506 (1997)

  11. Pagel, B.-U., Six, H.-W., Toben, H., Widmayer, P.: Towards an analysis of range query performance in spatial data structures. In: Proceedings of ACM Symposium on Principles of Database Systems (PODS), pp. 214–221 (1993)

  12. Papadias, D., Tao, Y., Fu, G., Seeger, B.: Progressive skyline computation in database systems. ACM Trans. Datab. Syst. 30(1), 41–82 (2005)

    Article  Google Scholar 

  13. Procopiuc, O., Agarwal, P.K., Arge, L., Vitter, J.S.: Bkd-tree: A dynamic scalable kd-tree. In: Proceedings of Symposium on Advances in Spatial and Temporal Databases (SSTD), pp. 46–65 (2003)

  14. Robinson, J.T.: The K-D-B-tree: a search structure for large multidimensional dynamic indexes. In: Proceedings of ACM Management of Data (SIGMOD), pp. 10–18 (1981)

  15. Roussopoulos, N., Kelley, S., Vincent, F.: Nearest neighbor queries. In: Proceedings of ACM Management of Data (SIGMOD), pp. 71–79 (1995)

  16. Sellis, T.K., Roussopoulos, N., Faloutsos, C.: The R+-tree: A dynamic index for multi-dimensional objects. In: Proceedings of Very Large Data Bases (VLDB), pp. 507–518 (1987)

  17. Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update and paging rules. CACM 28(2), 202–208 (1985)

    Article  MathSciNet  Google Scholar 

  18. Tao, Y., Papadias, D.: Performance analysis of R*-trees with arbitrary node extents. IEEE Trans. Knowl. Data Eng. 16(6), 653–668 (2004)

    Article  Google Scholar 

  19. Theodoridis, Y., Sellis, T.K.: A model for the prediction of R-tree performance. In: Proceedings of ACM Symposium on Principles of Database Systems (PODS), pp. 161–171 (1996)

Download references

Acknowledgments

The research of Yufei Tao, Xiaocheng Hu, and Cheng Sheng was supported by Grants GRF 4165/11, GRF 4164/12, and GRF 4168/13 from HKRGC. The research of Yi Yang and Shuigeng Zhou was supported by Research Innovation Program of Shanghai Municipal Education Committee under Grant No. 13ZZ003.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yufei Tao.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tao, Y., Yang, Y., Hu, X. et al. Instance-level worst-case query bounds on R-trees. The VLDB Journal 23, 591–607 (2014). https://doi.org/10.1007/s00778-013-0339-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00778-013-0339-5

Keywords

Navigation