Transaction time support inside a database engine

David Lomet, Roger Barga, Mohamed Mokbel, German Shegalov, Rui Wang, Yunyue Zhu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

43 Citations (Scopus)

Abstract

Transaction time databases retain and provide access to prior states of a database. An update "inserts" a new record while preserving the old version. Immortal DB builds transaction time database support into a database engine, not in middleware. It supports as of queries returning records current at the specified time. It also supports snapshot isolation concurrency control. Versions are stamped with the "clock times" of their updating transactions. The timestamp order agrees with transaction serialization order. Lazy timestamping propagates timestamps to transaction updates after commit. Versions are kept in an integrated storage structure, with historical versions initially stored with current data. Time-splits of pages permit large histories to be maintained, and enable time based indexing, which is essential for high performance historical queries. Experiments show that Immortal DB introduces little overhead for accessing recent database states while providing access to past states.

Original languageEnglish
Title of host publicationProceedings of the 22nd International Conference on Data Engineering, ICDE '06
Number of pages1
Volume2006
DOIs
Publication statusPublished - 17 Oct 2006
Externally publishedYes
Event22nd International Conference on Data Engineering, ICDE '06 - Atlanta, GA, United States
Duration: 3 Apr 20067 Apr 2006

Other

Other22nd International Conference on Data Engineering, ICDE '06
CountryUnited States
CityAtlanta, GA
Period3/4/067/4/06

Fingerprint

Engines
Concurrency control
Middleware
Clocks
Experiments

ASJC Scopus subject areas

  • Software
  • Signal Processing
  • Information Systems

Cite this

Lomet, D., Barga, R., Mokbel, M., Shegalov, G., Wang, R., & Zhu, Y. (2006). Transaction time support inside a database engine. In Proceedings of the 22nd International Conference on Data Engineering, ICDE '06 (Vol. 2006). [1617403] https://doi.org/10.1109/ICDE.2006.162

Transaction time support inside a database engine. / Lomet, David; Barga, Roger; Mokbel, Mohamed; Shegalov, German; Wang, Rui; Zhu, Yunyue.

Proceedings of the 22nd International Conference on Data Engineering, ICDE '06. Vol. 2006 2006. 1617403.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Lomet, D, Barga, R, Mokbel, M, Shegalov, G, Wang, R & Zhu, Y 2006, Transaction time support inside a database engine. in Proceedings of the 22nd International Conference on Data Engineering, ICDE '06. vol. 2006, 1617403, 22nd International Conference on Data Engineering, ICDE '06, Atlanta, GA, United States, 3/4/06. https://doi.org/10.1109/ICDE.2006.162
Lomet D, Barga R, Mokbel M, Shegalov G, Wang R, Zhu Y. Transaction time support inside a database engine. In Proceedings of the 22nd International Conference on Data Engineering, ICDE '06. Vol. 2006. 2006. 1617403 https://doi.org/10.1109/ICDE.2006.162
Lomet, David ; Barga, Roger ; Mokbel, Mohamed ; Shegalov, German ; Wang, Rui ; Zhu, Yunyue. / Transaction time support inside a database engine. Proceedings of the 22nd International Conference on Data Engineering, ICDE '06. Vol. 2006 2006.
@inproceedings{5e2fa3bd0e7046fbabfe16b2b9e4fa2d,
title = "Transaction time support inside a database engine",
abstract = "Transaction time databases retain and provide access to prior states of a database. An update {"}inserts{"} a new record while preserving the old version. Immortal DB builds transaction time database support into a database engine, not in middleware. It supports as of queries returning records current at the specified time. It also supports snapshot isolation concurrency control. Versions are stamped with the {"}clock times{"} of their updating transactions. The timestamp order agrees with transaction serialization order. Lazy timestamping propagates timestamps to transaction updates after commit. Versions are kept in an integrated storage structure, with historical versions initially stored with current data. Time-splits of pages permit large histories to be maintained, and enable time based indexing, which is essential for high performance historical queries. Experiments show that Immortal DB introduces little overhead for accessing recent database states while providing access to past states.",
author = "David Lomet and Roger Barga and Mohamed Mokbel and German Shegalov and Rui Wang and Yunyue Zhu",
year = "2006",
month = "10",
day = "17",
doi = "10.1109/ICDE.2006.162",
language = "English",
isbn = "0769525709",
volume = "2006",
booktitle = "Proceedings of the 22nd International Conference on Data Engineering, ICDE '06",

}

TY - GEN

T1 - Transaction time support inside a database engine

AU - Lomet, David

AU - Barga, Roger

AU - Mokbel, Mohamed

AU - Shegalov, German

AU - Wang, Rui

AU - Zhu, Yunyue

PY - 2006/10/17

Y1 - 2006/10/17

N2 - Transaction time databases retain and provide access to prior states of a database. An update "inserts" a new record while preserving the old version. Immortal DB builds transaction time database support into a database engine, not in middleware. It supports as of queries returning records current at the specified time. It also supports snapshot isolation concurrency control. Versions are stamped with the "clock times" of their updating transactions. The timestamp order agrees with transaction serialization order. Lazy timestamping propagates timestamps to transaction updates after commit. Versions are kept in an integrated storage structure, with historical versions initially stored with current data. Time-splits of pages permit large histories to be maintained, and enable time based indexing, which is essential for high performance historical queries. Experiments show that Immortal DB introduces little overhead for accessing recent database states while providing access to past states.

AB - Transaction time databases retain and provide access to prior states of a database. An update "inserts" a new record while preserving the old version. Immortal DB builds transaction time database support into a database engine, not in middleware. It supports as of queries returning records current at the specified time. It also supports snapshot isolation concurrency control. Versions are stamped with the "clock times" of their updating transactions. The timestamp order agrees with transaction serialization order. Lazy timestamping propagates timestamps to transaction updates after commit. Versions are kept in an integrated storage structure, with historical versions initially stored with current data. Time-splits of pages permit large histories to be maintained, and enable time based indexing, which is essential for high performance historical queries. Experiments show that Immortal DB introduces little overhead for accessing recent database states while providing access to past states.

UR - http://www.scopus.com/inward/record.url?scp=33749644509&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=33749644509&partnerID=8YFLogxK

U2 - 10.1109/ICDE.2006.162

DO - 10.1109/ICDE.2006.162

M3 - Conference contribution

AN - SCOPUS:33749644509

SN - 0769525709

SN - 9780769525709

VL - 2006

BT - Proceedings of the 22nd International Conference on Data Engineering, ICDE '06

ER -