Title :
Efficient management of time-evolving databases
Author :
Tsotras, Vassilis J. ; Gopinath, B. ; Hart, George W.
Author_Institution :
Sch. of Electr. Eng. & Comput. Sci., Polytechnic Univ., Brooklyn, NY, USA
fDate :
8/1/1995 12:00:00 AM
Abstract :
Efficiently managing the history of a time-evolving system is one of the central problems in many database environments, like database systems that incorporate versioning, or object-oriented databases that implicitly or explicitly maintain the history of persistent objects. In this paper we propose algorithms that reconstruct past states of an evolving system for two general cases, i.e., when the system´s state is represented by a set or by a hierarchy (a forest of trees). Sets are widely used as a canonical form of representing information in databases or program states. For more complex applications, like schema evolution in object-oriented databases, it becomes necessary to manage the history of data structures that have the form of forests or even graphs. The proposed algorithms use minimal space (proportional to the number of changes occurring in the evolution) and have the advantage of being on-line (in the amortized sense). Any past system state s(t) is reconstructed in time O(|s(t)|+log log T), where |s(t)| is the size of the answer and T is the maximal evolution time. For all practical cases the log log T factor is a constant, therefore our algorithms provide almost random access to any past system state. Moreover, we show that the presented algorithms are optimal among all algorithms that use space linear in the number of changes in the system´s evolution
Keywords :
computational complexity; database theory; object-oriented databases; query processing; temporal databases; tree data structures; data structures; forests; graphs; history; object-oriented databases; persistent objects; queries; random access; schema evolution; sets; temporal database; time-evolving database management; versioning; Companies; Data structures; Database systems; Environmental management; History; Object oriented databases; Object oriented modeling; Programming profession; Transaction databases; Tree graphs;
Journal_Title :
Knowledge and Data Engineering, IEEE Transactions on