Efficient indexing for constraint and temporal databases

  • Sridhar Ramaswamy
Contributed Papers Session 9: Access Methods
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1186)

Abstract

We examine new I/O-efficient techniques for indexing problems in constraint and temporal data models. We present algorithms for these problems that are considerably simpler than previous solutions. Our solutions are unique in the sense that they only use B+-trees rather than special-purpose data structures. Indexing for many general constraint data models can be reduced to interval intersection. We present a new algorithm for this problem using a query-time/space tradeoff, which achieves the optimal query time O(logB n+t/B) I/O's in linear space O(n/B) using B+-trees. (Here, n is the number of intervals, t the number of intervals in the output of a query, and B the disk block size.) It is easy to update this data structure, but small worst-case bounds do not seem possible. Previous approaches have achieved these bounds but are fairly complex and rely mostly on reducing the interval intersection problem to special cases of two-dimensional search. Some of them can also handle updates in O(logB n) I/O's amortized. Indexing in many temporal models becomes a generalization of interval management, where each temporal object is characterized by an interval and a key. There are many different ways of querying these objects, and we achieve optimal bounds for many of these queries. These bounds are achieved using a modification of the technique used for the constraint indexing problem. Our technique is much simpler than other techniques that have been used for achieving similar bounds.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    L. Arge & J. S. Vitter, “Optimal Interval Management in External Memory,” 1995, Private Communication.Google Scholar
  2. [2]
    R. Bayer & E. McCreight, “Organization of Large Ordered Indexes,” Acta Informatica 1 (1972), 173–189.CrossRefGoogle Scholar
  3. [3]
    N. Beckmann, H. Kriegel, R. Schneider & B. Seeger, “The R*-tree: An Efficient and Robust Access Method for Points and Rectangles,” Proc. 1990 ACM-SIGMOD Conference on Management of Data (1990).Google Scholar
  4. [4]
    B. Chazelle, “Filtering Search: A New Approach to Query-Answering,” Siam J. of Computing 15(3) (1986), 703–724.Google Scholar
  5. [5]
    E. F. Codd, “A Relational Model for Large Shared Data Banks,” CACM 13(6) (1970), 377–387.Google Scholar
  6. [6]
    D. Comer, “The Ubiquitous B-tree,” Computing Surveys 11(2) (1979), 121–137.CrossRefGoogle Scholar
  7. [7]
    R. Elmasri, Y. Kim & G. Wuu, “Efficient Implementation Techniques for the Time Index,” Proc. of the 7th IEEE Intl. Data Engineering Conference (1991).Google Scholar
  8. [8]
    R. Elmasri, G. Wuu & Y. Kim, “The Time Index: An Access Structure for Temporal Data,” Proc. 16th Conference on Very Large Databases (1990).Google Scholar
  9. [9]
    Antonin Guttman, “R-Trees: A Dynamic Index Structure for Spatial Searching,” Proc. 1984 ACM-SIGMOD Conference on Management of Data (1985).Google Scholar
  10. [10]
    J. Jaffar & J. L. Lassez, “Constraint Logic Programming,” Proc. 14th ACM POPL (1987).Google Scholar
  11. [11]
    P. C. Kanellakis, G. M. Kuper & P. Z. Revesz, “Constraint Query Languages,” Proc. 9th ACM PODS (1990), invited to the special issue of JCSS on Principles of Database Systems (to appear). A complete version of the paper appears as Technical Report TR-CS-90-31, Brown University.Google Scholar
  12. [12]
    P. C. Kanellakis, S. Ramaswamy, D. E. Vengroff & J. S. Vitter, “Indexing for Data Models with Constraints and Classes,” Proc. 12th ACM PODS (1993), invited to the special issue of JCSS on Principles of Database Systems (to appear). A complete version of the paper appears as Technical Report TR-CS-93-21, Brown University.Google Scholar
  13. [13]
    N. Kangelaris & V. J. Tsotras, “The Snapshot Index, an I/O-Optimal Access Method for Timeslice Queries,” CATT-Tech. Report 93-68, Polytechnic University, Dec. 1993. Accepted for publication, Information Systems, An International Journal, 1994.Google Scholar
  14. [14]
    S. Ramaswamy & S. Subramanian, “Path Caching: A Technique for Optimal External Searching,” Proc. 13th ACM PODS (1994).Google Scholar
  15. [15]
    B. Salzberg & V. J. Tsotras, “A Comparison of Access Methods for Time Evolving Data,” To appear in the ACM Computing Surveys. Available as Technical Report CATT-TR-94-81, Polytechnic Univ. or NU-CCS-94-21, Northeastern Univ.Google Scholar
  16. [16]
    T. Sellis, N. Roussopoulos & C. Faloutsos, “The R+-Tree: A Dynamic Index for Multi-Dimensional Objects,” Proc. 13th VLDB Conference (1987).Google Scholar
  17. [17]
    S. Subramanian & S. Ramaswamy, “The P-range tree: A new data structure for range searching in secondary memory,” Proceedings of the Sixth Annual ACM-SIAM Symposium on Discrete Algorithms (1995).Google Scholar
  18. [18]
    A. U. Tanzel, J. Clifford, S. Gadia, S. Jajodia, A. Segev & R. Snodgrass, eds., Temporal Databases: Theory, Design and Implementation, The Benjamin/Cummings Publishing Company Inc., 1993.Google Scholar

Copyright information

© Springer-Verlag 1997

Authors and Affiliations

  • Sridhar Ramaswamy
    • 1
  1. 1.Bell LabsMurray HillUSA

Personalised recommendations