Author: Gary Dodge and Tim Gorman
Publisher: Wiley and Sons (ISBN 0471376787)
Subsequent editions of technical books which claim to cover completely the set of new features offered by later releases of software often fall woefully short of claims. As such, I was a little
wary of reading Essential Oracle 8i Data Warehousing written by Gary Dodge and Tim Gorman. These two experienced Data Warehousing professionals had earlier written Oracle 8 Data Warehousing.
After reading this book, I was pleasantly surprised as Dodge and Gorman’s second book is a very sincere and complete upgrade of their first book. Some topics that were covered in the first
book have been shortened (such as the lengthy discussion on the twenty-three sort options offered by TKPROF and which of these to select) and some other irrelevant topics have been altogether
Not only this, the new features of Oracle 8i relevant to Data Warehousing have been dealt with comprehensively. These include discussions on specific features of Oracle 8i such as the relevance of
temporary tablespaces, extraction processes using transportable tablespaces, enhancements to the EXP/IMP utilities in Oracle 8i, use of the MONITORING clause, the new API for direct path that has
been added to OCI and many more. Besides this, the rules of thumb for sizing (Page 508) are relevant to real-life situations and are helpful. The topic of handling constraints in a Data Warehouse
is also well explained.
The authors who are undoubtedly masters in the Data Warehousing field have made complex topics simple to understand through the skillful use of analogies throughout the book. Using the analogy of
Tiling the kitchen for disk space management, car-boys for I/O subsystems, filing clerks for the Oracle Parallel Server, hungry puppies for distribution of work in parallel execution of queries and
finally onion peeling for performance tuning (another similarity between these two which the authors could have pointed out was that sometimes both peeling onions and performance tuning can bring
tears to the eyes) are all analogies which are topically relevant and amusingly efficient.
This book talks about the features of Oracle that could be used to set up a Data Warehouse and deals with the new features offered by Oracle 8i admirably. The book is more on ‘When’
these features should be used and ‘Why’ they should be used. The treatment of the When’s and the Why’s as related to Data Warehousing are beyond any criticism but the
treatment of the ‘How’ is somewhat sketchy and not entirely accurate (as far as some of the syntax of the actual SQL goes). Though there are a number of references to resources that
could provide a better insight into the specific How’s, one feels that a book as complete and exhaustive as this one could have included some more pages devoted to accurately talking about
the How’s of the features.
The tuning concepts and techniques are explained not in the context of any specific tool (such as Oracle Enterprise Manager) but with the use of basic SQL. This is good but most SQL statements are
not error free. If you are looking at concepts fine; but do not look for reproducible syntax in this book. Another criticism that could be leveled at this book is that though it provides some
excellent examples of ‘the SQL to generate SQL’ technique, most of the SQL scripts do not have the corresponding generated SQL shown in the book that makes it laborious to understand
the SQL scripts. This is a definite minus point of this book. It also results in some syntactical errors creeping in the scripts shown in the book. Evidently these scripts have been typed in
directly into the word processor rather than having been copied from an actual SQL*Plus session. The companion website to this book promises to address these issues but at the time of writing of
this review, this is still under construction.
The authors admit that they haven’t devoted a lot of space in this book to planning an overall data warehouse project. When Gary and Tim come up with their next effort for the 9i database,
they can easily remedy this by adding a chapter devoted to this (in the meanwhile, serious readers could benefit by referring to Ralph Kimball’s first book “The Data Warehouse
Toolkit” which is a classic on this subject.) In fact, Ralph Kimball’s book has also been recommended by the authors for a more in-depth explanation of star schema concepts and design
but the broader design framework explained by Dodge and Gorman is by no means a let down.
On the whole, I would give a resounding double thumbs up to Gary and Tim’s book. Though the number of pages has gone up from 651 to 901, the 13 chapters in the earlier book have been carried
forward to the second offering. Most of the chapters are well written and are complete in their treatment of the specific subject area that they cover though the last chapter on OLAP and Oracle
Express plunges into unfamiliar Express syntax without much initiation. The treatment of most of the topics is so masterful and authoritative that the title of this book should well have been
‘The Authoritative and Complete Guide in Building an Oracle 8i Data Warehouse’.