I usually don’t do book reviews (at least publicly, anyway), but when I find a piece of work that I really get a lot out of, I don’t mind sharing my experience. Such was the case with a book I finished recently. SQL Server 2008 Integration Services: Problem – Design – Solution is a concise guide to becoming a better ETL developer, written by four highly experienced industry experts. After reading this book, I can recommend it without hesitation!
From the first few pages, it’s obvious that this book is different from many other SSIS books. Rather than trying to teach the reader how to use the software, this book instead focuses on common business problems and the methodology behind solving them. The authors assume some familiarity with SSIS, so you won’t find a comprehensive how-to manual if you’ve never created a package before. That being said, the concepts presented here are not so complex that only highly seasoned ETL developers will understand them; to the contrary, the book illustrates a number of simple yet practical approaches, along with relevant examples, that audiences of various skill levels will get something out of it.
One of the most relevant topics covered was the concept of building an SSIS management framework, which was my favorite part of the book. Having recently moved from an environment with a relatively small number of packages to a consulting role where I might interact with hundreds of packages a month, I found that a solid ETL framework is a critical component of success. Chapter 2 of the Problem – Design – Solution book explains why, and illustrates how, one would build an SSIS management framework. For anyone that has struggled with a large number of packages or has wrestled with the shortcomings of the built-in SSIS logging tools, this chapter should prove useful as both a guide and a best practices reference. Further into the book, the authors cover other topics essential to data warehousing ETL, including data cleansing and fact and dimension table ETL. The authors go on to cover scripting in SSIS, one of my favorite topics, and do a good job of addressing scripting patterns in both the script task and script component. Finally, the book reviews ways to monitor and improve SSIS performance.
I consider a technical book to be successful if it contains the right mix of information so that I can immediately apply what I’ve learned to legitimate problems and situation. To that end, this book is a winner in my opinion; even though I have been developing ETL processes in SSIS for years, I was able to walk away with some practical techniques that I began using almost immediately. Experienced ETL developers, as well as those with only a little SSIS experience, will likely find this book very useful.