zondag 11 juli 2010

Master data registry implementation

Reading the article “Master Data Management from a technical perspective” from Microsoft (april 2010) i noticed that there are 4 implementation possibilities of Master Data management:
  • Master data registry implementation
  • Data aggregation implementation
  • System-of-record-only implementation
  • Complete enterprise master data management implementation.
I want to describe the first type of implementation in this blog: master data registry implementation. In a registry implementation, each system remains in control of its own data. All system data records are mapped in the master data registry. Data maps shows the relationships between the keys of two different keys. The microsoft article distinguishes two different ways :
  • One to one: Every record in the main system will have only one corresponding record in the secondary system
  • One to many: Every record in the main system will have one or more corresponding records in the secondary system.

This approach is the opposite of the repository approach in which the master data is stored in the MDM hub. The master data is maintained in the application databases and the MDM hub contains lists of keys that can be used to find all the related records for a particular master data item. For example, if there are records for a particular customer in the CRM, ERP and a other database, the MDM hub would contain a mapping of the keys for these three records to a common key.

Advantage :
  • The changes to application code to implement this model are usually minimal.
  • Current application users generally don’t need to be aware of the MDM system.
Disadvantage :
  • Every query against MDM data is a distributed query across all the entries for the desired data in all the application databases. If the query is going against a particular customer this is probably not an unreasonable query but if you want a list of all customers who have ordered a particular product in the last six months you may need to do a distributed join across tables from five or even ten databases. Doing this kind of large, distributed query efficiently is pretty difficult.
Interesting approach! I assumed, before i read the article, there was only one implementation type possible: the repository approach. So there are multiple types of MDM implementations. I will blog about the other types laters...

Also interesting is the System Of Record (SOR) and the System Of Entry (SOE). SOR means that most, if not all systems, recieve their data from its source. When conflicts arise, this system is considered primary.

SOE means that this system is the primary point of data entry. This may be direct entry or through services that update the data in virtual real time. This is more interesting because when studying Datavault Linstedts states that the system of record moves from the source systems to the datawarehouse (because source systems alter). So how to put this in perspective?


2 opmerkingen:

  1. Great post, Hennie. I am really looking forward to your future posts on implementation types. We have a community for IM professionals (www.openmethodology.org) that discusses related topics and we have bookmarked this post for our users. Looking forward to reading more of your work and sharing with our community.

  2. Hi Lindsey,

    Thanx for your reaction. I took a RSS from the the site. Looking forward for related discussions.