# Efficient algorithms for managing the history of evolving databases

## Abstract

We propose a novel method for representing evolving databases by “evolving sets”, which is particularly useful when we are interested in reconstructing any past state of a database. This theoretical framework therefore reduces the problem concerning the history management of databases to the problem of efficiently managing the history of a set evolving in time. We present a dynamic algorithm that reconstructs the state of the set at a given time *t* in the past in *O*(|*s*(*t*)| + *loglogT*) time, where |*s(t)*| is the size of the answer and *T* is the maximal size of the time interval (*t* ≤ *T*). The space used is linear to the number of changes that occurred during the set's evolution. The resulting algorithm is thereby more efficient than all previous methods dealing with the history management of evolving databases. In fact the proposed algorithm is optimal within a constant factor, because a lower bound of Ω(|*s(t)*| + *loglogT*) is also proved. Furthermore, if a total of *O*((*logT*)^{1/c}) parallel processors is available, where *c* is a positive constant (*c* ≥ 1), the above bound is reduced to *O*(|*s*(*t*)|).

## Preview

Unable to display preview. Download preview PDF.

## References

- 1.M. Ajtai, “A Lower Bound for Finding Predecessors in Yao's Cell Probe Model”, Combinatorica, to appear.Google Scholar
- 2.M. Ajtai, M. Fredman, J. Komlos, “Hash Functions for Priority Queues”, 24th IEEE FOCS 1983, pp 299–303.Google Scholar
- 3.B. Chazelle, “How to Search in History”, Information and Control, 1985, Vol. 64, pp 77–99.Google Scholar
- 4.M. Dietzfelbinger, A. Karlin, K. Mehlhorn, F. Meyer, H. Rohnhert and R. Tarjan, “Dynamic Perfect Hashing: Upper and Lower Bounds”, Proc. 29th IEEE FOCS, 1988.Google Scholar
- 5.D.P. Dobkin, J.L. Munro, “Efficient Uses of the Past”, 21st IEEE FOCS, 1980, pp 200–206.Google Scholar
- 6.A. Fiat, M. Naor, “Implicit O(1) Probe Search”, manuscript, 1988.Google Scholar
- 7.A. Fiat, M. Naor, A. Schaffer, J.P. Schmidt, A. Siegel, “Storing and Searching a Multikey Table”, 20-th ACM STOC, 1988, pp 344–353.Google Scholar
- 8.A. Fiat, M. Naor, J.P. Schmidt, A. Siegel, “Non-Oblivious Hashing”, 20-th ACM STOC, 1988, pp 367–376.Google Scholar
- 9.M.L. Fredman, J. Komlos, “On the Size of Separating Systems and Families of Perfect Hash Functions”, SIAM J. Alg. Disc. Math., March 1984, Vol.5, No.1, pp 61–68.Google Scholar
- 10.M.L. Fredman, J. Komlos, E. Szemeredi, “Storing a Sparse Table with O(1) Worst Case Access Time”, JACM, July 1984, Vol.31, pp 538–544.Google Scholar
- 11.M.L. Fredman, M. Saks, “The Cell Probe Complexity of Dynamic Data Structures”, to appear.Google Scholar
- 12.G.H. Gonnet, “Expected Length of the Longest Probe Sequence in Hash Code Searching”, JACM, April 1981, Vol.28, No.2, pp 289–304.Google Scholar
- 13.K. Melhorn, “Data Structures and Algorithms I: Sorting and Searching”, Springer Verlag, Berlin, Heidelberg, 1984.Google Scholar
- 14.J.I. Munro, “Searching a Two Key Table Under a Single Key”, 19-th ACM STOC, 1987, pp 383–387.Google Scholar
- 15.M. Overmars, “The Design of Dynamic Data Structures”, Springer Lecture Notes in Comp. Sc. 156, Springer Verlag, Berlin, 1983.Google Scholar
- 16.F.P. Preparata, M.I. Shamos, “Computational Geometry, An Introduction”, Springer Verlag, Berlin, 1985.Google Scholar
- 17.M. Snir, “On Parallel Searching”, SIAM J. of Computing, Vol. 14, No 3, Aug. 1985, pp 688–708.Google Scholar
- 18.V.J. Tsotras, B. Gopinath, “Efficient Algorithms Managing the History of Time-Evolving Forests”, Bellcore Tech. Memo., TM-ARH-013880, 1989.Google Scholar
- 19.V.J. Tsotras, B. Gopinath, G. Hart, “A New Bound On Parallel Searching”, IEEE Fourth Annual Symposium on Parallel Processing, April 4–6, 1990, Vol 2, pp 613–622.Google Scholar
- 20.L. Valiant, “Parallelism in Comparison Based Problems”, SIAM J. of Computing, Sept. 1975, Vol. 4, No 3, pp 348–355.Google Scholar
- 21.P. Van Emde Boas, R. Kaas and E. Zijlstra, “Design and Implementation of an Efficient Priority Queue”, Math. Systems Theory 10, 1977, pp 99–127.Google Scholar
- 22.D.E. Willard, “Log-logarithmic Worst case Queries are Possible in Space O(n)”, Information Processing Letters, 1983, Vol 17, pp 81–84.Google Scholar
- 23.A.C. Yao, “Should Tables Be Sorted? ”, JACM, July 1981, Vol.28, No.3, pp 615–628.Google Scholar