NEW
Capturing both valid time and transaction time to track changes and as-at states.
DESCRIPTION
Bitemporal modeling stores two independent timelines: business (valid) time reflecting when facts are true, and system (transaction) time recording when data is stored. This enables accurate as-at and as-was queries for audits, regulatory reporting, and debugging. It generalizes slowly changing dimensions, supporting corrections and late-arriving events. Many databases implement system-versioned and application-time tables to support bitemporal queries.
ALTERNATIVE DEFINITIONS
Wikipedia
Bitemporal modeling is a database design approach that records data along two different time axes.
Defines the dual timelines without prescribing implementation details.
IBM Db2 Documentation
A bitemporal table maintains both a system time period and a business time period, allowing you to query data as it was stored and as it was valid in the real world.
Highlights system and business time with practical query semantics.
SAP HANA
Bitemporal tables manage both application-time and system-versioned time dimensions to represent the validity and the recording of data changes.
Uses standard terminology for application-time and system-versioned dimensions.
RELATED TERMS
Temporal Tables System Time Valid Time Slowly Changing Dimension Data Vault Change Data Capture Auditing Time Travel Event Sourcing Temporal Query
COMPETING TERMS
Uni-temporal Modeling Type 2 SCD
RELATIONS
- Broader: Data Modeling
KNOWLEDGE AREAS
Data Modeling Data Architecture Data Management Data Warehousing & BI
TARGET AUDIENCE
Data Modeler Data Architect Data Engineer Data Steward BI Specialist
EXTERNAL SOURCES
- Wikipedia - Bitemporal Modeling
- IBM - Db2 bitemporal tables guide
- Microsoft - SQL Server system-versioned temporal tables
- SAP - HANA bitemporal modeling concepts
TOP QUESTIONS
Why use Bitemporal Modeling instead of a simple Slowly Changing Dimension?
Bitemporal modeling preserves both validity and recording histories, enabling precise as-was and as-at queries that SCD Type 2 alone cannot guarantee.
Category: Relevancy
What is the biggest misunderstanding about Bitemporal Modeling?
That it is only for finance or compliance. Many industries benefit from accurate historical reconstructions and late data corrections.
Category: Misunderstanding
How is Bitemporal Modeling implemented in SQL databases?
Use system-versioned tables for transaction time and application-time periods for valid time, with constraints to prevent overlap issues.
Category: HowTo
What queries does Bitemporal Modeling enable?
As-at queries for business validity, as-was queries for storage history, and combined queries spanning both dimensions for audits.
Category: Example
What are common mistakes in Bitemporal Modeling?
Not enforcing non-overlapping valid-time intervals, missing time-zone normalization, and failing to capture late corrections consistently.
Category: Mistakes
What is the operational risk of Bitemporal Modeling?
Increased storage and complexity can degrade performance. Indexing strategies and partitioning are critical to maintain query speed.
Category: Risk
How does Bitemporal Modeling interact with CDC?
CDC feeds transaction-time changes; application logic sets valid time to represent real-world effectivity, combining to form bitemporal history.
Category: Requirements
Is Bitemporal Modeling supported in cloud warehouses?
Vendors offer time travel and versioning. Full bitemporality often requires modeling patterns plus features like system versioning.
Category: Opinion
How do I govern Bitemporal data?
Define naming, temporal constraints, and retention policies, and document query patterns for auditors and analysts.
Category: Management