昔、PCのディスクが壊れて痛い目をみたため、自宅PCのディスクをRAID1にしようとしました。マザーボードでRAID1が組めるということで、喜んでそのPCを買いました。しかし、OSに専用ドライバを入れてRAIDを組むタイプだったのです。それに気づいたときに、「嫌だなー」と思いました。
案の定、ドライバが不調になり(「ディスク間の同期が保たれない」状態になり)、OSがおかしくなり、結局OSから再インストールするはめになりました。
私は、「内部二重化」と「外部二重化」という考え方をしています。この「外部二重化」と「内部二重化」というのは私の言葉です。一般用語ではありません。
実は、情報システムのアーキテクチャを見ていて、
二重化に2つの種類があると思うようになりました。それは外部からみて二重化されているもの、もう1つは二重化されていることが見えずシンプルに使えるものです。上記は、ドライバ(OS)が2つのディスクを意識して、両方に書き込むので「外部二重化」」となります。純粋にハードウエアRAIDであれば、OSは2つのディスクを意識せず(1つのディスクとして見える)単純に書くだけで動作するので内部二重化となります。
この
二重化を意識しなくてはいけないか、それとも二重化が内部に隠ぺいされているかは大きな違いです。
外部二重化は、組み合わせが発生するため、制御が面倒ですし、つなぎ先の切り替えやタイムアウトなど、”外部の装置”が二重化についていろいろと意識する必要があります。その代わり「安い」傾向があります。オープン系のクラスタリングはこっちと言えると思います。
内部二重化は、内部に隠ぺいされているため、外部の装置からはシンプルに使えます。シンプルに使えるのに二重化されているわけですから、いいことづくめに見えます。ただし、「コストが高い」傾向があります。また、内部に二重化が隠ぺいされるため、オーバーヘッドも内在されることになり、外から見た「処理が遅い」こともあります。メインフレームの構造の多くはこっちと言えると思います。
どちらが優れているというわけではなく、アーキテクチャの特性とメリット・デメリットを意識して上手に使うものだと私は思います。
※OracleがSunを買収しましたね。ようこそ! Sun
※クルクルキャンペーンというDBライセンスが最大70%引きになるキャンペーンが始まりましたね。安いなあと思います。
http://itpro.nikkeibp.co.jp/article/NEWS/20100128/343884/