The Register® — Biting the hand that feeds IT

Feeds

Replication 101: How to make quick copies of your data

Best to keep a spare set

Cloud based data management

In art, a replicas does not have the same value as an original. But in computing, replicas are as perfect as the original if done fast enough.

In a virtualised data centre where resources scale up and down according to demand, the failure of a storage array can drastically hinder responsiveness. Replication can protect you against that.

Copying an individual drive's contents to another drive in the same array is called mirroring and is classed as RAID level 1. Its aim is to protect against a disk drive failure and the process is instantaneous.

Mirror, mirror on the wall

Writes for the source disk come in to the RAID array controller, which generates a simultaneous write to the second or target disk.The contents of the two disks are identical at all times.

Mirroring is, in effect, short-distance replication inside a drive array with no time penalty involved. Replication between drive arrays relies on the array software, or specific server-based storage drivers sending data copies from the primary or source array to a target array. If the source array fails, then the server-based applications can switch to the target array and carry on running.

A classic example is EMC's SRDF (Symmetrix Remote Data Facility), which copies newly written data data from one Symmetrix array to another.

Another is NetApp’s SnapMirror, with the mirroring term referring to inter-array replication and not RAID 1. Replication is certainly practical with these mature software products and setting up is pretty easy, although it can be complicated by putting in place more replicas to raise the level of disaster protection.

Long-distance call

In SRDF and similar products, the source array controller sends a message to the target array controller and tells it to write the same data. This can be done in such a way that the target array is always in synchrony with the source array, which is known as synchronous replication.

Within a data centre, synchronous array-to-array communication adds just a few microseconds to the total write transaction time.

As the source and target arrays get further apart, from campus distances to city-wide and even inter-continental distances, the round-trip transit time for the replicate data request and confirmation signal becomes longer and longer.

You don't need such a fast network link, which saves money

You can buy faster and more expensive network links, send only changed data blocks and compress the data, but eventually the speed of light becomes the limiting factor. The server-based application has to wait longer and longer for the replicated write to complete the further the distance between the two storage arrays.

How can you get around that? One way is to trust that the target array received the data and not wait for an acknowledgement. This is asynchronous replication.

The advantages are that you don't need such a fast network link, which saves money, and the application storing the data doesn't have to wait for a long-distance round trip to complete the write transaction.

Lost and found

The downside? If and when the source array fails, the most recently written data may not have been received by the remote array.

When server applications switch from the failed array to the target array they may find some data is missing and then have to restart or repeat transactions. You can have a recovery point objective of zero data loss with synchronous replication, but not with asynchronous replication.

Whichever replication scheme you choose has cost, time, and possible data loss implications, and these have to be factored into your disaster recovery choice.

In replication as in art, the more perfect the execution, the more you will spend. ®

Regcast training : Hyper-V 3.0, VM high availability and disaster recovery

Latest Comments

WTF was the point of this article?

Even replication 101 needs to mention the layer at which replication is done (application; database; file system; block level host; block level array). This article was very, very poor.

0
0

plus you can do it as a small guy too

If you are small fry and cannot afford huge arrays but want some kind of redundancy then openfiler will also mirror to another openfiler box. Very useful as we have 2 openfiler boxes is two different buildings for redundancy.

0
0

More from The Register

Samsung Galaxy Note 8: Proof the pen is mightier?
Sammy’s iPad Mini killer has a stylus to stab other rivals too
Microsoft lures buy-curious vixens, corduroys with a cheap fondle
Surface slab sales latest: Will no one rid Ballmer of these turbulent tabs?
First look: iOS 7 for iPad
No, Apple hasn't released it yet, but that doesn't stop intrepid devs
 breaking news
Curtain drops on Apple Store ahead of WWDC: What lies behind?
Steve Jobs watching from on high. No pressure, lads
 breaking news
Cold, dead hands of Steve Jobs slip from iPhones: The Cult of Ive is upon us
Billionaire biz baron's death clears way for uber-shiny iOS 7
Airbus imagines suitcases that find themselves
Point your mobe at your smalls to track their every move
Surprise! Intel smartphone trounces ARM in power trials
Tests show equal performance while sipping significantly less juice
Samsung plans LTE Advanced version of Galaxy S4
1Gbps download capability could stiffen drooping S4 sales forecasts
Apple said to be 'exploring' 5.7-inch iPhone
Who's the copycat this time, Mr. Cook?