Efficient evaluation of the valid-time natural join

Joins are arguably the most important relational operators. Poor implementations are tantamount to computing the Cartesian product of the input relations. In a temporal database, the problem is more acute for two reasons. First, conventional techniques are designed for the optimization of joins with equality predicates, rather than the inequality predicates prevalent in valid-time queries. Second, the presence of temporally-varying data dramatically increases the size of the database. These factors require new techniques to efficiently evaluate valid-time joins. The authors address this need for efficient join evaluation in databases supporting valid-time. A new temporal-join algorithm based on tuple partitioning is introduced. This algorithm avoids the quadratic cost of nested-loop evaluation methods; it also avoids sorting. Performance comparisons between the partition-based algorithm and other evaluation methods are provided. While the paper focuses on the important valid-time natural join, the techniques presented are also applicable to other valid-time joins.<<ETX>>

[1]  Christian S. Jensen,et al.  Unifying Temporal Data Models via a Conceptual Model , 1994, Inf. Syst..

[2]  Nick Roussopoulos,et al.  An incremental access method for ViewCache: concept, algorithms, and cost analysis , 1991, TODS.

[3]  Richard T. Snodgrass,et al.  Evaluation of relational algebras incorporating the time dimension in databases , 1991, CSUR.

[4]  Richard T. Snodgrass,et al.  Temporal databases status and research directions , 1990, SGMD.

[5]  Nick Roussopoulos,et al.  Preliminary Design of ADMS±: A Workstation-Mainframe Integrated Architecture for Database Management Systems , 1986, VLDB.

[6]  Eric N. Hanson Processing queries aganist database procedures: a performance analysis , 1988, SIGMOD '88.

[7]  Richard T. Snodgrass,et al.  A relational approach to monitoring complex systems , 1988, TOCS.

[8]  Christian S. Jensen,et al.  Extending Normal Forms to Temporal Relations , 1992 .

[9]  Christian S. Jensen,et al.  Unification of temporal data models , 1993, Proceedings of IEEE 9th International Conference on Data Engineering.

[10]  Albert Croker,et al.  The historical relational data model (HRDM) and algebra based on lifespans , 1986, 1987 IEEE Third International Conference on Data Engineering.

[11]  H. Gunadhi,et al.  Query processing algorithms for temporal intersection joins , 1991, [1991] Proceedings. Seventh International Conference on Data Engineering.

[12]  W. J. Conover,et al.  Practical Nonparametric Statistics , 1972 .

[13]  Michael D. Soo,et al.  Bibliography on temporal databases , 1991, SGMD.

[14]  Arie Segev,et al.  Event-Join Optimization in Temporal Relational Databases , 1989, VLDB.

[15]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[16]  Christian S. Jensen,et al.  Using caching, cache indexing and differential techniques to efficiently support transaction time , 1990 .

[17]  Richard R. Muntz,et al.  Generalized data stream indexing and temporal query processing , 1992, [1992 Proceedings] Second International Workshop on Research Issues on Data Engineering: Transaction and Query Processing.

[18]  Susan Horwitz,et al.  Adding Relational Databases to Existing Software Systems: Implicit Relations and a New Relational Query Evaluation Method , 1986 .

[19]  Eric N. Hanson,et al.  A performance analysis of view materialization strategies , 1987, SIGMOD '87.

[20]  Richard R. Muntz,et al.  Temporal Query Processing and Optimization in Multiprocessor Database Machines , 1992, VLDB.

[21]  Arie Segev,et al.  A glossary of temporal database concepts , 1992, SGMD.

[22]  Arie Segev,et al.  A Framework for Query Optimization in Temporal Databases , 1990, SSDBM.

[23]  David J. DeWitt,et al.  An Evaluation of Non-Equijoin Algorithms , 1991, VLDB.

[24]  Curtis E. Dyreson,et al.  Timestamp semantics and representation , 1993, Inf. Syst..

[25]  Susan Horwitz,et al.  Generating editing environments based on relations and attributes , 1986, TOPL.

[26]  Richard R. Muntz,et al.  Query processing for temporal databases , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[27]  Per-Åke Larson,et al.  Updating derived relations: detecting irrelevant and autonomously computable updates , 1986, VLDB.

[28]  Margaret H. Dunham,et al.  Join processing in relational databases , 1992, CSUR.

[29]  Edwin McKenzie An Algebraic Language for Query and Update of Temporal Databases , 1988 .

[30]  llsoo Ahn,et al.  Temporal Databases , 1986, Computer.

[31]  Richard R. Muntz,et al.  Stream Processing: Temporal Query Processing and Optimization , 1993, Temporal Databases.