データの歴史を学ぶ:RAID技術

2021年11月4日 - オントラック・チーム

DST_image_970x300_hero-virtualization

IT業界に関して言えば、何十年も前に開発された技術が、管理者や他のユーザーに広く利用されるほど重要視されることはあまりありません。最新のサーバーやストレージシステムでも、RAID技術を稼働させています。ほとんどの場合、企業で採用されていますが、一般ユーザー向けのNASシステムでも普及してきました。RAIDは30年以上前から存続しており、現在でもデータストレージにおいて大きな役割を果たしています。なぜでしょうか?

最初から説明しましょう。

1987年、カリフォルニア大学バークレー校に在籍していたデビッド・パターソン、ガース・A.ギブソン、ランディ・カッツの3人は、用語「RAID」を提唱しました。 翌年の1988年6月に開催されたSIGMOD会議で、彼らは「Case for Redundant Arrays of inexpensive Disks (安価なディスクの冗長アレイの事例)」という論文を発表しました。当時、ハードディスクはまだ非常に高価であり、データストレージを「無駄なく」維持することは一般的であるだけでなく、必要不可欠なことでした。さらに、デスクトップコンピューターが職場に普及していなかったため、企業は巨大なメインフレームコンピューターを使用していました。 ただし、パソコンが普及するにつれてその状況が変わり始めました。

そのため、最初の非メインフレームコンピューター用のハードディスクは、メインフレームシステムで使用されるものよりはるかに安価でした。ガース、ギブソン、カッツの3人がRAIDの概念を開発したのは、この理由によります。 彼らは、接続された数台の安価なハードディスクの性能はメインフレーム用の最上位のハードディスク1台に勝ると主張しました。また、多くのハードディスクを使用すると故障率が高くなりますが、冗長構成にすることで、アレイの信頼性は大型の1台のメインフレームドライブをはるかに上回ることができました。

 

RAIDストレージの説明

RAIDは、データを複数の安価なドライブや独立したドライブに分散させる(複製する)という概念に基づいています。システム内のドライブは、負荷分散のために、またはドライブに障害が発生した場合にデータを復旧するために、データを2つ以上のドライブに分割または複製できるように構成されます。これを実現する技術的な方法は、ハードウェアソリューション(専用のRAIDコントローラー)によるものと、最新のオペレーティングシステムに一般的に付属しているソフトウェアソリューションによるものの2つがあります。ハードウェアベースのシステムでは、RAIDコントローラーを使用してホストコンピューターから独立してRAIDを管理するため、オペレーティングシステムはRAIDの技術的な仕組みを認識することはなく、ストレージシステム全体をホストコンピューターに接続された単一のボリュームであるかのように認識することができます。

これらの技術的な実装に加えて、RAIDの概念は次の3つの基本原則に基づいています。

  1. パリティ - RAIDシステム全体に情報を分散する方法で、ドライブに障害が発生した場合にデータを復元できるようにします。
  2. 冗長性 - システムアーキテクチャ内の重要なコンポーネントを複製することで、信頼性を高め、フェイルセーフとして機能します。本質的には、システム全体が故障する前に、複数のコンポーネントの故障が発生することを許容します。RAIDシステムの場合、コンポーネントとはドライブです。
  3. ミラーリング - 同じデータが、あるディスクから別のディスクに複製されることを指します。ストライピングは、データを複数のディスクに書き込むもう1つの方法です。 システムの要件に応じて、さまざまなRAID設定でこれらの1つ以上の技術が使用されます。

これらの原則に基づいて、以下に示す標準RAIDレベルが開発されました。

  • RAID 0はストライピングを使用し、最も基本的なRAIDレベルです。冗長性はありませんが、パフォーマンスは向上します。データは少なくとも2台のディスクにまたがってストライプされ、ディスクを追加するごとに、1台のドライブよりも読み書きのパフォーマンスとストレージの容量が向上します。1台のドライブが故障した場合、RAIDコントローラーがそれを再構築する方法はありません。
  • RAID 1はミラーリングを使用します。これは、その名前が示すように、2台のディスクに同じデータを書き込むため、RAIDの冗長性としては最も低いレベルとなります。RAID1は、1台のドライブに比べて読み込み性能が2倍になりますが、書き込み速度は向上しません。このレベルでは、1台のドライブの故障を許容します。
  • RAID 5は一般的な構成であり、信頼性とパフォーマンスの間に適切な妥協点があります。読み取り速度は向上しますが、書き込みパフォーマンスは向上しません。RAID5ではパリティが導入されており、合計でディスク1台分の容量を占めます。このレベルでは、1つのディスク障害を処理できます。ホットスペアを5台目のドライブとして設定した場合、このホットスペアはシステム内でデータが保存されていないアイドルドライブとして使用できます。1台のディスクに障害が発生しても、他のドライブにまたがるパリティのデータを利用して、ホットスペアにデータを再構築することができます。 データの再構築が完了したら、障害が発生したドライブを取り外し、新しいドライブと交換して、新しいホットスペアとすることができます。
  • RAID 6はRAID 5の概念を採用しており、デュアルパリティでさらに冗長性を向上させています。これにより、アレイ内の2台のディスクに障害が発生した場合でもデータを作成し直すことができます。デュアルパリティはすべてのディスクに分散され、2台のドライブのスペースを取ります。

長年にわたり、主にRAIDシステムメーカーによって、多くのRAIDレベルが開発されてきました。現在では、RAID 0からRAID 61、さらにその先までさまざまなRAIDレベルがあり、大企業では、さまざまなアプリケーションやインフラの要件をサポートするためにカスタムRAIDレベルを構築しています。

 

ドライブの障害とRAIDの危険性

RAID 1またはRAID 5構成でディスクに障害が発生した場合、ユーザーは残りのディスクのデータがすべてバックアップされていることを確認するまで、障害が発生したドライブを交換すべきではありません。多くの場合、特に同じ生産ラインから出荷されたディスクを使用したソリューションでは、別のディスクですぐに障害が発生する可能性が非常に高くなります。

パフォーマンスの向上やデータのセキュリティなど、RAIDが提供するすべてのメリットを考慮しても、ユーザーはRAIDがバックアップではないことを忘れがちです。この概念の危険性はそこにあります。RAIDはバックアップと組み合わせて使用できるため、ストレージシステム全体の安全性が大幅に向上しますが、バックアップの代わりにRAIDを使用してはなりません。例えば、ハードウェアRAIDコントローラーの故障などでRAIDシステムに障害が発生した場合、RAIDを稼働させて失われたデータを復旧するのは非常に複雑です。

NASシステムは、ホームユーザーにとってより手頃な価格になりました。これらのユーザーは内蔵のRAID構成と、重複排除などの他の高度なストレージ技術を組み合わせて使用し、システムから可能な限り多くのスペースを確保します。しかし、その代償として、多くの場合、これらのシステムは間違って設定され、障害が発生するとシステム全体が停止してしまいます。

ホームユーザーであろうと、企業のIT管理者であろうと、どのRAIDレベルが自分のニーズに合っているか、またはRAIDが必要かどうかを慎重に検討することが重要です。最初の段階で怠ってしまうと、最終的には深刻な問題、高額なコスト、そしてデータ損失の可能性があることを忘れないでください。

データを保存する新しい方法は、時間の経過とともに探求され、発明されて進化し続けていますが、その実績を考えると、RAIDがすぐに消えることはないでしょう。

RAIDデータのリカバリーが必要な場合は、ご遠慮なくオントラックの専門家にお問い合わせください