This post is the first of a series providing an overview of “bi-temporal data management” and contrasting it with the current standard approach in data warehousing for tracking historical changes in data (“temporal data management”) developed by Ralph Kimball. Bi-temporal data management is a concept that has been under development since the 1980’s, but is familiar to few data professionals even today. Reasons for this include:
in many applications it just isn’t needed, or its complexity is not justified;
the Kimball methodology is predominant for temporal data management in the data warehouse context – and it does not handle or even consider bi-temporality other than via several half-baked patterns;
without built-in support in the major relational database engines, the necessary SQL to implement bi-temporality is devilishly complex; for all practical purposes it is not feasible from perspectives of understandability, maintenance and performance, especially…
I’ll be giving a presentation on the somewhat unlikely subject of the title at the next NYC SQL Saturday at Microsoft HQ on May 30, 2015. It will be a largely non-technical, non-demo presentation about accounting and bookkeeping concepts developers are likely to encounter if they have to interact with financial recordkeeping applications, particularly in data warehousing and business intelligence contexts. I will also offer reasons why learning about this (in more depth than is possible in this session) represents great career development for the average developer.
There will be one tech hook wherein I will demonstrate how Microsoft’s Analysis Services directly supports some of the mechanisms of bookkeeping.
The all-day event is free (except for lunch) and has a host of valuable sessions on a wide variety of mostly technical SQL Server topics. Here is the link: http://www.sqlsaturday.com/380/EventHome.aspx