Sql-server – Centralized master data shared among other several DBs

master-data-servicesreplicationsql serversql-server-2008

I'm researching and investigating about all possible ways to create a master data database for my portfolio of applications.
To give you a quick overview, an example will come in handy:

I want to create a Users database that several different applications will use. Instead of creating user tables in each application I need to centralize in one point all these users data and their permissions, for each application.

All this applications have MS SQL server as rdbms, so the Replication engine with a single publisher and several subscribers is an option. However, I would like to know if there are other alternatives, and what's more important, if any of these alternatives could be platform independent (for example, a master DB designed in MySQL with two slaves which could be Oracle and MS SQLServer).

Thanks for your help!!

Best Answer

If your environment is currently heterogeneous or you're moving in that direction already, look into using an enterprise service bus to abstract away the implementations of each database. If it isn't, then I would advise against doing so unless absolutely necessary -- this will complicate your environment a lot, especially as you start adding in HA/DR solutions.

Replication should work for SQL Server. I'm not 100% sure of the exact supported features for heterogeneous replication, nor are your requirements very specific in the question, so I can't comment on that.

Master Data Services is a SQL Server only solution (introduced in 2008 R2, which is higher than the version you've tagged the question with), and beyond that I'm not familiar enough with it to say if it would work for your situation.