Showing posts with label Data mart. Show all posts
Showing posts with label Data mart. Show all posts

Monday, April 9, 2012

Functional Analytics - Data Warehouse or Data Mart?

Data Warehouse or Data Mart?
So, here is the age old question. Should I go the Kimball route (data mart first) or the Inmon route (Enterprise Warehouse first)? While both have merits and demerits (we are not going to get into that discussion here as it has been done before). I think, a "functional" approach should be taken to maximize value. Let me explain. If you look at a physical warehouse, let's say, the warehouse of a shipping company, you don't see one warehouse for canned goods and another for toys and another one for perishables. You may see sections carved out for canned goods, toys and maybe a refrigerated section for perishables. But rarely do you see three separate buildings for each type of item. So why should it be different for a Data Warehouse? Basically, if you look at the data warehousing concept, we will see data marts that are "specific" to a line of business and a warehouse who is the closest thing to a physical warehouse, but often times so scattered and/or so complex that the LOB (Line of Business, if  you didn't already know that) seldom finds use for it. So are we stuck? Not really!

A Flexible, Extendable model.
What if you can have the best of both worlds? What if you could rapidly deploy a warehouse, knowing that there is going to be more LOBs added later?
What if, we could deploy this warehouse, knowing that tomorrow, "perishables" may be added to the warehouse and the model has to be adept enough to add "refrigeration"?
What if, you could add more information at different levels of granularity to the same model?
And...the kicker....what if, we could correlate information across the enterprise, with the same model and don't have to create LOB specific data marts?

"Hogwash, won't happen, what did you smoke this morning?" you say?

"Functional" Approach
So, if you are working for an organization whose primary business is NOT building software, then, you, my IT colleague, is there to support the "business user". I have yet to see a business user who has come to me and said "Boy, I wish I had a data warehouse". All of  them, however, have asked me one thing. "I wish I had good quality information. And I need it today, if possible". So why not give them just that? Rapid Deployment, Ability to add more information later. Can you design such a model? The answer is a resounding YES!

Has it been done before?
Do I have to repeat myself? I did say YES, didn't I? And I added the word "resounding" to give it a dramatic emphasis! Yes we do have such a model. Unfortunately, I can't share the specifics of it just yet without an NDA or holding your first born hostage. Our FlexDimensional model does just that. It allows us to do a few things:
1. Rapidly deploy with limited up front information (business process, granularity, fact etc)
2. Add more information without having to build new star, snowflake, or whatever else schema
3. Correlate enterprise wide information in a single, extendable model.

So, there you have it. There is always a better way of delivering "good quality information" at the point of decision making!