100 likes | 315 Views
Temporal DBMS. JD Pack Software Architecture. Introduction. Conventional databases store “now” data Can store huge amounts of data, but only data in the present What about systems that might require past and even future data storage? (banking, inventory, geographical, medical) Temporal DBMS
E N D
Temporal DBMS JD Pack Software Architecture
Introduction • Conventional databases store “now” data • Can store huge amounts of data, but only data in the present • What about systems that might require past and even future data storage? (banking, inventory, geographical, medical) • Temporal DBMS • Databases designed to handle time-dependent data • Supported using temporal data models, temporal SQL • Key aspects: valid time, transaction time
Valid Time • Period of time which data is considered to be valid • Storing historical data • Retrieve data later, rather than overwrite with new information • Data can be valid as past, present, or future • Unknown time values are marked as ∞ http://www.timeconsult.com/TemporalData/TemporalDB.html
Transaction Time • Time period which data is considered to be true • Only occurs in past or present data • Allows DBMS to be presented as states • Temporal SQL can be used to pull data within a specified time frame that shows when the data was asserted • Useful for taxes or auditing Name City ValidStartValidEndT.StartT.End John Doe, Smallville, 3-Apr-1975, ∞, 4-Apr-1975, 27-Dec-1994 John Doe, Smallville, 3-Apr-1975, 26-Aug-1994, 27-Dec-1994, ∞ John Doe, Bigtown, 26-Aug-1994, ∞, 27-Dec-1994, 2-Feb-2001 John Doe, Bigtown, 26-Aug-1994, 1-Jun-1995, 2-Feb-2001, ∞ John Doe, Beachy, 1-Jun-1995, 3-Sep-2000, 2-Feb-2001, ∞ John Doe, Bigtown, 3-Sep-2000, ∞, 2-Feb-2001, 1-Apr-2001 John Doe, Bigtown, 3-Sep-2000, 1-Apr-2001, 1-Apr-2001, ∞
Bitemporal Relations • Relationship between Valid & Transaction Time • Provides both historical and rollback data • Storing data using this method allows access to snapshots of the database http://www.timeconsult.com/TemporalData/snapshot.gif
Current Temporal Implementations • Oracle Workspace Manager • TimeDB • PostgreSQL • Teradata • Anchor Modeling • IBM DB2 • OSIsoft (PI System)
Limitations • Schema Evolution • It is vital that data be stored using the schema version in which it originally appeared • The smallest of changes to the history of a value have to be redone by hand for each version of the schema • Time standards • SQL2 standards are poorly designed and suffer from range limitations and efficiency • Inconsistency • Lack of coherent architectures, commercialization • Performance
Example – MediaWiki Schema Wiki Commons
Sources • http://temporal.projects.pgfoundry.org/reference.html • https://cs.arizona.edu/~rts/pubs/LNCS639.pdf • http://www.timeconsult.com/TemporalData/TemporalDB.html • http://www.cs.arizona.edu/people/rts/tdbbook.pdf • http://www.mediawiki.org/wiki/Manual:Database_layout