Article Preview
Top1. Introduction
Replication is creating multiple copies of a possibly mutating object (file, file system, database, and so on) with the objective to provide high availability, high integrity, high performance, or any combination thereof. For high availability and integrity, the replicas need to be diverse, so failures are sufficiently independent (Renesse & Guerraoui, 2010).
Replication is a key technique to achieve high availability in distributed and dynamic environments by masking errors in the replicated component (Noor & Deris, 2010; Bora, 2006). Thus, replication is very important in providing highly available and efficient distributed system. It is also are the primary goals in designing a dependable distributed system. In order to provide reliable services, the system needs to maintain the data on some replicas (Mamat, Deris, Abawajy, & Ismail, 2006). Keeping all of the replicas updated requires extra communication and extra processing. Several techniques have been proposed in managing replicated data. However, different techniques have different reliability levels of managing replicated data. One of the simplest replication techniques for managing replicated data is called read-one write-all (ROWA) (Helal, Heddaya, & Bhargava, 1996; Noraziah, Deris, Ahmed, Saman, Norhayati, & Alfawaer, 2007). ROWA utilizes the synchronous replication mechanism. In this technique, a read operation is allowed to read any copy of data. Meanwhile, a write operation is required to write all copies of data (Mamat, Deris, Abawajy, & Ismail, 2006). Even though ROWA is simple and elegant, it has the significant drawbacks. If one of the replicas is unavailable, then an update transaction cannot be terminated. Voting in general allow writes to be recorded only at a subset (a write quorum) of the up sites, so long as reads are made to query a subset (a read quorum) that is guaranteed to overlap the write quorum (Helal, Heddaya, & Bhargava, 1996; Noraziah, Deris, Ahmed, Saman, Norhayati, & Alfawaer, 2007). However, this technique causes the communication cost for read operation is fairly expensive. Although the idea of replication is robust, practical implementation of replication is often a difficult challenge (Helal, Heddaya, & Bhargava, 1996). This due to the complexity in the implementation of replication Therefore they have been studied more theoretically rather than implement it.
One of the most popular replication techniques that currently implemented successfully is two-replica distribution technique (TRDT) or primary–backup technique. TRDT has been proposed by Shen, Chen, Zheng, and Shi (2001). There are numbers of fault tolerant and failure recovery techniques based on TRDT namely Netarkivet’s data grid and fast disaster recovery mechanism for volume replication systems. Netarkivet’s data grid developed for the national Danish web archive, and is used for storing large amounts of crawled web pages (Christensen, 2006). While to optimize the disaster recovery mechanisms. Wang, Li, and Lin (2007) presented a fast disaster recovery mechanism. It tracks the incremental changes as they happen. However, these research projects inherit the TRDT weaknesses of increasing cost overhead.
This paper focus on improving high availability in which it calculates future expectation of interdependent servers availability in a distributed web system over an extended period of time. In this paper, we propose the implementation of the distributed web servers with Neighbour Replica Distributed Technique (NRDT). With less complexity, it is not only theoretical sound but also ideal for practical implementation in real environment, this technique is very cost effective with less complexity compare to other techniques. Moreover, the performance results show NRDT availability performs better then TRDT with less overhead.