Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I was thinking the other day.
Then again, just now: So I thought "if I thought of it, someone else must have."

So this idea was, in a raid-1 mirror(ish),

One drive will write, and one drive will read,
And either drive can read or write, but never at the same time
The idea being that there is less seeking, thrashing, whathaveyou.

PS: Purely a question of curiosity. Im not pretending i know anything about drives.
I suppose its possible that such a thing wouldn't be necessary because of something i don't know.

share|improve this question
up vote 5 down vote accepted

Whoa. There are various implementations of RAID-1. It is quite normal for them to read independently from both drives: when reading, one drive seeks to one place and the other somewhere else. It would be a waste to read the same thing from two drives just to verify: the checksum is much better mechanism to detect bit errors in terms of economy and performance.

But with writes, it is not the case. The writes are done in parallel in most implementations. The server had a power outage and is now starting up - it needs to quickly come up with a coherent data (data from one point in time, and it would be great if it was the most recent point in time possible). How can the server decide it quickly, if there were recent writes scattered everywhere on both drives?

And if a drive fails? The server would loose some chunks of data. We have a data loss, but worse we have incoherent data, some chunks are recent, some are old. How can the server now "roll back" the chunks from the working drive to go back to a coherent point in time? Where can it find the old version of these chunks of data?

So it's much simpler to write in parallel.

PS: There are mirrors that don't write in parallel, in the most typical usage they are used as (non-hardware) subcomponents of things like: asynchronous replication, distributed write cache, distributed filesystem, etc. Typically they are costly and used in enterprise environments.

share|improve this answer

If only one drive can write at a time, that's not RAID-1; the data would not be mirrored. That sounds more like RAID-0, though it's not an exact match.

Wikipedia has a decent explanation of the standard RAID levels.

share|improve this answer
Our sister site SF also has a nice explanation:… – Hennes Nov 20 '12 at 15:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .