大容量のデータを扱う業務アプリケーションの性能は、ストレージのスループットに大きく影響される傾向がある。ストレージが原因となってシステム全体の性能が劣化するようでは、企業のシステム基盤として採用することはできない。ここでは、ストレージの性能を効率的に向上させる代表的なアーキテクチャ「キャッシュメモリ技術」「ストレージのQoS」「経路の負荷分散」について解説する。
■キャッシュメモリ技術による性能の向上 ■
前のPartに引き続き、企業向けストレージの標準的なアーキテクチャを紹介したい。ここでは、ストレージの性能にフォーカスして話を進めよう。
ストレージプロセッサ(コントローラ)には、CPUとメモリ(半導体メモリ)が搭載されている。このメモリは、OSやストレージ制御プロセスが利用する「システムメモリ」と、ストレージ性能の向上を目的とした「キャッシュメモリ」の2つの用途で利用されている。
半導体メモリはHDDと比べて読み書きの速度が速いため、サーバーのI/Oに対するレスポンスタイムを向上させることができる。また、一般的なアプリケーションの動作において、一度書き込んだデータを再度読み込むことも多い。さらに最近アクセスしたデータに対しては再度アクセスする機会が多いという特性がある。したがって、キャッシュメモリ上に参照頻度の高いデータを多く確保することは、性能を向上させる有効な手段なのである。
ここで、サーバーの読み書き処理に対するデータの流れを見てみよう。図1に示したとおり、書き込み処理の場合、データは一度ストレージアレイのキャッシュメモリに書き込まれる。これで、サーバーの書き込み処理は完了するため、データをHDDへ書き込むよりもはるかに処理時間が短くなるのである。
キャッシュメモリに書き込まれたデータは、特定の条件(キャッシュメモリの使用率が高くなる場合や、ストレージプロセッサが待機状態の時)によって、参照頻度の低いデータから順にHDDへ書き込まれる。
一方、サーバーからの読み込み要求が発生した場合、対象となるデータがキャッシュメモリ上に存在していれば、HDDからではなくキャッシュメモリから読み込まれる。もし、キャッシュメモリ上に読み込み対象データがなければ、当然ながらHDDから読み込まれる。ただし、この時にHDDから読み込まれたデータは、一時的にキャッシュメモリにコピーされてからサーバーへ返信される順序となっている。
キャッシュメモリは、ストレージアレイ製品の標準的なアーキテクチャとなっているが、ストレージ製品によってはキャッシュメモリとHDD間のI/O処理を効率化させて、さらに性能を高める仕組みを備えているのだ。たとえば、サーバーからの連続的なデータの読み込みが発生した場合、HDD上のデータを"先読み"してあらかじめキャッシュメモリ上にデータをコピーしておくことで、HDDではなくキャッシュメモリからの読み出す確率が高まり、レスポンスタイムを向上させる仕組みなどが挙げられる。
続きはこちらから >> (»リンク)
EMCジャパンのTech Communityサイト (»リンク) では、ストレージや情報管理に関する最新技術を多数紹介しています。
企業ブログ
-
【EMC Tech Communityサイト】事例紹介 Vol.62 | グローバル・カンパニーにおけるパフォーマンスやストレージ使用率の向上とコスト削減を両立させる取り組み
アメリカのオハイオ州Olmstedに本社を置き、アメリカ、カナダ、メキシコ、中央アメ...
2012-10-31

