Distributed DBMS architecture

As part of the distributed database setup, we need to configure a distributed database management system, which can synchronize the information retrieval and/or update each of the individual schemas. While each individual system can have its own database management system to control its respective database, having a distributed Database Management System (DBMS) takes care of the following purposes:

  • Monitoring the data setup in the distributed database, so that individual users and applications see the distributed database as one logical instance of database and schema
  • Govern the information by locating it during retrieval and updating requests from individual applications and users
  • Taking the requests for individual database nodes, and retrieving the information from other remote databases as well, if the requested information is not available in the local database
  • Ensuring that the distributed database access is following the roles of universal query optimization, concurrent, and deadlock management, information security, and automatic exception handling and recovery
  • With the help of features such as multiphase commit protocol, ensuring the information across all the distributed database nodes is consistent
  • Abstract the globally distributed database as one rational database with the primary key governance to ensure, the entities distributed across the individual database can be joined and related with diverse primary keys

The following diagram illustrates the distributed database management system architecture:

In the preceding architecture diagram, each of the individual systems have their own database management system (local DBMS) to manage the database installed with the information warehoused in that respective system. Along with the local DBMS, each of the individual systems carries a replica of the distributed DBMS along with the distributed data repository association. The purpose of having the distributed data repository is to maintain that the reference for the entire information is stored across the distributed database network and their definitions. Each application or user request for the information will first be reviewed within the local database; if not found, it will be forwarded to the global database with the help of the distributed DBMS. If the requested information is available within the local system, it can be populated by a local transaction, and if the information is retrieved from across the network of databases with the references reviewed from the distributed data repository, it is termed as a global transaction.

The design goals of the distributed database include:

  • Location Transparency: Applications and users should be able to populate the information from the network of databases as if they are interacting with a single database.
  • Replication/Fragmentation Transparency: Applications and users should be able to visualize the information as a single unit/existence of information even though it is replicated across nodes for distributed management.
  • Failure Transparency: Ensure that a complete set of operations are part of a single transaction and should be either committed, or none of them are committed, across the networked database nodes.
  • Commit Protocol: A process to ensure that the failure transparency is achieved through transaction management on global transactions. A renowned commit protocol for this purpose is the two-phase commit, wherein the transaction is committed only after the updates at all the nodes are successful through lock – update – notify and commit operations.
  • Concurrency Transparency: Multiple simultaneously executing transactions should be organized to showcase an individual transaction status and the result of simultaneous execution must be the same as if those transactions are performed in sequential order.
  • Security: Data and transport security should be adopted with the help of encryption and SSL communication protocols.

Eminent organizations have their own products for distributed database management with the above mentioned design goals, including:

  • IBM: DB2 Data Propagator, Distributed Relational Database Architecture (DRDA), and Data Joiner
  • Sybase: Replication Server
  • Oracle: SQL Anywhere Studio, Table Snapshot, and Symmetric Replication options
  • Computer Associates: Advantage Ingres Enterprise Relational Database Replicator Option
  • Microsoft: SQL Server 2005


Let's now review how to communicate the individual database with the renowned Java way JDBC, before reviewing the communication with the distributed database.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset