- 2073 Shrawan · 6+2 marks
Replication, fault tolerance, scalability
Short answer
Replication maintains copies of data/services on multiple computers; fault tolerance is the ability to provide correct service despite component failures. They are necessary because failures are frequent in distributed systems and users demand continuous availability; replication provides redundancy for fault tolerance (availability = 1 - p^n) and performance. Replication enhances scalability by distributing load among replicas, placing copies near clients to reduce latency and network traffic, and eliminating single-server bottlenecks, especially for read-heavy workloads.
Define replication and fault tolerance in DS and explain why are they necessary? Explain how replication enhanced scalability for DS.
Replication
Replication is the maintenance of copies of data or services on multiple computers, so that clients can use any copy. The replicas must be kept consistent, which is the main difficulty.
Fault tolerance
Fault tolerance is the ability of a system to continue to give correct service even though some of its components (processes, machines, links) fail. It involves detecting, masking and recovering from failures, mostly using redundancy.
Why they are necessary
- Distributed systems have many components, so the probability that some part fails at any time is high; failures are the norm.
- Users expect continuous availability and correct results (banking, e-commerce, health).
- Without redundancy, a single server crash would stop the service or lose data.
- Replication gives the redundancy for fault tolerance (availability = 1 − pⁿ) and improves performance by serving clients from nearby copies.
- Fault tolerance gives dependability: availability, reliability, safety and integrity.
How replication enhances scalability
Scalability is the ability to handle growth in users and data without loss of performance.
- Load sharing: requests are distributed over replicas by load balancers, so throughput rises with the number of servers (e.g. web server farms, DNS replicas).
- Locality: copies placed near clients (caching, mirrors, CDNs) shorten response time and reduce wide-area traffic; this is how replication handles geographic scale.
- Reduced bottleneck: one central server is replaced by many, so the single server does not saturate.
- Read-mostly workloads: reads served by any replica; only writes need propagation. Limits: the cost of keeping replicas consistent grows with updates; consistency may be relaxed (eventual consistency) to keep scaling.
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Fault tolerance and types of faults · Distributed System, chapter 9
- Fault tolerance techniques · Distributed System, chapter 9
- Reasons for replication; fault tolerant services · Distributed System, chapter 7
- Replication objectives; primary-backup · Distributed System, chapter 7
- Fault tolerance; Byzantine failure · Distributed System, chapter 9
- Fault; primary-backup vs active · Distributed System, chapter 7
- Fault tolerance and redundancy for reliability · Instrumentation II, chapter 7 · asked 4×
- Software fault tolerance and recovery · Instrumentation II, chapter 9 · asked 2×
- Availability and fault tolerance in GFS · Big Data Technologies, chapter 2
- Line-to-line fault current calculation · Power System Analysis II, chapter 5 · asked 4×