i must design a system which unifies 4 applications, these applications share a lot of information (which at the current system, the information is duplicate in databases). My first idea was to use a distributed database system in order to avoid all these duplications and the manual synchronization among the systems, the think is that almost everything needs implementation from the beginning (since the database is the heart of these systems) so i don't know if the time/money/implementation combination is the best solution or not.

The technologies that i have in my mind to use: MySQL Federated Engine to achieve the distribution in databases CakePHP: 2/4 applications are in CakePHP so i will keep it the same language. Python: 1 application is in python Java: 1 application is in java

Will i have any problem with the above languages and Database engine ?

Any ideas, suggestions ? Any feedback will be appreciated!