In case an organization has to choose between a distributed architecture and
a centralized architecture for implementing an application, the system architect
must balance the advantages against the disadvantages of distribution of data.
We have already seen the advantages of using distributed databases. The primary
disadvantage of distributed database systems is the added complexity required
to ensure proper coordination among the sites. This increased complexity takes
various forms: