Hiding the complexity of replication from users is a difficult task and it’s better to assign the task to middleware module in all distributed applications; which is responsible for masking the heterogeneity among servers and to provide a transparent view of system.