Comments
Description
Transcript
HP SmartアレイコントローラーおよびRAIDの基本的なパフォーマンス
HP SmartアレイコントローラーおよびRAIDの 基本的なパフォーマンスファクター 技術概要 目次 概要...........................................................................................................................................................2 はじめに .....................................................................................................................................................2 HP Smartアレイコントローラーとパフォーマンス ..................................................................................................2 Smartアレイ処理エンジン ...........................................................................................................................2 Smartアレイキャッシュ ...............................................................................................................................3 Smartアレイデバイスドライバー ...................................................................................................................5 SASリンク、ディスクドライブおよびアレイパフォーマンス .......................................................................................6 ディスクストライピングとパフォーマンス .............................................................................................................7 RAIDレベル、ドライブ数、および読み取り性能 ....................................................................................................7 ランダム読み取り性能 ...............................................................................................................................7 シーケンシャル読み取り性能 ......................................................................................................................8 RAIDレベル、ドライブ数、および書き込み性能....................................................................................................9 RAID 0の書き込み性能 .............................................................................................................................9 RAID 1およびRAID 10(1+0)の書き込み操作 ...............................................................................................9 RAID 5およびRAID 6レベルの書き込み操作 ............................................................................................... 10 ライトキャッシュ、Smartアレイプロセッサー、およびRAID書き込み性能 .............................................................. 11 ランダム書き込み性能 .............................................................................................................................12 シーケンシャル書き込み性能 ....................................................................................................................13 その他のRAIDパフォーマンス特性 .................................................................................................................14 キューの深さ..........................................................................................................................................14 スループット対レイテンシ..........................................................................................................................15 詳細情報 ..................................................................................................................................................16 コメント送信のお願い ..................................................................................................................................16 概要 RAIDストレージテクノロジーは、約20年にわたり業界標準のサーバーで使用されてきました。その間に、ディスクド ライブ、ストレージインターフェイス、RAIDコントローラーテクノロジー、および処理能力の大幅な進歩により、スト レージを取り巻く環境は変わり続けてきました。この技術概要書では、RAIDレベル自体、コントローラー、およびド ライブテクノロジーを含め、今日、RAIDパフォーマンスを促進している基本ファクターの概要を説明します。 はじめに ディスクアレイは、ディスクドライブベースのストレージに伴ういくつかの基本的な課題を解決する目的で設計され ています。 • 複数の小容量のディスクドライブを使用して、大容量のストレージボリュームを作成できるようにする • ストレージサブシステムのI/O処理能力、最大スループットを1台のディスクドライブより向上させる • 冗長化技法を使用して、1台またはそれ以上の物理ドライブの障害によってデータが永久に失われることがない よう、データストレージの信頼性を向上させる RAIDアレイのパフォーマンス全体に影響する要素は多数あるため、RAIDパフォーマンスに影響するもっとも重要 なファクターは何かを考慮することが必要です。 • RAIDレベル。各RAIDレベルがパフォーマンス全体に及ぼす影響は、低いRAIDレベルでの読み取り/書き込み の際の処理オーバーヘッドと、高いRIADレベルでの読み取りおよび書き込みを実行するために必要な処理オー バーヘッドの量の違いに基づきます。 • RAIDコントローラー。これには、RAID操作を管理および実行するために必要なプロセッサーとメモリ、および読 み取り/書き込み性能を最適化するために使用されるリードキャッシュとライトキャッシュが含まれます。 • 論理ドライブアレイを構成する物理ドライブ数。アレイ内のドライブ数が多いほど、Smartアレイコントローラーは より多くの読み取り/書き込み操作を並行して実行でき、パフォーマンス全体が向上します。 • ドライブパフォーマンス。ドライブスループット性能(MB/s)と、ランダム読み取りおよび書き込み実行時のドライ ブパフォーマンス(1秒あたりのI/Oの数、つまりIOPS)が含まれます。 • ストレージインターフェイスパフォーマンス。プロトコル(SASまたはSATA)およびドライブとコントローラー間の物 理リンクの速度(3Gb/sまたは6Gb/s)が含まれます。 これらの各要素は、RAIDパフォーマンスに影響するだけでなく、実行されているストレージ操作のタイプに応じて、 特定のアプリケーション環境におけるドライブアレイのパフォーマンスの上限を決定するファクターにもなります。 HP Smartアレイコントローラーとパフォーマンス 新世代のHP Smartアレイコントローラーは、RAIDパフォーマンスを改善するように設計されています。RAIDパ フォーマンスは、多数のさまざまなファクターに依存しています。Smartアレイコントローラーを構成する一部分であ るSmartアレイプロセッサーとリード/ライトキャッシュの2つがパフォーマンスの面でもっとも重要になります。 Smartアレイ処理エンジン Smartアレイコントローラーの処理エンジンは、RAIDシステムを管理する責任を担っています。また、アプリケーショ ンからの大量の読み取りまたは書き込み要求をRAIDアレイに対して実行する際には、組み込まれている個々のド ライブへの命令に変換する必要があり、この変換を行うために必要な操作を実行する責任も担っています。現世 代のSmartアレイP410、P411、およびP212コントローラーは、600MHzで動作するRAID-on-Chip(RoC)プロセッ サーを内蔵しています(図1)。RAIDパフォーマンス全体を直接測定した値ではありませんが、前世代エンジンが 35,000の4KBランダムIOPSをサポートしていたのに比べ、新しいプロセッサーは最大60,000の4KBランダム IOPSをサポートします。 2 図1. HP Smartアレイコントローラーのアーキテクチャー Smartアレイコントローラーの処理エンジンは、すべての操作を処理する責任を担っていますが、その機能は、冗長 RAIDモードの書き込み操作などの複雑なRAID操作において特に重要です。RAID 5とRAID 6はどちらも、物理ドラ イブの障害時にデータリカバリ機能を提供するために、XOR(排他的論理和)演算操作を使用して、ドライブアレイ に書き込まれるパリティデータを計算します。このため、処理エンジンのパフォーマンスは、これらのRAIDレベルを 使用するディスクアレイのパフォーマンス、特に、書き込み性能の重要な要因となります。また、新たなSmartアレイ コントローラーに関連するパフォーマンスの改善は、ドライブ数が多いアレイほど顕著に現れます。ドライブ数が少 ない場合、論理ドライブアレイのパフォーマンスは、Smartアレイ処理エンジンの帯域幅ではなく、ドライブの合計 I/Oによって制約される傾向にあります。 Smartアレイキャッシュ Smartアレイコントローラーは、オプションのキャッシュモジュールを使用して、読み取りおよび書き込み操作の両方 についてディスクアレイ全体のパフォーマンスを改善します。ライトキャッシュとリードキャッシュに使用されるキャッ シュの割合は、アレイコンフィギュレーションユーティリティ(ACU)を使用して構成できます。Smartアレイコントロー ラーは現在、256MB、512MB、および1GBのキャッシュオプションをサポートしています。 リードキャッシュ Smartアレイコントローラーでは、プリフェッチした先読みデータの置き場所としてリードキャッシュが使用されます。 コントローラーのオペレーティングプログラムは、読み取りコマンドのパターンを識別し、ドライブの先行読み取りを 実行し、次の読み取りコマンドがそのデータを要求した場合に、より迅速にアクセスできる場所にデータを置きます。 リードキャッシュは、実際には、シーケンシャル読み取りワークロードのパフォーマンスを向上させる場合にのみ効 果的です。Smartアレイコントローラーは、シーケンシャルワークロードが検出されたときにだけリードキャッシュプリ フェッチを使用して、シーケンシャルワークロードとランダムワークロードを区別するための十分な精巧さを備えて います。さらに、読み取り時のドライブアレイの本来のパフォーマンスがすでに比較的高速なため、リードキャッシュ がアレイの読み取り性能を大幅に改善することはありません。これらが、Smartアレイコントローラーのデフォルト構 成で、リードキャッシュにキャッシュの25%しか割り当てられていない主な理由です。 3 ライトキャッシュ Smartアレイコントローラーは、ホストアプリケーションがコントローラーへの書き込みコマンドをポストした場合に、 ディスクへの書き込み操作が完了するまで待機することなく元の処理を継続できる出力バッファとして、ライトキャッ シュを使用します。アプリケーションはミリ秒でなくマイクロ秒で書き込みが完了したとみなしますが、アレイコント ローラーはキャッシュにポストされた書き込みコマンドのリストを順次処理するため、ディスクへの実際の書き込み は遅れて完了します。この技法はしばしば、ポステッドライトまたはライトバックキャッシュと呼ばれます。 ワークロードが高い環境では、通常、ライトキャッシュの容量に空きがない状態が続きます。コントローラーはその 間にキャッシュ内に保留中の書き込みコマンドを分析し、それらを実行するより効率的な方法を決定します。コント ローラーは、サイズの小さい書き込みを隣接する論理ブロックと組み合わせてサイズの大きい1つの書き込みとし、 より迅速に実行できるようにします。この技法は、ライトコアレッセンス(書き込み調停)と呼ばれます。また、コント ローラーは、全体としてのディスク遅延が短縮されるような方法で、キャッシュ内の書き込み順序を再調整すること もできます。この技法はしばしば、コマンドリオーダリングと呼ばれます。ライトキャッシュメモリ量が多いほど、 Smartアレイコントローラーはより多くの保留中の書き込みコマンドを格納し分析できるため、全体のパフォーマンス を改善しながら、ライトコアレッセンスとコマンドリオーダーの実行回数を増やすことができます。 ライトキャッシュは、キャッシュに保留中の書き込みを格納しておいて、後で書き込みを完了します。アプリケーショ ンは書き込みをすでに完了済みとみなしているため、キャッシュに格納された書き込みは、ディスクへの書き込み が完了するまで、Smartアレイが保持する必要があります。保持されない場合、データ不整合がおきます。Smartア レイコントローラーは、サーバーのクラッシュや電源障害の発生時でもキャッシュの整合性を維持するためにバッテ リまたはフラッシュメモリを使用することで、この問題に対処しています。バッテリバックアップ式キャッシュ(BBWC) またはフラッシュバック式キャッシュ(FBWC)が標準装備されておらず、オプションとして取り付けられていない Smartアレイコントローラーでは、デフォルトでは、キャッシュはライトキャッシュとして使用されません。この設定は 変更できますが、BBWCまたはFBWCなしでライトキャッシュを有効にするとデータが損失する可能性があります。 キャッシュ幅 新世代Smartアレイコントローラーは、256MB、512MB、および1GBのキャッシュモジュールをサポートします。読 み取りおよび書き込み操作用に相当量のキャッシュを提供する以外に、512MBおよび1GBモジュールは、 256MBモジュールで使用されている40ビット幅(32ビットデータ+8ビットパリティ)キャッシュではなく72ビット幅 (64ビットデータ+8ビットパリティ)キャッシュを使用しています。これにより、キャッシュデータをストレージシステム との間で移動するための帯域幅が倍増するため、アレイパフォーマンスの向上がさらに促進されます。 バッテリバックアップ式およびフラッシュバック式ライトキャッシュ Smartアレイコントローラーのライトキャッシュに格納されるデータは、OSとアプリケーションがすでにディスクに書き 込み済みとみなしているが、実際にはまだコントローラーのメモリ内にあるものです。電源が消失した場合にもデー タを保護するために、すべてのSmartアレイコントローラーはライトキャッシュを維持します。バッテリバックアップ式 ライトキャッシュ(BBWC)は、電源への接続が消失した場合、接続されたバッテリを使用してキャッシュメモリの内容 を維持します。バッテリは、最大72時間、キャッシュデータを維持できます。新しいフラッシュバック式キャッシュモ ジュール(FBWC)は、キャパシターのオンボード電源を使用して、キャッシュされたデータをほとんど無期限に維持 可能な不揮発性フラッシュメモリに書き込みます。 Smartアレイキャッシュモジュールはバッテリのバックアップなしでも使用できますが、バッテリバックアップが存在し ない場合、Smartアレイコントローラーはキャッシュメモリをライトキャッシュとしては使用しない点に注意する必要が あります。これは、特に、RAID 5およびRAID 6モードとそれらの派生モードで、書き込み性能に大きく影響します。 ゼロメモリRAID リード/ライトキャッシュと呼ばれていますが、Smartアレイコントローラーは実際にはキャッシュモジュール内のメモ リの32~64MBを使用して、RAID 5およびRAID 6論理ドライブのパリティの計算に必要なXOR操作を含む、高度 なRAID機能の実行をサポートしています。一部のSmartアレイコントローラーでは、キャッシュモジュールは出荷時 の標準構成に含まれていません。このメモリが使用できないと、パフォーマンス以外にも影響を及ぼします。また、 コントローラーがサポートできる機能が制限されます。 新世代Smartアレイコントローラーの場合、キャッシュモジュールを使用していない限定された操作モードはゼロメ モリRAIDとして知られています。ゼロメモリRAIDはエントリレベルのRAID機能(RAID 0およびRAID 1のみ)を提供 し、アレイ内で限定された数の物理ドライブだけをサポートします。 4 Smartアレイのパフォーマンスにキャッシュが及ぼす影響 キャッシュを使用すると、特に、書き込みが大量に発生する操作の場合に、Smartアレイコントローラーのストレー ジパフォーマンスは大幅に改善します。リードキャッシュは読み取り操作に適度なパフォーマンスゲインを提供でき る一方、ライトキャッシュはドライブアレイの書き込み性能を改善するために不可欠です。これは、高度なRAIDレベ ルでは、論理ドライブに対する単一のアレイレベルの「書き込み」を完了するために、物理ドライブに対する最大6 回の個別の読み取りおよび書き込み操作が必要だからです。図2は、キャッシュレベルの異なるP411 Smartアレ イコントローラーを使用し、8ドライブを内蔵するRAID 5アレイの相対的なパフォーマンスを示しています。 図2. Smartアレイキャッシュのアレイ書き込み性能への影響 構成:P410およびP411 Smartアレイコントローラー、8ドライブRAID 5論理ドライブ、256KBストリップサイズ、 キューの深さ64、ProLiant DL380 G6 Smartアレイデバイスドライバー Smartアレイコントローラーと処理エンジンに加え、Windows Serverオペレーティングシステム用のSmartアレイデ バイスドライバーがストレージパフォーマンスを改善する場合もあります。ドライバーは、Smartアレイコントローラー レベルより上のオペレーティングシステムレベルと論理ドライブレベルで保留中のドライブI/Oキューを分析します。 ドライバーは、パフォーマンスを向上させるために、適切な条件下で、これらの保留中の要求をコアレッセンス(統 合)し、Smartアレイコントローラーに送信される合計I/Oコマンド数を削減します。 5 Smartアレイデバイスドライバーのコアレッセンス機能は、オペレーティングシステムレベルでサイズの大きい保留 I/Oキューが作成される環境において、小さいサイズの要求のシーケンシャルトランザクションストリームのパ フォーマンスを改善します。I/Oコアレッセンスは、I/Oキューのサイズが小さい場合には実行されません。このよう な場合に実行すると、実際には、Smartアレイストレージシステム全体のパフォーマンスを低下させる場合がありま す。 SASリンク、ディスクドライブおよびアレイパフォーマンス 新しいSmartアレイコントローラーは、最大8本のプライマリSAS-2物理リンクを使用して、ドライブアレイ内のディス クドライブに接続します。これらの物理リンクはそれぞれ、接続しているドライブのタイプに応じて、最大6Gb/s (600MB/s)の帯域幅をサポートできます。SAS-2リンクは、6Gb/s SASドライブが接続されている場合は、6Gb/s でのみ動作します。Smartアレイコントローラーは、3Gb/s(300MB/s)の最大チャネル帯域幅で稼働するSATAド ライブをサポートします。 実際に、SAS帯域幅が、ランダム読み取りおよび書き込み操作に大きく依存するアプリケーション環境で、全体的 なパフォーマンスを制限することはありません。最高速の現在のディスクドライブは、4KB読み取りおよび書き込み を使用して約470のランダムIOPSを実現できます。これは、1.8MB/sのスループット、またはSAS-2物理リンクの帯 域幅の1%未満に相当します。SASエキスパンダーを使用して単一のSASチャネルの背後に6ドライブを配置してい る大規模なRAID構成でさえ、総スループットはSAS帯域幅より遥かに少ない15MB/s未満になります。表1に示す とおり、ディスクドライブにより、持続可能なランダムIOPSの数が異なるため、論理ドライブのランダム読み取りおよ び書き込み性能に及ぼす影響も異なります。 表1. HPディスクドライブの最大持続スループットおよびランダムIOPS機能 ドライブRPM 15,000 15,000 10,000 7,200 7,200 フォームファクターおよび インターフェイス LFF 6Gb/s SAS SFF 6Gb/s SAS SFF 6Gb/s SAS LFF 3Gb/s SATA LFF 3Gb/s SATA 最大スループット(キュー の深さ5以上で64KB シーケンス読み取り) 200MB/s 155MB/s 150MB/s 130MB/s 95MB/s 通常時のIOPS(キュー の深さ16で4KB ランダム読み取り) 335 375 270 140 128 シーケンシャル操作、特に、シーケンシャル読み取りでは、SASチャネル帯域幅がアレイ全体のパフォーマンスの ファクターとなる場合があります。表1に示すように、単一のディスクドライブでは、3Gb/s SASチャネルを飽和状態 にできるようなスループットには届きません。 サイズの大きいディスクアレイでは、複数のドライブで、SASチャネルの帯域幅を共有する場合があります。3台以 上のディスクドライブが単一の3Gb/s SASチャネルを共有している場合、シーケンシャル操作のパフォーマンスは SASチャネルの帯域幅によって制限され始めます。新しいSmartアレイコントローラー上の6Gb/s SAS-2チャネル に接続された6Gb/sドライブでは、シーケンシャルパフォーマンスは、4台以上のドライブが各チャネルを共有する までは、増大し続けます。 6 ディスクストライピングとパフォーマンス ほとんどのRAIDレベルは、単一の論理ドライブとして構成された一連の物理ドライブ間でデータを分散またはスト ライピングすることで、読み取り性能を強化するように設計されています。ストライピングでは、論理ディスクのデー タがXバイトずつ順番に、アレイ内の異なる物理ディスクに配置されます。業界用語では、Xバイトの各セットをスト リップ(strip)と呼びます。ストライプ(stripe)は、アレイ内のすべてのドライブにまたがる1つの完全なデータ行です。 業界でよく使われている「ストリップサイズ」を指す表現として、HPの設定ツールではこれまで「ストライプサイズ」を 使用してきましたが、これは2010年に変更されています。アレイのストリップサイズは構成可能で、16KBから最大 512KBまで設定できます。一般に、ストリップ(HP:ストライプ)サイズが大きいほど、RAIDアレイのパフォーマンス は高くなります。アレイコンフィギュレーションユーティリティ(ACU)は、特定の論理アレイについて、アレイのRAID レベルとそれに含まれる物理ドライブ数に基づいて、設定可能な最大ストリップサイズを決定します。 RAIDレベル、ドライブ数、および読み取り性能 ドライブアレイを使用する目的の1つは、単一の物理ディスクドライブの場合より、ストレージサブシステムの読み取 り性能を向上させることです。一般に、これは、複数のディスクドライブを使用し、ストライピングを使用してそれらの ドライブ間でデータを分散させることで実現します。結果として、データにアクセスするために必要な読み取り操作 を複数のドライブに分散し、Smartアレイコントローラーによって並行して実行することができます。一般に、Smartア レイドライブアレイの読み取り性能は、通常、ドライブ自体のパフォーマンス特性によってほぼ決まり、Smartアレイ プロセッサーの速度やキャッシュサイズによって左右されることはありません。 ランダム読み取り性能 ドライブアレイ読み取り性能、特に、ランダム読み取り性能は、データストライピングの使用やアレイ内に存在する ドライブ数によって大きく影響されます。データストライピングは、アレイ内のすべてのドライブにデータを均等に分 散します。したがって、Smartアレイコントローラーは、すべてのディスクに対して並行して読み取り要求を実行でき るため、パフォーマンスの向上を実現できます。 RAID 0、RAID 5、およびRAID 6はデータストライピングを使用しているため、読み取り性能はほぼ同じです。ラン ダム読み取り性能は、通常、1秒あたりに実行可能なサイズの小さい(4~8KB)ランダム読み取り操作の数(通常、 IOPSと呼ばれる)で測定されます。図3に示すとおり、これらのRAIDレベルでは、ランダム読み取り性能は、ドライ ブ数にほとんど直接的に比例して増加します。その他の条件がすべて同じ場合、12ドライブアレイは3ドライブしか 装備していないアレイの約4倍のランダムIOPSを実現できます。 7 図3. 8KBランダム読み取りIOPSの増大:RAID 0、RAID 5、RAID 6およびRAID 10(1+0) 構成:SmartアレイP411(512MBキャッシュ搭載)、256KBのストリップサイズ、キューの深さ64、DL 380 G6 RAID 1+0もストライピングを使用しており、そのパフォーマンスはドライブ数に比例して増大します。RAID 1+0では、 ストライピングされるとともにミラーリングされるため、RAID 0、5または6で単一のディスクを追加した場合と同じ容 量をデータストレージに追加するには、2台の物理ディスクが必要です。 シーケンシャル読み取り性能 ドライブアレイでは、シーケンシャル読み取り性能も、アレイ内のドライブ数が増加するにつれ、増加します。1台の ドライブのシーケンシャルパフォーマンスの上限は、ドライブの最大スループット機能によって決まります(表1)。 Smartアレイコントローラーでは、アレイのシーケンシャル読み取り性能も、アレイ内のドライブ数に比例して増加す る傾向があります(図4)。RAID 1+0では、ミラーリングの結果、ストライピングされたデータはより少数の物理ドラ イブに分散されるため、パフォーマンスの増加は比較的緩やかです。サイズの大きいドライブアレイでは、シーケン シャル読み取り性能の最終的な制限ファクターは、SASリンク自体の総帯域幅か、比較的狭いPCIe帯域幅のいず れかとなります。 8 図4. ドライブ数に応じたRAID 0、RAID 5、RAID 6、およびRAID 10(1+0)のシーケンシャル読み取り性能 構成:Smartアレイ(512MBキャッシュ搭載)、256KBのストリップサイズ、キューの深さ64 RAIDレベル、ドライブ数、および書き込み性能 大半のドライブアレイ構成で、書き込み操作は読み取り操作に比べてかなり複雑です。この複雑性は、総合的な書 き込み性能にも大きく影響します。ドライブアレイでは、RAID 0以外のすべてのRAIDレベルで、データの冗長化とリ カバリのいくつかのレベルが提供されています。この冗長化は、アレイ内の1台以上の物理ドライブで障害が生じ たときに、Smartアレイコントローラーが論理ドライブを再構築し、データをリカバリする機能にとって不可欠です。こ の機能には、いずれかの冗長RAIDレベルで論理ドライブに対する高レベルの「書き込み」を実行する際に、Smart アレイコントローラーが実行する必要のある低レベルの読み取り、書き込み、および計算の数が増えるという犠牲 が伴います。 RAID 0の書き込み性能 RAID 0は、データ冗長化をサポートしていない唯一のRAIDレベルです。そのため、論理ドライブに対して「書き込 み」を実行するために、余分な低レベルコマンドは必要ありません。ストライピングは物理ドライブにデータを分散 するため、低レベルの読み取りおよび書き込みを部分的に並行して実行できます。RAID 0では、シーケンシャルと ランダムのどちらの書き込み性能も、物理ドライブ数が増えるにつれ、向上します。RAID 0は、上位のRAIDレベル のパフォーマンスを比較するために役立つ比較基準を提供しています。 RAID 1およびRAID 10(1+0)の書き込み操作 RAID 1は、冗長RAIDレベルに関連する追加書き込みオーバーヘッドのもっともシンプルな例です。RAID 1では、 データは一連のドライブにミラーリングされるだけです(図5)。つまり、論理ドライブに対するデータブロックの「書き 込み」ごとに、Smartアレイコントローラーは、ミラーリングされるドライブごとに1回ずつ、計2回の低レベル書き込み を実行する必要があります。これは、キャッシュされない単純な例では、最悪の場合、書き込み性能がアレイを使 用しない物理ドライブへの書き込み性能の半分になる可能性があることを意味しています。RAID 1には、ストライ ピングはありません。つまり、アレイコントローラーが複数の物理ドライブに対して並行して読み取りおよび書き込 みを実行する能力は低くなるため、パフォーマンスはRAID 0より低くなります。 RAID 10(RAID 1+0)では、データは引き続きミラーリングされますが、ミラーリングされたドライブセットに対してス トライピングも実行されるため、データはドライブに均等に分散され、読み取りおよび書き込み性能は高くなります。 9 RAID 10では、論理ドライブへの高レベル書き込みごとに2回ずつ低レベルディスク書き込みを実行する必要があ ります。 図5. RAID 1およびRAID 1+0ドライブアレイ RAID 5およびRAID 6レベルの書き込み操作 RAID 5は、該当するデータストリップの値から、数学的に算出された「パリティストリップ」を生成することでデータを 保護します。データストリップは複数の物理ドライブアレイに分散されており、そのすべてで完全なデータストライプ を構成します。RAID 5では、論理ドライブアレイのパリティ情報を格納するために、1台の物理ドライブに相当する 容量が必要です。図6に示すとおり、パリティストリップの位置は、実際には、全体のパフォーマンスを均一化する ために、各ストライプを順番に移動しています。RAID 5では、一連のN台のドライブのアレイで、N - 1台のドライブ に相当するデータを格納できます。いずれかの単一のドライブで障害が生じても、それに含まれていたデータは他 のドライブから数学的に再構成することができます。 図6. RAID 5ドライブアレイの構成 10 RAID 5では、論理ドライブに対する高レベル書き込み操作ごとに数回の低レベル操作が実行されます。表2に示 すとおり、RAID 5の書き込みごとに、4回の低レベルディスク操作とパリティ計算が実行されます。最悪の場合、 RAID 5ランダム書き込み性能は単一のRAID 0ドライブの4分の1にしか達しない場合があります。 表2. RAID 5高レベル書き込み操作の分析 低レベル操作 目的 データドライブの読み取り 現在のデータの取得 パリティドライブの読み取り 現在のパリティ情報の取得 新しいパリティの計算 現在のデータおよびパリティ、さらに新しいデータに基づく データドライブへの書き込み データドライブへの新しいデータ値の書き込み パリティドライブへの書き込み パリティドライブへの新しいパリティ値の書き込み RAID 6は、アドバンストデータガーディング(ADG)としても知られ、2つの独立した形式のパリティチェックデータを 計算して2つのパリティストリップを生成し、パリティストリップはアレイ内の物理ドライブに分散された各データスト ライプの一部となります(図7)。RAID 6では、一連のN台のドライブで、N - 2台のドライブに相当するデータを格納 できます。いずれか2台のドライブで障害が生じても、アレイ内のデータを数学的に再構成することができます。 図7. RAID 6ドライブアレイの構成 RAID 6では、論理ドライブに対する高レベル書き込み操作ごとに、潜在的に、6回の低レベルディスク読み取り/書 き込み操作と2つの個別のパリティ計算を実行する必要があるため、RAID 5に比べ、書き込みのペナルティはか なり大きくなります。最悪の場合、RAID 6論理ドライブのランダム書き込み性能は、同等のRAID 0論理ドライブの6 分の1になります。 ライトキャッシュ、Smartアレイプロセッサー、およびRAID書き込み性能 Smartアレイプロセッサーが書き込みプロセスを管理するために使用しているライトキャッシュと高度なアルゴリズ ムは、いずれかの冗長RAIDレベルを使用している場合に、ドライブアレイの許容可能な書き込み性能を実現する ために不可欠です。ライトキャッシュを使用しない場合の書き込み性能の大幅な低下は、Smartアレイコントロー ラーのゼロメモリバージョンがRAID 0とRAID 1しかサポートしない理由の1つです。 ライトキャッシュを使用することで、Smartアレイコントローラーは、サーバーのオペレーティングシステムによって発 行された保留中の書き込みコマンドを格納できます。その後、Smartアレイプロセッサーは、書き込みコマンドの保 留キューを分析し、パフォーマンスを改善するためにそれらを実行するより効率的な方法がないかどうかを判断し ます。これは、Smartアレイのライトキャッシュに関するセクションで説明したライトコアレッセンスとコマンドリオーダ リングを使用して実行されます。 11 Smartアレイコントローラーは、フルストライプ書き込みとして知られる技法も活用しています。コントローラーが、ラ イトコアレッセンスの結果、データのフルストライプが変更されていることを判別すると、RAID 5およびRAID 6操作 では、現在のデータとパリティ情報を取得するための追加の読み取り操作をそれ以上実行する必要はありません。 必要な情報はすべて、すでにコントローラーのキャッシュに収められています。新しいパリティ値を計算し、その後、 パリティストリップを含む新しいストライプを書き込むだけです。 アレイに対してより大きなストリップサイズを使用すると、コントローラーが累積するフルストライプ書き込みの回数 が減少するため、ある程度、書き込み性能にマイナスの影響がもたらされることがあります。これは、サイズの大き いストリップは、本質的にサイズの大きいストライプとなるため、ライトコアレッセンスがデータのフルストライプをコ ントローラーキャッシュに蓄積する可能性が低くなるからです。ストリップサイズが大きいほど読み取り性能は改善 される傾向があります。 ランダム書き込み性能 図8では、物理ドライブ数が増加したときの、RAID 0、RAID 5、RAID 6、およびRAID 1+0アレイ(1つの論理ドライ ブとして構成されている)のランダム書き込み性能を比較しています。予想されるとおり、それぞれの高レベル書き 込み操作に伴うオーバーヘッドのため、RAID 5とRAID 6アレイの書き込み性能はRAID 0に比べ大幅に低くなって います。RAID 6の増加率はRAID 0の場合ほど高くありませんが、性能はドライブ数が増えるにつれ向上していま す。 ドライブ数が同じ場合、RAID 1+0ランダム書き込み性能はRAID 0の約半分で、RAID 5またはRAID 6の約2倍で す。これは、RAID 1+0では高レベルアレイ書き込みごとに2回の低レベルディスク書き込みが必要だが、Smartア レイコントローラーで行われる余分な読み取りやパリティ計算は不要であるという事実と一致しています。 12 図8. RAID 0、RAID 5、RAID 6、およびRAID 1+0の8KBランダム書き込み性能の増大 構成:P411コントローラー、512MBキャッシュ、256KBのストリップサイズ、キューの深さ64 ランダム書き込み性能の比較においては、ランダム読み取り性能に比べ、RAIDレベルによってかなり大きく左右さ れる一方、ライトキャッシュが総合的なランダム書き込み性能の向上を促進する点に留意する必要があります。こ の良い例が、書き込みペナルティのないRAID 0です。10ドライブRAID 0の論理ディスクは、1秒あたり5015のラン ダム書き込みを実行する一方、1秒あたり2936のランダム読み取りしか実行しません。ライトキャッシュのメリット は、主にこの差に起因しています。 シーケンシャル書き込み性能 図9では、64KBシーケンシャル書き込みを実行しているときの、さまざまなRAIDレベルでの書き込み性能を比較し ています。ランダム書き込みに比べ、性能曲線には2つの顕著な違いがあります。シーケンシャル書き込みでは、 RAID 0と、RAID 5またはRAID 6との差はランダム書き込みの場合ほど大きくありません。これは、ライトキャッシュ、 さらに特定するとライトコアレッセンスに起因します。シーケンシャル書き込みの場合は、Smartアレイコントロー ラーは書き込みをフルストライプ書き込みにまとめることができます。RAID 5およびRAID 6では、これにより、通常 必要な追加の読み取り操作がなくなるため、RAID 0との相対的な性能は向上します。さらに、論理アレイ内の物理 ドライブ数が一定ポイントを過ぎると、ドライブ数が増加しても、シーケンシャル書き込み性能は増大する傾向を示 しません。RAID 5とRAID 6では、コントローラー処理エンジンが必要なXOR計算を実行する能力の限界に達すると、 この平坦な状態が発生します。RAID 0では、ドライブが維持可能な最大スループットに達すると、性能は平坦化し ます。図9に示すテストでは、ドライブ数が8台を超えると、総スループットの増加率が低下する傾向があります。 13 図9. RAID 0、RAID 5、RAID 6、およびRAID 1+0のシーケンシャル書き込み性能の増大 構成:ProLiant DL360 G6、SmartアレイP411コントローラー、512MBキャッシュ、15K 6Gb SAS、256KBのストラ イプサイズ、キューの深さ64 その他のRAIDパフォーマンス特性 SmartアレイRAID論理ドライブのパフォーマンスを特徴付けるために多数のさまざまな用語や基準が使用されてい ます。キューの深さ、スループット、およびレイテンシは、RAIDベンチマークテストで頻繁に目にする用語で、それら の相互関係を理解しておく必要があります。 キューの深さ アレイパフォーマンスベンチマークは、通常、さまざまなキューの深さで実行されます。通常の使用時には、キュー の深さは設定可能なパラメーターではない点を理解しておく必要があります。図10の典型的なRAIDベンチマーク スイートに示すとおり、RAIDベンチマークテストでは、アプリケーション負荷がかかった状態でのコントローラーの キューの深さの増減による影響をシミュレートするために、キューの深さを指定することができます。 実際の運用環境では、キューの深さは常に、Smartアレイコントローラーがオペレーティングシステムから受け入れ たが、まだディスクに対して完了していない保留中のディスクコマンドの数を表しています。コントローラーは、 キュー内のコマンドを分析して、それらを実行するより効率的な方法を見つけ、Smartアレイコントローラーの総合 的なスループットを向上させることができます。 14 図10. さまざまなキューの深さとアレイサイズで実行される典型的なアレイベンチマークスイート スループット対レイテンシ Smartアレイコントローラーは、さまざまな技法を使用して、キューの深さの増加に応じてデータスループットを向上 させています。ただし、キューの深さの増加は、オペレーティングシステムやアプリケーションからのディスクコマン ドをSmartアレイコントローラーが処理する速度が遅れていることを示しています。キューの深さが増えるにつれ、レ イテンシ(OSまたはアプリケーションが認識するディスク要求が完了するまでの所要時間)も長くなる傾向がありま す。この状況は、Smartアレイコントローラー自体の影響を受けることがあります。データスループットを最大化する ためにコントローラーが使用するツール、つまり、コマンドコアレッセンスとリオーダリングによって、レイテンシの全 体的なばらつきが大きくなる可能性があります。レイテンシの低さやばらつきのなさが求められるアプリケーション には、キューの深さが低いまま維持される環境が必要です。一般に、Smartアレイコントローラーのキューの深さが 深い場合は、コントローラーとディスクI/Oの潜在的なボトルネックを示している場合があります。このような問題は、 おそらく、アレイを使用している論理ディスクにより多くのドライブを追加することで解決できます。 15 詳細情報 詳細については、次のリソースを参照してください。 Webアドレス リソースの説明 HP Smartアレイコントローラーテクノロ ジー – 技術概要 http://h20000.www2.hp.com/bc/docs/support/SupportManual/c0068751 8/c00687518.pdf HP ProLiant Serial Attachedストレージ (SAS)のパフォーマンスファクター – 技術概要 http://h20000.www2.hp.com/bc/docs/support/SupportManual/c0146072 5/c01460725.pdf HPアドバンスト データ ガーディング テクノロジーによるRAID 6 – 技術概要 http://h20000.www2.hp.com/bc/docs/support/SupportManual/c0038695 0/c00386950.pdf コメント送信のお願い 本紙に関するコメントを[email protected]までお送りください。 © 2010 Hewlett-Packard Development Company, L.P. 本書の内容は、将来予告なしに変 更されることがあります。HP製品およびサービスに対する保証については、当該製品および サービスの保証規定書に記載されています。本書のいかなる内容も、新たな保証を追加す るものではありません。本書の内容につきましては万全を期しておりますが、本書中の技術 的あるいは校正上の誤り、脱落に対して、責任を負いかねますのでご了承ください。 MIPSは、米国およびその他の国々における、MIPS Technologies, Inc.の商標です。 TC100501TB、2010年6月 16