ITproに、
RAID01とRAID10の違い
なる記事を発見したのでコメントしてみる。
1)RAID10とRAID01を分ける言葉の定義は存在しない……はず。
私もいろいろ調べたけど、RAID10(RAID1+0)とRAID01(RAID0+1)のどちらの言葉も、「RAID1とRAID0を組み合わせたもの」という定義しか存在していなかったように記憶している。
私の記憶が確かなら、この記事の用法は、どちらをRAID10と言っても良かったはずである。
んで、この記事の定義を認めて進めるが、実は中身にも、少し首をひねる部分がある。
2)エンタープライズシステムにおいては、RAID01のほうがRAID10より可用性の高いことがある。
あらかじめお断りすると、この主張は「金に糸目をつけない、超リッチなエンタープライズシステム」に限定したお話である。
ディスク故障に対する可用性の高さは、記事に書いてあるとおりであるが、記事の内容の裏を読み取って、「なぜ、コストも下がらない、信頼性も良くないRAID01が存在するのか」を考えてみると、ハイエンドストレージの技術者であれば、一つの機能に思い当たるはずである。
それは、レプリカである。すなわち、RAID01とは、「RAID0のレプリカをRAID0に作る」意味である。
では、レプリカを使うと、可用性がどう上がるのか。
答えは、バックアップ時間の隠蔽である。
レプリカとは、ディスクイメージが常に一致した状態で運用するものではなく、ディスクイメージを一致させる静止点を作り、その点でのディスクイメージを複製するものである。
こうすると、サーバーの処理をほとんど止めることなくバックアップを作ることができるため、バックアップをとるために必要な「サーバー処理の停止時間」を最小限に抑えることができる。これは、「平常時の」可用性を向上させるためのテクニックである。
なお、RAID10は冗長化のみを目的としていることから、このような運用はできない。
もちろん、ここでいう可用性は「RAIDとしての」信頼性・可用性とは異なる概念であるが、バックアップの取得は必須であり(壊れるのは中のディスクだけではないっ!)、バックアップによる業務中断が必須である以上、可用性を考える際には当然考えてしかるべきである。
まとめ)
RAID10はRAID装置のディスク冗長化機能として、信頼性の意味で可用性を考慮している。
RAID01はRAID0+レプリカボリュームとして、バックアップ時間短縮の意味で可用性を考慮している。
どっちがどっち、というのは危険である。
おまけ)
レプリカボリュームの意味では、マスタボリューム・レプリカボリュームともに個別のRAID構成を作ると可用性は格段に向上する。
たとえば、マスタボリュームにRAID6、レプリカボリュームにRAID0など。
RAID6の性能が不安なら、RAID1+レプリカボリュームRAID0、というのもまた可用性が高くてすばらしい構成と思う。
……ただし、マスタボリュームに冗長性がないのは怖いんで、ある意味記事は正しいのかもしれない。