The time relational model
Jacov Ben-Zvi · 1982
Existing data base management systems (DBMSs) allow users to operate upon the latest (committed) data base state. However, many real world applications require storing and accessing historical information. Furthermore, there are no provisions in current DBMSs for the distinction between the physical time a given data item is entered, and the time period to which it pertains. Many data base updates in real applications are either retroactive, i.e., their effectiveness takes place sometime in the past, or proactive, i.e., their effectiveness will take place sometime in the future. The Time-Relational Model is an architecture which integrates comprehensive time processing capabilities into the Relational Model of data bases for managing changes of data values, data manipulation rules, and data structure. However, those who are not concerned about Time in their particular applications may perceive this model as a regular relational model. A fundamental concept is the time-view of data and transaction programs. Its major objective is to automatically and dynamically provide multiple and complete data base views reflecting different points in time, including all system components that may change over time. The time-view theorem provides necessary and sufficient conditions for achieving any desirable, dynamic time-view. The time-consistency theorem states the conditions for which a given computation can be reproduced again and again in the face of data base changes over time. The basic relational algebra operators are extended to include the time-view concept, resulting in the time relational algebra. An implementation architecture is developed which demonstrates the feasibility of such model. The central idea is to gain more functions and solutions based on the presence of time related information and, thus, spread the overall operational and implementation cost across multiple sources. Recovery Manager and Concurrency Control Procedures are developed. The recovery manager uses only the data itself for its own operation rather, than a logging facility; there is no need for a locking mechanism to provide each user with an appropriate isolation level from other concurrent users. A real-life case study is described based on the Informatics Inc. Manufacturing Planning System - PRODUCTION-IV.