Show Menu

Bitemporality vs Remporality Data Governance Cheat Sheet (DRAFT) by [deleted]

The Role of Bitemporality

This is a draft cheat sheet. It is a work in progress and is not finished yet.


ndeed, a bitemporal database is much more powerful than a temporal database. While a temporal database tracks valid time, capturing data “as it happened in the real world,” a bitemporal database involves valid time and system time. System time records when something was recorded to the database.

In other words, bitemporal databases capture inform­ation “as it actually was.” For example, a temporal database can tell us where John Smith lived on Dec. 6, but a bitemporal database can tell us where John Smith lived on Dec. 6 as we knew it on Dec. 15. With a bitemporal database, organi­zations can answer the critical questions: What did you know, and when did you know it? It helps ensure that there is always a full and accurate picture of data at every point in time.

Bitemporal design is about historical data, but it’s really much more than that. It’s about strong data govern­ance, strategic planning, risk manage­ment, and compet­itive advantage.

Bitemp­orality Merits

Regulatory requir­ements, enabling companies to avoid fines
Audits, preserving the history of all data, including the changes made to it
Investigations and intell­igence, mainta­ining inform­ation so it is possible to see exactly how data was updated based on what was known at the time
Business analytics, enabling companies to run more complex queries based on time-based data

Cost of Doing Bitemporal Business

While data analytics capabi­lities can come at a premium, bitemporal technology can actually save companies money and provide opport­unities for increased revenue.

The cost per gigabyte of data is decrea­sing, but organi­zations today are spending more on storing historical data because they are dealing with so much more of it—for regulatory reasons, but also because companies tend to hoard data. Bitemporal design helps keep storage in check because it avoids the need to set up additional databases for historical data.

Bitemp­orality Database

Barriers to Bitemp­orality

Tradit­ional relational databases are not well-s­uited to handle bitemporal implem­ent­ations. Here are some of the reasons:

Integrity constr­ain­ts: Relational databases have refere­ntial and entity integrity constr­aints, not to mention defined schemas. When bitemporal columns are added to a relational table, they can wreak havoc on the relational data model.
Schema evolut­ion: It is difficult to change schema in a relational database in general, let alone when adding bitemporal data.
Multiple data models: Bitemp­orality involves integr­ating multiple data models and data silos into a single source of truth, a difficult task for schema­-bound relational databases.
Performance decline: Bitemporal queries consider multiple axes of time and often span multiple servers.
Add-on costs: Bitemporal is often not built into the database, it is an add-on component that comes with additional costs.