SANtricityソフトウェアのキャッシュ設定とパフォーマンスについて学ぶ
キャッシュ メモリは、ドライブ メディアよりも高速なアクセスが可能な、コントローラ上の揮発性の一時ストレージの領域です。
キャッシュを使用すると、全体的なI/Oパフォーマンスが次のように向上します。
-
読み取り用にホストから要求されたデータが以前の処理からすでにキャッシュに保持されている可能性があるため、ドライブへのアクセスが不要になります。
-
書き込みデータは最初にキャッシュに書き込まれるため、データがドライブに書き込まれるのを待つことなくアプリケーションが処理を続行できます。
デフォルトのキャッシュ設定はほとんどの環境の要件を満たしていますが、必要に応じて設定を変更できます。
ストレージ アレイ キャッシュの設定
ストレージ アレイ内のすべてのボリュームに対して、[システム]ページで次の値を指定できます。
-
フラッシュ開始値 — キャッシュフラッシュ(ディスクへの書き込み)をトリガーする、キャッシュ内の未書き込みデータの割合。キャッシュに指定された開始割合の未書き込みデータが蓄積されると、フラッシュ処理がトリガーされます。デフォルトでは、キャッシュが80%満たされると、コントローラはキャッシュのフラッシュを開始します。
-
キャッシュブロックサイズ — キャッシュ管理における組織単位である各キャッシュブロックの最大サイズ。キャッシュブロックサイズはデフォルトでは8 KiBですが、4、8、16、または32 KiBに設定できます。理想的には、キャッシュブロックサイズはアプリケーションの主要なI/Oサイズに設定する必要があります。ファイルシステムやデータベースアプリケーションは一般的に小さめのサイズを使用する一方、大容量のデータ転送やシーケンシャルなI/Oが必要なアプリケーションには大きめのサイズが適しています。
ボリューム キャッシュの設定
ストレージアレイ内の個々のボリュームについては、[ボリューム]ページ(メニュー:ストレージ[ボリューム])から以下の値を指定できます:
-
読み取りキャッシュ — 読み取りキャッシュは、ドライブから読み取られたデータを格納するバッファです。読み取り操作に必要なデータは、以前の操作によって既にキャッシュに格納されている場合があり、その場合はドライブにアクセスする必要がなくなります。データは、フラッシュされるまで読み取りキャッシュに保持されます。
-
ダイナミック読み取りキャッシュプリフェッチ — ダイナミックキャッシュ読み取りプリフェッチを使用すると、コントローラはドライブからキャッシュにデータブロックを読み取っている間に、追加の連続データブロックをキャッシュにコピーできます。このキャッシュ機能により、将来のデータ要求がキャッシュから満たされる可能性が高まります。ダイナミックキャッシュ読み取りプリフェッチは、シーケンシャルI/Oを使用するマルチメディアアプリケーションにとって重要です。キャッシュにプリフェッチされるデータの速度と量は、ホストの読み取り速度とリクエストサイズに基づいて自動的に調整されます。ランダムアクセスでは、データがキャッシュにプリフェッチされることはありません。この機能は、読み取りキャッシュが無効になっている場合は適用されません。
-
-
書き込みキャッシュ — 書き込みキャッシュは、ホストからドライブにまだ書き込まれていないデータを格納するバッファです。データは、ドライブに書き込まれるまで書き込みキャッシュに保持されます。書き込みキャッシュはI/Oサイズのパフォーマンスを向上させることができます。
データ損失の可能性 — *バッテリーなしで書き込みキャッシュ*オプションを有効にして、保護用のユニバーサル電源がない場合、データが失われる可能性があります。さらに、コントローラバッテリがなく、*バッテリーなしで書き込みキャッシュ*オプションを有効にした場合、データが失われる可能性があります。
-
バッテリーなしでの書き込みキャッシュ — バッテリーなしでの書き込みキャッシュ設定により、バッテリーが欠落している、故障している、完全に放電している、または完全に充電されていない場合でも、書き込みキャッシュを継続できます。バッテリーなしでの書き込みキャッシュを選択することは、電源が切れた場合にデータが失われる可能性があるため、通常は推奨されません。通常、書き込みキャッシュは、バッテリーが充電されるか、故障したバッテリーが交換されるまで、コントローラによって一時的に無効になります。
-
ミラーリングによる書き込みキャッシュ — ミラーリングによる書き込みキャッシュは、一方のコントローラのキャッシュメモリに書き込まれたデータが、もう一方のコントローラのキャッシュメモリにも書き込まれる場合に発生します。したがって、一方のコントローラが故障した場合でも、もう一方のコントローラが未完了の書き込み操作をすべて完了できます。書き込みキャッシュのミラーリングは、書き込みキャッシュが有効になっており、かつ2つのコントローラが存在する場合にのみ利用可能です。ミラーリングによる書き込みキャッシュは、ボリューム作成時のデフォルト設定です。
-