I wanted to mention one more paper from the research track of the ICDE 2015, which I liked a lot. The title of the paper is “Bi-temporal Timeline Index: A Data Structure for Processing Queries on Bi-temporal Data” by Martin Kaufmann, Peter M. Fischer, Norman May, Chang Ge, Anil K. Goel and Donald Kossmann.
The poster for this presentation is here.
This paper addresses the question of two-dimensional time and how we can efficiently query the two-time-dimensional tables. The interesting thing about this topic is, that it’s not new at all – from the first works of Snodgrass on the temporal databases it was very clear the time should be two-dimensional. People may call these dimensions differently, but the general idea is, that we have a “validity time” or “application time” – the time when a specific value is “valid”, and the “system time” which only goes in one direction, and which indicates when a specific value was modified (or was active) in the system. Yet, although the necessity for supporting a two-dimensional time is obvious, there is very little of support for this feature in any of the existing systems.
The most typical queries we want to support are the queries like “how did this customer’s data looked at this specific time?”, and the solution proposed in this paper actually provides an efficient way to answer these kinds of questions.
The “checkpoints” – the slices of the state of data at the specific system times are created, and then the system time increments allow to “move” from this snapshot to the specific time defined in a query.
The testing results for the temporal aggregation and temporal joins look really good!