Top critical review
3 people found this helpful
Exciting concepts renered painfully boring.
on September 28, 2011
Tom Johnston and Randal Weis, <strong>Managing Time in Relational Databases</strong> (Morgan Kaufmann, 2010)
Full disclosure: this book was provided to me free of charge by Amazon Vine.
Good lord, it took me forever to get round to finishing this. Three hundred forty days, according to the spreadsheet; I probably should have just let twenty-five more run out, but I wanted to get it off my plate. When I picked it up, like a few other reviewers (judging by their reviews), I was unaware that it was a textbook. I'm not sure I've seen anyone else mention it (I only skim reviews at best before writing my own so as to color my own ideas as little as possible), but the book also is geared toward a specific product from the authors. Had I known either of these things, I probably wouldn't have gone for it in the first place, but it's not as bad as all that.
Why? Because the ideas they're discussing here are really, really exciting. Temporalizing databases is a fantastic idea that no one has really been able to get their heads around in the SQL world yet because the SQL standard doesn't have the capability to do so yet. The authors have created an API that lays over SQL and handles the complexity innate in trying to get generic SQL to do something it's very much not meant to do; <em>Managing Time in Relational Databases</em>, then, is basically <em>Asserted Versioning: Theory and Practice</em>. There's enough theory that you could probably roll your own API, but--not surprisingly--these guys really, really want you to buy theirs. And I'll tell you what, just thinking about some of the concepts they're talking about here, I'd be willing to go talk to my CIO about working it in at my company if we actually used bi-temporal data...except that I'd probably have to give him the book as part of the explanation, and I'm pretty sure he'd fall asleep reading it. In true textbook fashion, Weis and Johnston take some of the most exciting stuff I've read in a computer book since I discovered Ron Penton's take on data structures and algorithms and make it drier than my sophomore-year Abnormal Psych professor's Ed Gein lecture. (My sophomore-year AbPsych professor is the only person on the planet who could find a way to make Ed Gein boring.) I've long held the hypothesis that any subject can be made interesting as long as the person writing about it presents it well (viz. Hodding Carter's delightful <em>Flushed: How the Plumber Saved Civilization</em>). I've now found a perfect book to illustrate the reverse.
Despite this book being the hardest slog I've had in years, and despite the constant product placement, the information herein is valuable to database engineers, especially those whose businesses rely on temporal data (dear Amazon: implement this stuff and maybe we can stop with the whole pages disappearing whenever a publisher decides to change an ISBN between pre-release and release gig), and because of that, if you're willing to do a bit of reverse-engineering to roll your own, it's still valuable. (Needless to say, if you shell out for the product, the book is pretty much mandatory.) ** ½