Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a22623620d67610f

Jump to content

// Workers AI · dad joke modeDoes bitemporal modeling have a date? It's always between times.

From Wikipedia, the free encyclopedia
(Redirected from Bitemporal model)

Bitemporal modeling is a specific case of temporal database information modeling technique designed to handle historical data along two different timelines.[1] This makes it possible to rewind the information to "as it actually was" in combination with "as it was recorded" at some point in time. In order to be able to do so, information cannot be discarded even if it is erroneous. Within, for example, financial reporting it is often desirable to be able to recreate an old report both as it actually looked at the time of creation and as it should have looked given corrections made to the data after its creation.

Implementations of bitemporal modeling can be done using relational databases and graph databases. As such, bitemporal modeling is considered different from dimensional modeling and complementary to database normalization. The SQL:2011 standard provides language constructs for working with bitemporal data. However, as of 2011 many of the current solutions were still vendor-specific.

Philosophy

[edit]

Bitemporal modeling uses bitemporal structures as the basic components. This results in the databases which have a consistent type of temporality for all data. One example can be to include event date-timestamp (EDTS) and load datestamp (LDS).

Benefits of bitemporal modeling

[edit]

By focusing on completeness and accuracy of data, bitemporal modeling facilitates the creation of complete audit trails of data. All data becomes immutable. Specifically this allows for queries which provide:

  1. The most accurate data possible as we know it now
  2. Data as we knew it at any point in time
  3. When and why the most accurate data we had changed

Implementations in notable products

[edit]
  • MarkLogic introduced bitemporal data support in version 8.0. Time stamps for Valid and System time are stored in JSON or XML documents.[2]
  • TerminusDB is an open source document-oriented graph database that uses delta encoding and provides bitemporal functionality[3]

See also

[edit]

References

[edit]
  1. "Temporal Patterns". martinfowler.com. Archived from the original on 2017-04-04. Retrieved 2017-04-04.
  2. Bridgwater, Adrian (24 November 2014). "Data Is Good, 'Bidirectionalized Bitemporal' Data Is Better". Forbes. Archived from the original on 30 December 2021. Retrieved 14 March 2019.
  3. "terminusdb/terminusdb.pdf at dev · terminusdb/terminusdb". GitHub. Archived from the original on 2021-09-12. Retrieved 2021-09-12.