Distributed database management system

From ArticleWorld


A distributed database management system (abbreviated as DDBMS) is a software system that permits the management of a distributed database. A distributed database consists of multiple databases located at different computers interconnected through a network. A DDBMS manages a distributed database in such a way that the distributed database looks just like a non-distributed database to the user.

Hardware

The following hardware components are not present in a centralized DBMS but are present in a distributed DBMS:

  • Multiple computers, each computer is called a node or a site.
  • A communication network that is used for transmitting data and commands between nodes.

Functions

The functions that a DDBMS provides include those that a centralized DBMS provides as well as some additional ones. Common functionalities of centralized and distributed DBMSs include the implementation of DDL and DML requests from the user and providing some kind of data dictionary function. The additional functions that a DDBMS performs include:

  • Replicated data management: Replication of data should be transparent to users so that they do not perceive that the data is replicated. Update propagation is an important concept under this function. Current DDBMSs have not yet fully implemented the property of replicated data independence.
  • Distributed query processing: This refers to the ability of the DDBMS to respond to queries that require data to be retrieved from multiple sites. It also includes the ability to optimize such queries.
  • Distributed transaction management: The two major aspects to transaction management, viz. recovery control and concurrency control require extended treatment in the distributed environment. This is because a transaction needs to maintain consistency even when code is to be executed at multiple sites.

Other functionalities include distributed data recovery, security and the ability to run over multiple hardware and software platforms.

Because of these additional functionalities, a distributed DBMS is much more complicated than a centralized DBMS.

Current scenario

Software vendors have not yet been able to produce a full-scale comprehensive DDBMS that implements the techniques and functionality proposed in distributed database research. They have, instead, directed their efforts away from developing such a system. Many of them concentrate on developing active heterogeneous database management systems or on developing client-server based systems.