Ticker

6/recent/ticker-posts

Disadvantages of Distributed Database - DDBMS

 

Disadvantages of Distributed Database

1) Complexity: Replication of data in a distributed database adds complexity to the DDBMS. However, adequate data replication is necessary to achieve data availability and reliability.

2) More Costly: Increased complexity and a more extensive infrastructure means extra labour costs. Distributed database systems require expert professionals with in-depth knowledge to be developed, tested, and implemented. This requires high payment; so they are more costly. In addition to software, a DDBMS requires additional hardware to establish a network among the sites (database servers).

3) Security: In a DDBMS, it is  not only required to control  the access to replicated data from  multiple locations, but  also to secure the network. Remote database fragments must be secured, and they are not centralised so the remote sites must be secured as well.

 4) Difficult to Maintain Integrity: In a DDBMS, the communication and processing costs that are required to enforce the integrity constraints on databases are very high as the data is stored at various physically separated sites.

5) Increased Processing Overheads: In DDBMS exchange of data as messages and additional computation to achieve the coordination among sites imposes a processing overhead which does not arise in centralised systems.

6) Inexperience: Distributed databases arc difficult to work with, and as a young there is not much readily available experience on proper practice.

7) Lack of Standards: There are no tools or methodologies yet to help users to convert a centralised DBMS into a distributed DBMS.

8) Database Design More Complex: Besides the normal difficulties, the design of a distributed database has to consider fragmentation of data,, allocation of fragments to specific sites and data replication.

 9) Greater Potential for Bugs: Since the sites of a distributed system operate concurrently, it is more difficult to ensure the correctness of algorithms implemented in the program (software).