Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Bitemporal data : theory and practice
Johnston T., Morgan Kaufmann Publishers Inc., San Francisco, CA, 2014. 400 pp. Type: Book (978-0-124080-67-6)
Date Reviewed: Jun 8 2015

Things are not the same as data about these things in databases. Therefore, statements about things are different from statements about representations of these things in databases. Moreover, when incorrect representations about things are corrected, the complete history of these representations should be preserved. In a relational database management system (DBMS) implementation, a nontemporal relational table is a conventional relational table; a unitemporal table is a nontemporal table whose primary key has been supplemented with one time period (state begin time to state end time) (“time in which things happen in the world,” p. xix); and a bitemporal table is a unitemporal table whose primary key has been supplemented with an additional time period (assertion begin time to assertion end time) (“time in which descriptions of the world accumulate,” p. xix). This provides the infrastructure realizing the bitemporality approach described by the author.

Many of these ideas have been described in the literature and were included, with some shortcomings discussed in this book, in some recent SQL standards (ISO 9075:2011 and TSQL2). This book is a systematic and conceptually clear presentation of the relevant concepts based on information semantics rather than on existing industrial products. It is centered on the relational paradigm, and the reader should be at least somewhat initiated in that paradigm. Part 1, “Theory,” presents a comprehensive overview of a huge amount of material, a “conceptual tool chest” used in Part 2, “Practice,” which discusses temporal transactions, temporal queries, temporal requirements, and existing data warehouse implementations. Regretfully, at times the explanations may be considered too lengthy or repetitive. (For a short and engaging introduction to the subject matter, see the author’s own slides [1].)

Johnston clearly explains his terminology and approach, presents a large number of examples, and provides nicely written critical overviews making clear the shortcomings of four sets of existing bitemporal terminologies, of some existing products (including Inmon and Kimball data warehouses), and of the handling of bitemporality in the recent SQL standards. He shows, for example, why retroactive transactions in a state-time table (permitted by the ISO 9075:2011 SQL standard) are semantically invalid. The emphasis in the book is on concepts and in particular on semantic interoperability (including the need for a vendor-neutral implementation of bitemporality); this is certainly appropriate and very useful. I liked the author’s strong and justified opinions, in particular, on the causes of non-use of enterprise data models. And it is notable that he describes the evolution of his own approaches to the subject matter.

The author explicitly distinguishes throughout between modifications made to the database because things have changed and modifications (that is, corrections) made “to improve the data in the database.” In chapter 15, “Temporal Requirements,” he specifically demonstrates and illustrates with numerous examples why both state time and assertion time are necessary for correct representation of data and of their history in the database. These business modeling considerations apply independently of the kind of database management system (to be) used for implementation. In particular, the author stresses the complexity of understanding and formulating the semantics of temporal requirements both for business experts and for business analysts: “requests and requirements can easily be misstated and/or misunderstood.” More often than not, the tacit assumptions of the business experts (different for different experts) are not articulated and do not correspond to whatever is implemented in the database. This is what business analysts should take care of. Perhaps prose narratives (such as those on p. 197) are not the best way to formulate understandable temporal requirements.

The general approach to bitemporality is implementation-independent and follows, for example, from the concept of epoch defined for any system in [2] (but regretfully not mentioned by the author) as “a period of time for which an object displays a particular behavior.” After we note that a thing and its database representation are different objects, we may recall from [2] that a “specification language may need to express … whether objects can negotiate on the basis of their current epoch identities”; and we may furthermore recall from [2] that a failure (violation of a contract) may be a timing failure (incorrectness due to untimely behavior) and that a failure may “be perceived differently by different objects in the environment of the object” exhibiting a failure. This general approach takes care of corrections in the database independently of whether the database management system is or is not relational. It would be great for the next edition of this book to discuss bitemporality also in the conceptual framework of [2] (note that in the author’s relational paradigm ontology described in chapter 5, objects and events are given equal ontological weight, in the same manner as in [2] where an action, like the author’s event, is defined as “something that happens”).

Johnston properly notes that types are second-class citizens in relational databases (p. 315) and proposes appropriate enhancements, some of which are close to the relational model extensions presented by E. F. Codd in [3] but also not mentioned in the book. In this context, I was very pleased with the author’s observation that “we listen to the promise of the semantic web without realizing that, lacking formal definitions of the types in our databases, the promise is empty” (p. 319): it is well-known that “meaningful names” may and do have different meanings for different people and therefore have no clear semantics, so that context is essential for proper definitions. Johnston also describes the importance and role of such events as speech acts (in particular, of asserting and withdrawing statements) including explicit specification of the sources of speech acts.

Summing up, the book describes in a nice and engaging manner an important business problem, the (often serious) shortcomings of existing IT solutions, and ways to solve the problem properly.

More reviews about this item: Amazon

Reviewer:  H. I. Kilov Review #: CR143498 (1508-0673)
1) Johnston, T. Understanding bitemporal data. Asserted Versioning, LLC, http://www.assertedversioning.com/Documents/EDW-2011-Johnston.pdf (04/26/2015).
2) ISO/IEC. "Open Distributed Processing" Reference Model: Part 2: Foundations (ITU-T Recommendation X.902 ISO/IEC 10746-2).
3) Codd, E. F. Extending the database relational model to capture more meaning. ACM Transactions on Database Systems 4, 4(1979), 397–434.
Bookmark and Share
  Featured Reviewer  
 
Information Theory (H.1.1 ... )
 
 
Relational Databases (H.2.4 ... )
 
 
Systems (H.2.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Information Theory": Date
A generalized class of certainty and information measures.
van der Lubbe J., Boekee D. Information Sciences 32(3): 187-215, 1984. Type: Article
Jan 1 1985
Information in the enterprise
Darnton G., Giacoletto S., Digital Press, Newton, MA, 1992. Type: Book (9780131761735)
Sep 1 1993
Information theory for information technologists
Usher M., Macmillan Press Ltd., Basingstoke, UK, 1984. Type: Book (9789780333367032)
Sep 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy