Data Replication is the process of storing data in more than one site or node. This is necessary for improving the availability of data. There can be full replication, in which a copy of the whole database is stored at every site. There can also be partial replication, in which case, some fragment (important frequently· used fragments) of the database are replicated and others are not replicated. There are a number of advantages and disadvantages to replication.
Advantages & Disadvantages of Data Replication
There are following advantages of replication:
Availability
If one of the sites containing relation R fails, then the relation R can be obtained from another site. Thus, queries (involving relation R) can be continued to be processed in spite of the failure of one site.
Increased parallelism
The sites containing relation R can process queries (involving relation R) in parallel This leads to faster query execution.
Less Data Movement over Network
The more replicas of, a relation are there, the greater are the chances that the required data is found where the transaction is executing. Hence, data replication reduces movement of data among sites and. increases .speed of processing.
Disadvantages of Data Replication
There are following disadvantages of replication:
Increased overhead on update.
When an updation is required, a database system must ensure that all replicas are updated.
Require more disk space
Storing replicas of same data at different sites consumes more disk space.
Expensive
Concurrency control and recovery techniques will be more advanced and hence more expensive.
In general, replication enhances the performance of read operations and increases the availability of data to read-only transactions. However, update transactions incur greater overhead. Controlling concurrent updates by several translations to replicated data is more complex than is using the centralized approach to concurrency control. We can simplify the management of replicas of relation r by choosing one of them as the primary copy of r. For example, in a banking system, an account can be associated the site in which the account has been opened. Similarly, in an airline-reservation system, a flight can be associated with the site at which the flight originates.