Data Replication
A replicated database is a distributed database in which multiple copies of some data items are stored at multiple sites.
The main reason for using replicated data in distributed systems is to increase Database System (DBS) availability. By storing critical data at multiple sites, a copy of the data item is still available on another site if one of the sites fails.
Another goal is improved performance. Since there are many copies of each data item, a transaction is more likely to find the data it needs close by, as compared to a single copy database. Finally, replication of data is It used to increase the DBS reliability. Even when components of the distributed systems fail, a DBS can continue executing user requests without violating database consistency.
Types of Replicated Databases
Data replication (or no replication at all) can be classified in three ways, as shown in figure below:Data Replication Options
- Fully Replicated Database
- Partially Replicated Database
- No Redundant Replication
Fully Replicated Databases:
As the name implies, fully replicated distributed database replicates every table (or its fragments) on every node of the system. That means that each node has a full copy of the database making it easier for query processing. Failure of a node has minimal effect on the operation of the database except for users that Wish to use the failed node. The disadvantage of a full replicated database is that updates become expensive and so does transaction management and concurrency. Furthermore, full replication requires much more storage than a system with no replication.Partially Replicated Databases:
The disadvantage of a partially replicated database is that updates are expensive and so is transaction management and concurrency although it is better than fully replicated database.