Databases have become an important function of everyday life in the management of business or departments as now it is possible to have an access to numerous websites and the information that is kept in these sites (Cavage 2013). A distributed database system is composed of a distributed database that administers or manages the distributed database management system while a distributed database system is a compilation of data that is logically interconnected over several sites that are linked through a network of computer. On the other hand, the distributed database management System is the software that administers the distributed database and provides a framework that ensures that information or data is dispensed or dealt-out in a transparent manner. In a distributed database, system it is assumed that the data or the information is stored at numerous sites, which consist of single processors situated in diverse sites of the system, linked together by a computer network. (Cavage, 2013). The main purpose of a distributed database system is that there is improved availability and reliability of data access as well as improved performance. It is also an easier and economical way of expanding the system. It also ensures the transparent management of data that is distributed that is exhibited by independence of distributed data as well as distributed transaction atomicity.
EXPLANATION OF PAPER
A distributed database system must have some desired properties that include consistency, availability and partition tolerance. The distributive database system should be consistent in the sense that all the sites within the system must be able to see the similar data at the same time, what is known as distributed transaction atomicity. There must be availability of response at any given time when requested or on demand. There must also be a guarantee that the properties in the system will be maintained even when some sites cannot be in constant communication with each other which may be caused by failures in the network, what is known as partition tolerance. However, it is incredible to have a distributed database system that is dependable, readily accessible and can tolerate partitioning all happening at the same time. There are two types of distributed database systems that is the homogenous database system and the heterogeneous database system. In a homogenous distributed database system appears as a single system and all the sites have the same software and are knowledgeable of the existence of the other and agree to process data when requested by other users. In a homogenous distributive database management system, the operating system used in all the sites or location must be similar and well matched as well as the structures of the data utilized. The application used in the database must also be similar and well matched. However, in heterogeneous distributed database the different sites may make use of different schemes and software or what is referred to as multi-database systems. The sites may be unaware of the existence of the other and thus there may only be few facilities for cooperating in transactions confirming how the system is autonomous.
In homogenous distributed database systems there may be distributed data storage whereby we can have different relations stored at distinct sites kept at the different partitions or compartments. The partitions may be organized in horizontal partitioning or vertical partitioning. Further, the horizontal or vertical partitioning may be divided further that is recursively. Moreover, if the partitions are to be brought together, the relations that were initially present must be retained. If they are to be reproduced, the replicas may be stored at multiple or several sites within the distributed database system.
In distributed database systems, there is also distributed query planning that involves data localization, global localization then local optimization. After