← Back to context

Comment by adsharma

5 hours ago

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.