This paper deals with an important practical problem, schema evolution, and its analog in temporal databases, schema versioning.
Most DBMSs support schema evolution, say via the ALTER statement, in which the schema may be changed, say to add a column to a table. (A poor man's approach is to create a new table with the desired schema, then copy the contents of the original table into this new table.)
When transaction time is supported, existing values are not allowed to be changed. This raises the opportunity for schema versioning, in which the old values are consistent with the old schema, and new values must be consistent with the new schema. For a given transaction time, all data must be consistent with the schema of that transaction time, independent of the valid time.
This paper takes a different tack. It advocates versioning along valid time, transaction time, and both time domains, and goes into some depth as to how single versus multi-pool solutions and synchronous versus asynchronous management interact. While transaction-time schema versioning has been covered in other papers, this is the first to propose valid-time schema versioning (VTSV).
Copyright © 2000 by the author(s). Review published with permission.