Join operations in temporal databases

Abstract.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 evaluation 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 a database. These factors indicate that specialized techniques are needed to efficiently evaluate temporal joins.We address this need for efficient join evaluation in temporal databases. Our purpose is twofold. We first survey all previously proposed temporal join operators. While many temporal join operators have been defined in previous work, this work has been done largely in isolation from competing proposals, with little, if any, comparison of the various operators. We then address evaluation algorithms, comparing the applicability of various algorithms to the temporal join operators and describing a performance study involving algorithms for one important operator, the temporal equijoin. Our focus, with respect to implementation, is on non-index-based join algorithms. Such algorithms do not rely on auxiliary access paths but may exploit sort orderings to achieve efficiency.

[1]  Christos Faloutsos,et al.  The R+-Tree: A Dynamic Index for Multi-Dimensional Objects , 1987, VLDB.

[2]  Thomas Zurek,et al.  Optimisation of Partitioned Temporal Joins , 1997 .

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

[4]  Sushil Jajodia,et al.  Temporal Databases: Theory, Design, and Implementation , 1993 .

[5]  Richard T. Snodgrass,et al.  Coalescing in Temporal Databases , 1996, VLDB.

[6]  Ramez Elmasri,et al.  The Consensus Glossary of Temporal Database Concepts - February 1998 Version , 1997, Temporal Databases, Dagstuhl.

[7]  Albert Croker,et al.  The Historical Relational Data Model (HRDM) Revisited , 1993, Temporal Databases.

[8]  Antonin Guttman,et al.  R-trees: a dynamic index structure for spatial searching , 1984, SIGMOD '84.

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

[10]  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.

[11]  Robert H. Halstead,et al.  Parallel Symbolic Computing , 1986, Computer.

[12]  Peter J. Stuckey,et al.  Improving Temporal Joins Using Histograms , 2000, DEXA.

[13]  Farshad Fotouhi,et al.  Efficient Processing of Time-Joins in Temporal Data Bases , 1993, DASFAA.

[14]  Frank Manola,et al.  PROBE Spatial Data Modeling and Query Processing in an Image Database Application , 1988, IEEE Trans. Software Eng..

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

[16]  Richard T. Snodgrass,et al.  Sequenced subset operators: definition and implementation , 2002, Proceedings 18th International Conference on Data Engineering.

[17]  Ramez Elmasri,et al.  TSQL2 language specification , 1994, SGMD.

[18]  Ram Danturti Gopal Join processing in relational database systems , 1993 .

[19]  Ming-Ling Lo,et al.  Spatial hash-joins , 1996, SIGMOD '96.

[20]  David J. DeWitt,et al.  Partition based spatial-merge join , 1996, SIGMOD '96.

[21]  Bernhard Seeger,et al.  Efficient temporal join processing using indices , 2002, Proceedings 18th International Conference on Data Engineering.

[22]  Vassilis J. Tsotras,et al.  Comparison of access methods for time-evolving data , 1999, CSUR.

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

[24]  Hanan Samet,et al.  The Design and Analysis of Spatial Data Structures , 1989 .

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

[26]  Sridhar Ramaswamy,et al.  Scalable Sweeping-Based Spatial Join , 1998, VLDB.

[27]  Ramez Elmasri,et al.  The Time Index: An Access Structure for Temporal Data , 1990, VLDB.

[28]  Goetz Graefe,et al.  Query evaluation techniques for large databases , 1993, CSUR.

[29]  Jack A. Orenstein Spatial query processing in an object-oriented database system , 1986, SIGMOD '86.

[30]  Christian S. Jensen,et al.  A Foundation for Conventional and Temporal Query Optimization Addressing Duplicates and Ordering , 2001, IEEE Trans. Knowl. Data Eng..

[31]  Kotagiri Ramamohanarao,et al.  Join algorithm costs revisited , 1996, The VLDB Journal.

[32]  Leonard D. Shapiro,et al.  Sort vs . Hash Revisited , 2004 .

[33]  Dieter Pfoser,et al.  Incremental join of time-oriented data , 1999, Proceedings. Eleventh International Conference on Scientific and Statistical Database Management.

[34]  Bernhard Seeger,et al.  Query Processing Techniques for Multiversion Access Methods , 1996, VLDB.

[35]  Shashi K. Gadia,et al.  A homogeneous relational model and query languages for temporal databases , 1988, TODS.

[36]  Bernhard Seeger,et al.  Progressive Merge Join: A Generic and Non-blocking Sort-based Join Algorithm , 2002, VLDB.

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

[38]  Ming-Ling Lo,et al.  Spatial joins using seeded trees , 1994, SIGMOD '94.

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

[40]  Beng Chin Ooi,et al.  On Spatially Partitioned Temporal Join , 1994, VLDB.

[41]  Hans-Peter Kriegel,et al.  The R*-tree: an efficient and robust access method for points and rectangles , 1990, SIGMOD '90.

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

[43]  Arie Segev,et al.  A consensus glossary of temporal database concepts , 1994, SIGMOD 1994.

[44]  Wei Li,et al.  Skew handling techniques in sort-merge join , 2002, SIGMOD '02.

[45]  Michael Stonebraker,et al.  Implementation techniques for main memory database systems , 1984, SIGMOD '84.

[46]  Christian S. Jensen,et al.  Extending Existing Dependency Theory to Temporal Databases , 1996, IEEE Trans. Knowl. Data Eng..

[47]  Gultekin Özsoyoglu,et al.  Temporal and Real-Time Databases: A Survey , 1995, IEEE Trans. Knowl. Data Eng..

[48]  Shamkant B. Navathe,et al.  Temporal Extensions to the Relational Model and SQL , 1993, Temporal Databases.

[49]  James Clifford,et al.  On an algebra for historical relational databases: two views , 1985, SIGMOD Conference.

[50]  Ramez Elmasri,et al.  A consensus glossary of temporal database concepts , 1994, SGMD.

[51]  Anil Kumar,et al.  Temporal Database Bibliography Update , 1996, SIGMOD Rec..

[52]  Arie Segev,et al.  Join Processing and Optimization in Temporal Relational Databases , 1993, Temporal Databases.

[53]  Robert Kooi,et al.  Query Optimization in INGRES. , 1982 .

[54]  Christian S. Jensen,et al.  Incremental Implementation Model for Relational Databases with Transaction Time , 1991, IEEE Trans. Knowl. Data Eng..

[55]  Thomas Zurek,et al.  Optimisation of Partitioned Termporal Joins , 1997, BNCOD.

[56]  Christian S. Jensen,et al.  Unifying Temporal Data Models via a Conceptual Model Unifying Temporal Data Models via a Conceptual Model , 1993 .

[57]  Christian S. Jensen,et al.  Efficient evaluation of the valid-time natural join , 1994, Proceedings of 1994 IEEE 10th International Conference on Data Engineering.

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

[59]  Goetz Graefe,et al.  Sort versus Hash Revisited , 1994, IEEE Trans. Knowl. Data Eng..

[60]  R. Elmasri,et al.  Efficient temporal join processing using time index , 1996, Proceedings of 8th International Conference on Scientific and Statistical Data Base Management.

[61]  Sushil Jajodia,et al.  Temporal Databases: Research and Practice , 1998 .

[62]  Christian S. Jensen,et al.  An Algebra for TSQL2 , 1995, The TSQL2 Temporal Query Language.

[63]  Hanan Samet,et al.  Hierarchical Spatial Data Structures , 1989, SSD.

[64]  Raghu Ramakrishnan,et al.  Database Management Systems , 1976 .

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