This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Efficient Differential Timeslice Computation
July/August 1998 (vol. 10 no. 4)
pp. 599-611

Abstract—Transaction-time databases support access to not only the current database state, but also previous database states. Supporting access to previous database states requires large quantities of data and necessitates efficient temporal query processing techniques. In previous work, we have presented a log-based storage structure and algorithms for the differential computation of previous database states. Timeslices—i.e., previous database states—are computed by traversing a log of database changes, using previously computed and cached timeslices as outsets. When computing a new timeslice, the cache will contain two candidate outsets: an earlier outset and a later outset. The new timeslice can be computed by either incrementally updating the earlier outset or decrementally "downdating" the later outset using the log. The cost of this computation is determined by the size of the log between the outset and the new timeslice. This paper proposes an efficient algorithm that identifies the cheaper outset for the differential computation. The basic idea is to compute the sizes of the two pieces of the log by maintaining and using a tree structure on the timestamps of the database changes in the log. The lack of a homogeneous node structure, a controllable and high fill-factor for nodes, and of appropriate node allocation in existing tree structures (e.g., B+-trees, Monotonic B+-trees, and Append-only trees) render existing tree structures unsuited for our use. Consequently, a specialized tree structure, the Pointer-less Insertion tree, is developed to support the algorithm. As a proof of concept, we have implemented a main memory version of the algorithm and its tree structure.

