← Back to context

Comment by baq

6 hours ago

bitemporal does not mean 'including timestamps' and out of existing RDBMSes only the truly most expensive ones support some kind of temporal queries; I've checked out for a bit, but if there's any with native bitemporal support that'd be quite the news

Bi-temporal means the DB keeps track of transaction time and valid/effective time separately.

Most databases have a notion of logical clock to implement MVCC/transactions. So this is just a mapping. Some in the spanner family actually use a drift limited physical clock.

The second part is using an index to answer queries about facts in the past. Like what was the capital of India in 1800?

There are existing embedded graph databases which do this.

Disclosure: I maintain one.

Is bitemporal more than being able to time travel by transaction and having some sort of time lookup for next transaction? It's a new term to me.