Database technology has transformed the database users from a paradigm of data processing where each application described and uphold its data, to one in which data is defined and managed centrally. During recent times, you have seen the fast and ever growing developments in network and data communication technology, embodied by the Internet, mobile and wireless computing and grid computing. With the combination of these two technologies, distributed database technology may revolutionize the mode of working from centralized to decentralized. This collective technology is one of the major reasons for developments in the database systems world. Here we will be dealing with the different issues of the distributed management system of the database. This allows users to access not only the data but also data stored at remote sites. We will be discussing the design and concepts of the distributed system.
More on the Concept of Distribution
A major motivation behind the development of database systems is the need to integrate the equipped data of an organization and to provide restricted access to the data. Although integration and controlled access may involve centralization, this is not the intention. In fact, the development of computer networks promotes a decentralized mode of work.
Basic Terminology used in Distributed System
A logically interconnected set of shared data (and a description of this data) physically scattered over a computer network.
This software system allows the management of the distributed database and makes the distribution transparent to users.
A Distributed Database Management System (DDBMS) contains a single logical database that is divided into a number of fragments. Every fragment gets stored on one or more computers under the control of a separate DBMS, with the computers connected by a communications network. Each position is capable of independently process every user's requests that require access to local data (i.e. each position of the distributed system has some basic degree of local autonomy) and is also able to process data stored on other computers within the network. Users access the distributed database via applications that are classified as those which do not need data from other sites (local applications); and also those that do need data from other sites (global applications). You will be requiring a DDBMS to have at least one global application. A DDBMS, therefore, has the following characteristics:
- a collection of logically related shared data
- n the data is split into a number of fragments
- fragments may be replicated
- fragments/replicas are allocated to sites
- the sites are linked by a communications network
- the data at each site is under the control of a DBMS
- the DBMS at each site can handle local applications, autonomously
- each DBMS participates in at least one global application
It is a DBMS that runs across multiple processors and disks that is designed to execute operations in parallel whenever achievable, in order to improve the performance of a database. Parallel DBMSs are again dependent on the principle that single processor systems can no longer meet the growing necessities for cost-effective scalability, reliability, and performance. A powerful and financially attractive choice for a single-processor-driven DBMS is a parallel DBMS driven by multiple processors (i.e. the concept of multi-programming). Parallel DBMSs link multiple, smaller machines together into a single set to achieve the same throughput as a single, larger machine and often provides greater scalability and reliability than single-processor DBMSs. The three main parts for parallel DBMSs are:
- shared memory
- shared disk
- shared nothing
Advantages and Disadvantages of DDBMS
- Organization's choice: Many organizations are obviously distributed over several locations. It is natural for databases used in such an application to be spread over these locations.
- Improved availability: A failure at one site of a DDBMS, or a failure of a communication link making some sites unreachable, does not make the entire system inoperable. Distributed DBMSs are designed to carry on the function despite such failures.
- Improved performance: With the concept of parallelism of distributed DBMSs, the speed of database access may be better than that achievable from a remote centralized database.