We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Bitemporality in PostgreSQL: Update Your Data Without Losing Information — Miroslav Šedivý
Discover how to update your PostgreSQL data without losing information with bitemporality, a method for storing data records to represent both the history of reality and the database.
- Bitemporality is a method of storing data records to represent both the history of the reality and the history of the database.
- In PostgreSQL, ranges can be used to represent time intervals, including intervals that include or exclude the edge points.
- Time zones can be taken into account when storing and querying date and time values.
-
The
validcolumn in a table can be used to store the valid timestamp range for each record. -
The
revisiontable can be used to store the history of changes to each record, including the timestamp and ID of the revision. -
The
rev_idcolumn in therevisiontable can be used to track the sequence of revisions for each record. -
The
timestampcolumn in therevisiontable can be used to store the timestamp of each revision. -
The
validcolumn in therevisiontable can be used to store the valid timestamp range for each revision. -
The
overlappingcolumn in therevisiontable can be used to track whether each revision overlaps with other revisions. -
The
endcolumn in therevisiontable can be used to store the end timestamp of each revision. -
The
startcolumn in therevisiontable can be used to store the start timestamp of each revision. -
The
databasetable can be used to store the current state of the database, including the revision ID and timestamp of each record. -
The
customertable can be used to store customer information, including the customer ID and name. -
The
feetable can be used to store fee information, including the fee ID and amount. -
The
invoicetable can be used to store invoice information, including the invoice ID and amount. -
The
producttable can be used to store product information, including the product ID and name. -
The
timestampcolumn in each table can be used to store the timestamp of each record. -
The
validcolumn in each table can be used to store the valid timestamp range for each record. -
The
revisiontable can be used to store the history of changes to each record, including the timestamp and ID of the revision. -
The
overlappingcolumn in therevisiontable can be used to track whether each revision overlaps with other revisions. -
The
endcolumn in therevisiontable can be used to store the end timestamp of each revision. -
The
startcolumn in therevisiontable can be used to store the start timestamp of each revision. -
The
databasetable can be used to store the current state of the database, including the revision ID and timestamp of each record. -
The
customertable can be used to store customer information, including the customer ID and name. -
The
feetable can be used to store fee information, including the fee ID and amount. -
The
invoicetable can be used to store invoice information, including the invoice ID and amount. -
The
producttable can be used to store product information, including the product ID and name.