Archives

EMAG TRESNI and Data Warehouse Implementation

Those who follow this blog know that I’m a huge video game geek. I have a life-sized Mario statue and a fairly large video game collection which includes about 700 original complete in box NES Games.

Games

Background

I also own almost 40 books about video game history. One of the best books I’ve read is The Ultimate History of Video Games: From Pong to Pokemon–The Story Behind the Craze That Touched Our Lives and Changed the World by Steven Kent. Even if you only casually played video games back in the day, it’s a great read.

In the book, Kent discusses the design of the Atari Lynx handheld, which attempted to compete with Nintendo’s Game Boy. I’m sure most of my readers have never heard of the Atari Lynx since it was crushed by the Game Boy. The Lynx received rave reviews, had a much better full color screen, and the ability to link together for multi-player. Even though the Game Boy was antiquated and completely out-classed, Lynx lost the battle because Nintendo was much better at marketing than Atari by this time. There’s an important lesson in there, but we’ll leave that for another day.

Atari Lynx

Atari Lynx


On page 418, Kent relates a story about the inherent problems when designing complex systems like the Lynx. The engineering teams, despite being meticulous in their planning and documentation, made one minuscule error in the binary coding. When the Lynx was powered up, if there wasn’t a cartridge in the slot, the message “Insert Game” should have been displayed. Because of this one mistake, the screen displayed “EMAG TRESNI” or “Insert Game” backwards. The first version of the Lynx systems actually shipped this way. “EMAG TRESNI” became an inside joke for the team, because I guess it’s cooler than referring to Murphy’s Law.

Data Warehouse Implications

What does this have to do with Data Warehouse Implementation? At the time I read this, I was in the middle of a particularly hairy Data Warehouse implementation. The business leaders demanded a data warehouse as fast as possible, and were unwilling to dedicate the necessary time in the investigative phase of the implementation. I’m referring to steps like:

  • Gathering Business Requirements
  • Determining Technical Requirements and Designing Architecture
  • Data Source Quality Testing

You know… Minor things like that. These steps can take a very long time, but they are absolutely necessary and rushing through them almost certainly guarantees project failure. Further, implementing an appropriate ETL Framework is essential. For example, if you don’t plan ahead for SQL Server Integration Services (SSIS) package failure, due to data errors and whatnot, you’ve set yourself up for a rude awakening some night at 3 am scrambling to correct a botched load. While I’ve never designed a piece of hardware like the Lynx, I have worked on some incredibly complex Data Warehouse implementations, and I can confidently say that EMAG TRESNI runs rampant in our efforts as well.

Until fairly recently, making changes to the dimensional model could be disastrous because making the necessary changes to the ETL was so time consuming and painful. How many times have you been in the process of implementation, had to make a change (for business or technical reasons), and then had to alter data structures such as stored procedures, views, etc. Even worse than that, the process to open all the relevant SSIS packages, often just to open specific tasks to refresh meta data, kills productivity. Let’s not forget that all that code needs to be check out and back into source control, quality assurance testing is necessary, etc.

Did you notice how I prefaced the previous paragraph with “Until fairly recently?” Well, I’ve been pursuing a mastery of BIML Scripting. I’m using it, along with my existing design patterns, to automate my Data Warehouse Development. Yes, I said automate. Stay tuned, as I’m about to begin sharing with you how BIML Scripting will change everything.

Related posts:

1 comment to EMAG TRESNI and Data Warehouse Implementation

  • Peter Schott

    Great reminder about BIML Scripting to help reduce pain. I’m starting to pursue that myself. Wish I could manage to make the all-day workshop near the PASS Conference this year, but costs prohibit that. 🙁

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>