As I get more and more embroiled in the Master Data Management (MDM) discipline I'm forming nascent opinions on what constitutes MDM, and how best to implement an MDM strategy. A common question raised about this discipline is whether your MDM system should be for supporting operational systems (e.g. running your customer-facing applications) or analytical ones (e.g. month-end reporting). My glass-half-full answer is "both".
I was involved in an internal email thread today with a bunch of colleagues when one of them asked (and I'm paraphrasing) "Do you think that MDM implementations should concentrate on modelling the real-world, or do we (as BI guys) have a much bigger focus on making the MDM dimensions mostly report ready from the outset?"
That was a very thought-provoking question. Here was my answer:
I believe its important not to pigeonhole MDM as a BI or operational technology – to do so makes a mockery of the very justification for having an MDM strategy in the first place. Let’s re-iterate what that justification is – a single view of every entity in your enterprise. If we start to get into considerations for BI when building an MDM system then you’re venturing into an MDM implementation that isn’t being done with that justification in mind. So-called “BI” implementations should adapt to leverage MDM, not the other way around.
In an ideal world (which this is not) you wouldn’t even suck data out of your MDM application into another data silo, your reports should sit directly on top of the MDM application. There is even a name for this reporting technique, its called federated querying (which I have mentioned in passing before here).
Sounds great in theory doesn't it? Well the best theories always do, maybe that's why they stay as theories. I am in danger of getting on my What is BI? soapbox again so I'll stop right there. Opinions are, as always, thoroughly welcomed.
-Jamie