What is Replication?
Replication is the process of maintaining synchronous or asynchronous copies of data across multiple storage systems or sites to ensure availability, durability, and disaster recovery.
Replication is the process of maintaining synchronous or asynchronous copies of storage between sites or systems. Its primary purpose is to protect against data loss and ensure service continuity when a primary storage node fails. Replication can operate at the block, file, or object level, depending on the storage architecture.
Synchronous replication writes data to both the primary and replica targets before acknowledging the write to the application. This guarantees zero data loss, but it adds latency proportional to the distance between sites. Asynchronous replication acknowledges the write on the primary first, then propagates the change to the replica. This reduces latency but creates a window of potential data loss if the primary fails before the replica is updated. Many systems use a recovery point objective (RPO) metric to express this window.
Replication is distinct from backup, which creates point-in-time copies for restore, and from erasure coding, which distributes parity across nodes for space-efficient redundancy. Replication is a foundational building block in distributed storage systems (e.g., Ceph, Cassandra, Hadoop HDFS) and in storage area network (SAN) arrays that replicate LUNs between datacenters. Cloud providers also offer block-level replication services for virtual machine disks and database volumes.
Key facts
- Synchronous replication has zero RPO but higher latency.
- Asynchronous replication has low latency but a nonzero RPO.
- Replication can occur within a datacenter or across geographic regions.
- Block-level replication is common in SAN and hypervisor environments.
- Replication is not a substitute for backup; it guards against hardware failure, not logical corruption.
How it works in practice
Related terms
References
More in Storage
Block Storage
Block storage is a storage architecture that presents raw fixed-size chunks (blocks) to a computer, which the operating system partitions and formats before use, commonly used for virtual machine disks and database volumes.
Cold Storage
Cold storage is a low-cost, slow-retrieval data tier for infrequently accessed information, such as backups, archives, or compliance records, with retrieval times ranging from minutes to hours.
Erasure Coding
Erasure coding is a data protection method that splits data into fragments (shards) and adds parity, allowing reconstruction from a subset of fragments; it is commonly used in cloud object storage to tolerate failures efficiently.
Fibre Channel
Fibre Channel is a high-speed networking standard primarily used to connect storage devices in storage area networks, operating as a dedicated protocol stack separate from Ethernet.
File Storage
File storage exposes data as a hierarchical filesystem over network protocols like NFS and SMB, commonly delivered via network-attached storage (NAS) appliances for shared access.
Hot Storage
Hot storage is the default high-performance tier in object storage systems, optimized for low-latency access to frequently retrieved data.
iSCSI
iSCSI is a storage protocol that encapsulates SCSI block-level commands over TCP/IP, enabling servers to access remote disks as if they were locally attached.
NFS
NFS (Network File System) is a distributed file system protocol originally developed by Sun Microsystems that allows a client to access files over a network as if they were local. It is widely used in Unix and Linux environments and runs over IP networks.
Object Storage
Object storage is a flat data storage architecture that manages data as immutable objects, each with a unique identifier, metadata, and API access over HTTP. It is the model behind Amazon S3 and similar cloud storage services.
RAID
RAID (Redundant Array of Independent Disks) combines multiple physical disk drives into a single logical unit to improve performance, fault tolerance, or both, using techniques like striping, mirroring, and parity.