[1] M.E. Adiba and B.G. Lindsay, "Database Snapshots," Proc. VLDB, pp. 86-91, 1980.
[2] J.A. Blakeley, N. Coburn, and P.-A. Larson, “Updating Derived Relations: Detecting Irrelevant and Autonomously Computable Updates,” ACM Trans. Database Systems, vol. 14, no. 3, pp. 369-400, Sept. 1989.
[3] J.A. Blakeley, P. Larson, and F.W. Tompa, "Efficiently Updating Materialized Views," Proc. ACM SIGMOD Conf.,Washington, D.C., pp. 61-71, May 1986.
[4] M. Carey, E. Shekita, G. Lapis, B. Lindsay, and J. McPherson, "An Incremental Join Attachment for Starburst," Proc. VLDB, pp. 662-673, 1990.
[5] S.M. Downs, M.G. Walker, and R.L. Blum, "Automated Summarization of On-line Medical Records," Proc. Medinfo, N-H, pp. 800-804, 1986.
[6] R. Elmasri and S.B. Navathe, Fundamentals of Database Systems, second ed., Benjamin/Cummings, 1994.
[7] R. Elmasri, G.T.J. Wuu, and V. Kouramaijian, "The Time Index and the Monotonic B+-Tree," chapter 18, pp. 433-456, A.U. Tansel et al., eds., Temporal Database, Theory Design, and Implementation, Benjamin/Cummings, 1993.
[8] H. Gunadhi and A. Segev, "Efficient Indexing Methods for Temporal Relations," EEE Trans. Knowledge and Data Eng., vol. 5, pp. 496-509, 1993.
[9] C.S. Jensen, J. Clifford, R. Elmasri, S.K. Gadia, P. Hayes and S. Jajodia, eds., "A Glossary of Temporal Database Concepts," ACM SIGMOD Record, vol. 23, no. 1, pp. 52-64, Mar. 1994.
[10] "A Consensus Test Suite of Temporal Database Queries," C.S. Jensen et al., eds., Technical Report R 93-2034, Dept. of Computer Science, Aalborg Univ., Aalborg, Denmark, Nov. 1993.
[11] C.S. Jensen and L. Mark, "Queries on Change in an Extended Relational Model," IEEE Trans. Knowledge and Data Eng., vol. 4, no. 2, pp. 192-200, Apr. 1992.
[12] C.S. Jensen, L. Mark, and N. Roussopoulos, "Incremental Implementation Model for Relational Databases with Transaction Time," IEEE Trans. Knowledge and Data Engineering, vol. 3, no. 4, pp. 461-473, Dec. 1991.
[13] C.S. Jensen and L. Mark, "Differential Query Processing in Transaction-Time Databases," chapter 19, pp. 457-492, A.U. Tansel et al., eds., Temporal Database, Theory Design, and Implementation, Benjamin/Cummings, 1993.
[14] B.G. Lindsay, L. Haas, C. Mohan, H. Pirahesh, and P. Wilms, "A Snapshot Differential Refresh Algorithm," Proc. ACM SIGMOD Conf., pp. 53-60, June 1986.
[15] D. Lomet and B. Salzberg, "The Performance of a Multiversion Access Method," Proc. ACM SIGMOD Conf., pp. 353-363, 1990.
[16] D. Lomet and B. Salzberg, "The hB-Tree: A Multiattribute Indexing Method with Good Guaranteed Performance," ACM Trans. Database Systems. vol. 15, no. 4, pp. 625-658, Dec. 1990.
[17] D. Lomet and B. Salzberg, "Transaction-Time Databases," chapter 16, pp. 388-417, A.U. Tansel et al., eds., Temporal Database, Theory Design, and Implementation, Benjamin/Cummings, 1993.
[18] E. McKenzie, "Bibliography: Temporal Database," ACM SIGMOD Record, vol. 15, no. 4, pp. 40-52, 1986.
[19] L.E. McKenzie, Jr. and R.T. Snodgrass, “Evaluation of Relational Algebras Incorporating the Time Dimension in Databases,” ACM Computing Surveys, vol. 23, no. 4, pp. 501–543, 1991.
[20] G. Özsoyovglu and R.T. Snodgrass, “Temporal and Real-Time Databases: A Survey,” IEEE Trans. Knowledge and Data Eng., vol. 7, no. 4, pp. 513–532, 1995.
[21] L. Rowe and M. Stonebraker, "The Postgres Papers," UCB/ERL M86/85, Univ. of California, Berkeley, 1987.
[22] N. Roussopoulos, "The Incremental Access Method of View Cache: Concept, Algorithms, and Cost Analysis," ACM Trans. Database Systems, vol. 16, no. 3, pp. 535-563, Sept. 1991.
[23] B. Salzberg, File Structures. Prentice Hall, 1988.
[24] B. Salzberg and V.J. Tsotras, "A Comparison of Access Methods for Time Evolving Data," Technical Report NU-CSS-94-21, Northeastern Univ., 1994.
[25] B. Schueler, "Update Reconsidered," G.M. Nijssen, ed., Architecture and Models in Data Base Management Systems, NorthHolland, 1977.
[26] R.T. Snodgrass, "Temporal Databases," Proc. Int'l Conf. GIS: From Space to Territory, vol. 639of Lecture Notes in Computer Science, pp. 22-64. Springer-Verlag, Sept. 1992.
[27] R. Snodgrass and I. Ahn, "A Taxonomy of Time in Databases," Proc. ACM SIGMOD Conf., 1985.
[28] M.D. Soo, "Bibliography on Temporal Databases," ACM SIGMOD Record, vol. 20, no. 1, pp. 14-23, 1991.
[29] M. Stonebraker, "The Design of the Postgres Storage System," Proc. VLDB Conf., pp. 289-300, 1987.
[30] Temporal Database, Theory Design and Implementation, A.U. Tansel et al., eds., Benjamin/Cummings, 1993.
[31] K. Torp, L. Mark, and C.S. Jensen, "Efficient Differential Timeslice Computation," Technical Report No R-94-2055, Dept. of Computer Science, Aalborg Univ., Aalborg, Denmark, 1994.
[32] V.J. Tsotras and A. Kumar, "Temporal Database Bibliography Update," ACM SIGMOD Record, vol. 25, no. 1, pp. 41-51, 1996.

Index Terms:
Transaction time, data models, snapshots, timeslice, incremental computation.
Citation:
Kristian Torp, Leo Mark, Christian S. Jensen, "Efficient Differential Timeslice Computation," IEEE Transactions on Knowledge and Data Engineering, vol. 10, no. 4, pp. 599-611, July-Aug. 1998, doi:10.1109/69.706059
Usage of this product signifies your acceptance of the Terms of Use.