(57)【要約】【課題】シーケンシャルリードのスループットを向上できる。【解決手段】制御部１ｂは、記憶装置２ａ，２ｂ，２ｃ，２ｄから記憶部１ａに第１のデータ量でデータを先読みすると記憶装置２ａ，２ｂ，２ｃ，２ｄへのコマンド発行量に偏りが生じるか否かを判定する。制御部１ｂは、コマンド発行量に偏りが生じると判定した場合に、記憶装置２ａ，２ｂ，２ｃ，２ｄごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする。これにより、ストレージ制御装置１は、プリフェッチステージングごとのリードコマンドの発行回数の不均衡を循環させて、リードコマンドの発行回数の不均衡が特定の記憶装置に固定化されることを抑止する。【選択図】図１
2016192037.tif 000002
【特許請求の範囲】
【請求項１】
データ領域と前記データ領域に対応するパリティ領域とがそれぞれ分散して配置される複数の記憶装置を制御するストレージ制御装置であって、
記憶部と、
前記複数の記憶装置から前記記憶部に第１のデータ量でデータを先読みすると前記記憶装置ごとのコマンド発行量に偏りが生じる場合に、前記記憶装置ごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする制御部と、
を備えるストレージ制御装置。
【請求項２】
前記制御部は、前記記憶装置ごとのコマンド発行量に偏りが生じる場合を、前記複数の記憶装置で構成されるＲＡＩＤセットのＲＡＩＤレベルにもとづいて検出する、
請求項１記載のストレージ制御装置。
【請求項３】
前記制御部は、前記記憶装置ごとのコマンド発行量の偏りを、前記複数の記憶装置で構成されるＲＡＩＤセットのうち、前記データ領域に対応する前記記憶装置の数または前記パリティ領域に対応する前記記憶装置の数にもとづいて検出する、
請求項１記載のストレージ制御装置。
【請求項４】
前記第２のデータ量は、データを先読みするごとに、コマンド発行量に偏りが生じる前記記憶装置が順次交代するデータ量である、
請求項１記載のストレージ制御装置。
【請求項５】
前記制御部は、前記複数の記憶装置で構成されるＲＡＩＤセットのうち前記データ領域に対応する前記記憶装置の数とキャッシュページサイズとの積に、前記複数の記憶装置の数に所定のシフト量を加えた数を乗じて前記第２のデータ量を算出する、
請求項４記載のストレージ制御装置。
【請求項６】
前記制御部は、１つの前記記憶装置から前記データ領域と前記パリティ領域を含む連続した領域からデータを先読みする場合に、前記パリティ領域で分割される前記データ領域ごとにデータを先読みするコマンドを発行する、
請求項１乃至請求項５のいずれか１つに記載のストレージ制御装置。
【請求項７】
コンピュータが実行するストレージ制御方法であって、
データ領域と前記データ領域に対応するパリティ領域とがそれぞれ分散して配置される複数の記憶装置からキャッシュメモリに第１のデータ量でデータを先読みすると前記記憶装置ごとのコマンド発行量に偏りが生じる場合に、前記記憶装置ごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする、
処理を実行するストレージ制御方法。
【請求項８】
コンピュータに、
データ領域と前記データ領域に対応するパリティ領域とがそれぞれ分散して配置される複数の記憶装置からキャッシュメモリに第１のデータ量でデータを先読みすると前記記憶装置ごとのコマンド発行量に偏りが生じる場合に、前記記憶装置ごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする、
処理を実行させるストレージ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法に関する。
【背景技術】
【０００２】
ホストからの読出しリクエストにかかる時間を短縮する技術の１つとしてプリフェッチステージング（Prefetch Staging）が知られている。プリフェッチステージングは、ボリュームの単位で読出しリクエストのシーケンシャル性を検出した場合に、読出しリクエストを待たずにあらかじめキャッシュメモリにデータをステージングする。プリフェッチステージングに関しては、キャッシュヒット率の向上を図る制御技術の提案がある。
【０００３】
また、ディスク故障からデータを保護する技術の１つとしてＲＡＩＤ（Redundant Arrays of Independent Disks）が知られている。ＲＡＩＤは、データを複数のディスクに分散させて、データの保護とデータアクセスのパフォーマンスを向上する。また、ＲＡＩＤ５やＲＡＩＤ６は、分散パリティを使用するストライプセットを有するＲＡＩＤレベルとして知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−３４５５１９号公報
【特許文献２】特開２００７−２４９４５７号公報
【特許文献３】特開２００８−３１０７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、固定長のプリフェッチステージングにおいて、ストレージ制御装置は、ディスクごとにリードコマンドを発行する。また、ＲＡＩＤ５やＲＡＩＤ６においては、ディスクごとのデータがパリティによって分割される。そのため、ストレージ制御装置は、パリティにより分割されたデータ単位でリードコマンドを発行する場合がある。
【０００６】
このようなプリフェッチステージングは、たとえば、ＲＡＩＤグループを構成するあるディスクに対して「Ｎ」回のリードコマンドを発行し、別のディスクに対して「Ｎ＋１」回のリードコマンドを発行する。リードコマンドの発行回数の不均衡は、プリフェッチステージングごとに蓄積され、特定のディスクのレスポンス低下を惹起する。
【０００７】
特定のディスクのレスポンス低下は、プリフェッチステージングの性能低下につながり、シーケンシャルリードのスループットを低下させる。
１つの側面では、本発明は、シーケンシャルリードのスループットを向上できるストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、以下に示すような、ストレージ制御装置が提供される。ストレージ制御装置は、データ領域とデータ領域に対応するパリティ領域とがそれぞれ分散して配置される複数の記憶装置を制御する。ストレージ制御装置は、記憶部と、制御部とを備える。制御部は、複数の記憶装置から記憶部に第１のデータ量でデータを先読みすると記憶装置ごとのコマンド発行量に偏りが生じる場合に、記憶装置ごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする。
【発明の効果】
【０００９】
１態様によれば、ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法において、シーケンシャルリードのスループットを向上できる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態のストレージ制御装置の構成の一例を示す図である。
【図２】第２の実施形態のストレージシステムの構成の一例を示す図である。
【図３】第２の実施形態のストレージ装置の構成の一例を示す図である。
【図４】第２の実施形態のＲＡＩＤグループと、ＲＡＩＤグループから割り当てられるボリュームの一例を示す図である。
【図５】第２の実施形態のＣＭの処理機能の構成の一例を示すブロック図である。
【図６】第２の実施形態のプリフェッチステージング処理のフローチャートを示す図である。
【図７】第２の実施形態のシーケンシャル性検出用テーブルの一例を示す図である。
【図８】第２の実施形態のデータ量決定処理のフローチャートを示す図である。
【図９】規定値をプリフェッチステージングデータ量としてＲＡＩＤ５におけるディスクセットからデータを読み出す参考例を示す図である。
【図１０】規定値をプリフェッチステージングデータ量としてＲＡＩＤ６におけるディスクセットからデータを読み出す参考例を示す図である。
【図１１】リードコマンド発行回数の差が蓄積するプリフェッチステージングの参考例を示す図である。
【図１２】第２の実施形態のリードコマンド発行回数の一例を示す図である。
【図１３】第２の実施形態のリードコマンド発行回数の均一化の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して実施の形態を詳細に説明する。
［第１の実施形態］
まず、第１の実施形態のストレージ制御装置について図１を用いて説明する。図１は、第１の実施形態のストレージ制御装置の構成の一例を示す図である。
【００１２】
ストレージ制御装置１は、複数の記憶装置２ａ，２ｂ，２ｃ，２ｄを制御する。記憶装置２ａ，２ｂ，２ｃ，２ｄは、たとえばＳＳＤ（Solid State Drive）やＨＤＤ（Hard Disk Drive）などであり、複数のＳＳＤやＨＤＤを収容したＤＥ（Drive Enclosure）などであってもよい。
【００１３】
記憶装置２ａ，２ｂ，２ｃ，２ｄのそれぞれは、データ領域と、データ領域に対応するパリティ領域とがそれぞれ分散して配置される。たとえば、記憶装置２ａ，２ｂ，２ｃ，２ｄは、ＲＡＩＤ５やＲＡＩＤ６を構成するディスクである。
【００１４】
ストレージ制御装置１は、記憶部１ａと、制御部１ｂとを備える。記憶部１ａは、記憶装置２ａ，２ｂ，２ｃ，２ｄから先読み（プリフェッチステージング）したデータを格納する。記憶部１ａは、たとえば、キャッシュメモリである。
【００１５】
制御部１ｂは、記憶装置２ａ，２ｂ，２ｃ，２ｄから記憶部１ａに第１のデータ量でデータを先読みすると記憶装置２ａ，２ｂ，２ｃ，２ｄへのコマンド発行量（数）に偏りが生じるか否かを判定する。第１のデータ量は、所定のプリフェッチステージング範囲に相当するデータ量である。なお、制御部１ｂは、必ずしも第１のデータ量を具体的に想定することを要しない。制御部１ｂは、所定のデータ量（すなわち、第１のデータ量）でデータを先読みする場合に、記憶装置２ａ，２ｂ，２ｃ，２ｄのコマンド発行量に偏りが生じる可能性をＲＡＩＤレベルから判定することができる。たとえば、制御部１ｂは、ＲＡＩＤレベルからコマンド発行量に偏りが生じるか否かを判定することができ、制御部１ｂは、ＲＡＩＤレベルがＲＡＩＤ５やＲＡＩＤ６のときにコマンド発行量に偏りが生じると判定できる。
【００１６】
制御部１ｂは、コマンド発行量に偏りが生じると判定した場合に、記憶装置２ａ，２ｂ，２ｃ，２ｄごとのコマンド発行量の偏りを低減する第２のデータ量でデータを先読みする。
【００１７】
ここで、データの先読みごとのリードコマンドの発行回数の不均衡について説明する。たとえば、第１のデータ量でデータを先読みしたとき、記憶装置２ａ，２ｄに対する１回目のコマンド（リードコマンド）の発行量が「１」回であり、記憶装置２ｂ，２ｃに対する１回目のコマンドの発行量が「２」回である。第１のデータ量でデータを先読みしたとき、２回目以降のコマンド発行量は、１回目のコマンド発行量と同じである。
【００１８】
このように、第１のデータ量によるデータの先読みは、記憶装置２ａ，２ｂ，２ｃ，２ｄに対するコマンドの発行量が固定化するとき、データの先読みごとに記憶装置ごとのコマンド発行量の不均衡が拡大する。たとえば、４回の先読みによるコマンドの総発行量は、記憶装置２ａ，２ｄが「４」回であり、記憶装置２ｂ，２ｃが「８」回である。したがって、記憶装置２ｂ，２ｃは、レスポンス低下によりプリフェッチステージングの性能を低下させる原因となる場合がある。
【００１９】
次に、データの先読みごとのリードコマンドの発行回数の不均衡解消について説明する。たとえば、第２のデータ量でデータを先読みしたとき、記憶装置２ａ，２ｄに対する１回目のコマンドの発行量が「１」回であり、記憶装置２ｂ，２ｃに対する１回目のコマンドの発行量が「２」回である。続いて、第２のデータ量でデータを先読みしたとき、記憶装置２ａ，２ｂに対する２回目のコマンドの発行量が「１」回であり、記憶装置２ｃ，２ｄに対する２回目のコマンドの発行量が「２」回である。
【００２０】
続いて、第２のデータ量でデータを先読みしたとき、記憶装置２ｂ，２ｃに対する３回目のコマンドの発行量が「１」回であり、記憶装置２ａ，２ｄに対する３回目コマンドの発行量が「２」回である。続いて、第２のデータ量でデータを先読みしたとき、記憶装置２ｃ，２ｄに対する４回目のコマンドの発行量が「１」回であり、記憶装置２ａ，２ｂに対する４回目コマンドの発行量が「２」回である。
【００２１】
したがって、第２のデータ量でデータを先読みするとき、記憶装置２ａ，２ｂ，２ｃ，２ｄに対するコマンドの総発行量は、記憶装置２ａ，２ｂ，２ｃ，２ｄのすべてが「６」回である。したがって、レスポンス低下によりプリフェッチステージングの性能を低下させる原因となる記憶装置が存在しない。すなわち、第２のデータ量は、データを先読みするごとに、コマンド発行回数に偏りが生じる記憶装置が順次交代するデータ量である。
【００２２】
これにより、ストレージ制御装置１は、プリフェッチステージングごとのリードコマンドの発行回数の不均衡を循環させて、リードコマンドの発行回数の不均衡が特定の記憶装置に固定化されることを抑止する。したがって、ストレージ制御装置１は、特定の記憶装置におけるレスポンス低下によるプリフェッチステージングの性能低下を抑止することができる。すなわち、ストレージ制御装置１は、シーケンシャルリードのスループットを向上できる。
【００２３】
［第２の実施形態］
次に、第２の実施形態のストレージシステムについて図２を用いて説明する。図２は、第２の実施形態のストレージシステムの構成の一例を示す図である。
【００２４】
ストレージシステム５は、ホスト６と、ネットワーク（伝送路）７と、ストレージ装置１０とを含む。ネットワーク７は、たとえば１または複数のストレージ装置１０と、１または複数のホスト６を接続する。ストレージ装置１０は、ネットワーク７を介してホスト６と通信可能に接続する。ホスト６は、ライトリクエストを発行してストレージ装置１０にデータを書き込み、またリードリクエストを発行してストレージ装置１０からデータを読み出すことができる。
【００２５】
次に、第２の実施形態のストレージ装置について図３を用いて説明する。図３は、第２の実施形態のストレージ装置の構成の一例を示す図である。
ストレージ装置１０は、チャネルアダプタ１１，１２と、リモートアダプタ１３，１４と、コントローラモジュール（以下、ＣＭ（Controller Module））２０，３０と、ドライブエンクロージャ（以下、ＤＥ）５０を含む。
【００２６】
ストレージ装置１０は、チャネルアダプタ１１，１２を介してホスト６と接続する。チャネルアダプタ１１は、ＣＭ２０に対応して備えられ、チャネルアダプタ１２は、ＣＭ３０に対応して備えられる。ストレージ装置１０は、リモートアダプタ１３，１４を介して他のストレージ装置と接続できる。リモートアダプタ１３は、ＣＭ２０に対応して備えられ、リモートアダプタ１４は、ＣＭ３０に対応して備えられる。
【００２７】
ＤＥ５０は、複数のＨＤＤを含む。なお、ＤＥ５０は、ＨＤＤに代えて、あるいはＨＤＤとともにＳＳＤなどその他の記憶装置を含むものであってもよい。
ＣＭ２０とＣＭ３０は、相互に接続して負荷を分担することができる。なお、ストレージ装置１０は、２つのＣＭ２０，３０を含むが、これに限らず、ＣＭ２０とＣＭ３０のいずれか一方を含むものであってもよいし、３つ以上のＣＭを含むものであってもよく、たとえば、４つあるいは８つのＣＭを含むものであってもよい。
【００２８】
ＣＭ２０は、プロセッサ２１と、メモリ２２と、ディスクアダプタ２３，２４を含む。ＣＭ３０は、プロセッサ３１と、メモリ３２と、ディスクアダプタ３３，３４を含む。なお、ＣＭ３０はＣＭ２０と同様の構成を有するため、以下、ＣＭ２０の説明をもってＣＭ３０の説明に代える。
【００２９】
プロセッサ２１、メモリ２２、およびディスクアダプタ２３，２４は、図示しないバスを介して接続されている。プロセッサ２１は、ＣＭ２０全体を制御し、階層制御を含むストレージ制御をおこなう。なお、プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、たとえばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ２１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００３０】
メモリ２２は、ＨＤＤからデータを読み出したときにデータを保持するほか、ＨＤＤにデータを書き込むときのバッファとなる。また、メモリ２２は、ユーザデータや制御情報を格納する。
【００３１】
たとえば、メモリ２２は、ＲＡＭ（Random Access Memory）や不揮発性メモリを含む。ＲＡＭは、ＣＭ２０の主記憶装置として使用される。ＲＡＭには、プロセッサ２１に実行させるオペレーティングシステム（Operating System）のプログラムやファームウェア、アプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭには、プロセッサ２１による処理に必要な各種データが格納される。また、ＲＡＭは、各種データの格納に用いるメモリと別体にキャッシュメモリを含む。なお、キャッシュメモリは、ＨＤＤから先読みしたデータを格納する。
【００３２】
不揮発性メモリは、ストレージ装置１０の電源遮断時においても記憶内容を保持する。不揮発性メモリは、たとえば、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）やフラッシュメモリなどの半導体記憶装置や、ＨＤＤなどである。また、不揮発性メモリは、ＣＭ２０の補助記憶装置として使用される。不揮発性メモリには、オペレーティングシステムのプログラムやファームウェア、アプリケーションプログラム、および各種データが格納される。
【００３３】
バスに接続される周辺機器としては、入出力インタフェース、および通信インタフェースがある。入出力インタフェースは、入出力装置と接続して入出力をおこなう。入出力インタフェースは、ＨＤＤなどの記憶装置から送られてくる信号やデータをプロセッサ２１やメモリ２２に送信する。また、入出力インタフェースは、たとえば、プロセッサ２１から受信した信号を、他の制御部や、ＣＭ２０と接続する出力装置に出力する。通信インタフェースは、ストレージ装置１０内の他のＣＭ（ＣＭ３０）との間でデータの送受信をおこなう。
【００３４】
ディスクアダプタ２３，２４は、ＨＤＤとのインタフェース制御（アクセス制御）をおこなう。
以上のようなハードウェア構成によって、ストレージ装置１０、あるいはＣＭ２０，３０の処理機能を実現することができる。なお、第１の実施形態に示したストレージ制御装置１も、ストレージ装置１０、あるいはＣＭ２０，３０と同様のハードウェアにより実現することができる。
【００３５】
次に、ＤＥ５０が収容するＨＤＤにより構成されるＲＡＩＤグループと、ＲＡＩＤグループから割り当てられるボリュームについて図４を用いて説明する。図４は、第２の実施形態のＲＡＩＤグループと、ＲＡＩＤグループから割り当てられるボリュームの一例を示す図である。
【００３６】
ＤＥ５０は、ＨＤＤ５０１からＨＤＤ５０３と、ＨＤＤ５１１からＨＤＤ５１５を含む。ＨＤＤ５０１からＨＤＤ５０３は、ＲＡＩＤ５のＲＡＩＤグループ＃０を構成する。ＲＡＩＤグループ＃０は、所定の記憶容量を割り当てたボリューム＃０とボリューム＃１を含む。ＨＤＤ５１１からＨＤＤ５１５は、ＲＡＩＤ６のＲＡＩＤグループ＃１を構成する。ＲＡＩＤグループ＃１は、所定の記憶容量を割り当てたボリューム＃２とボリューム＃３を含む。ボリューム＃０からボリューム＃３は、ホスト６が認識可能な論理ボリュームである。
【００３７】
なお、ＲＡＩＤグループ＃０は、ＲＡＩＤ５であることから、分散パリティを使用するストライプセットを有するＲＡＩＤレベルである。また、ＲＡＩＤグループ＃１は、ＲＡＩＤ６であることから、二重分散パリティを使用するストライプセットを有するＲＡＩＤレベルである。
【００３８】
次に、ＣＭの処理機能の構成について図５を用いて説明する。図５は、第２の実施形態のＣＭの処理機能の構成の一例を示すブロック図である。
ＣＭ２０は、記憶部２０１と、制御部２０２としての機能を備える。ＣＭ２０は、ストレージ制御装置の一形態である。記憶部２０１は、メモリ２２によって実現される。制御部２０２は、たとえば、ＣＭ２０のプロセッサ２１が所定のプログラムを実行することで実現される。
【００３９】
記憶部２０１は、プリフェッチデータ記憶部２０１１と、シーケンシャル性検出用テーブル記憶部２０１２と、ＲＡＩＤ構成情報記憶部２０１３としての機能を含む。プリフェッチデータ記憶部２０１１は、記憶装置から先読みしたデータを記憶する。プリフェッチデータ記憶部２０１１は、メモリ２２のうちキャッシュメモリによって実現される。シーケンシャル性検出用テーブル記憶部２０１２は、シーケンシャル性検出用テーブルを記憶する。シーケンシャル性検出用テーブルについては、図７を用いて後で説明する。ＲＡＩＤ構成情報記憶部２０１３は、ＲＡＩＤ構成情報を記憶する。ＲＡＩＤ構成情報は、ＲＡＩＤグループごとのＲＡＩＤレベルと、ＲＡＩＤグループを構成する記憶装置群と、ＲＡＩＤグループから記憶領域の割り当てのあるボリュームとを特定可能な情報とを含む。
【００４０】
制御部２０２は、データ量決定部２０２１と、プリフェッチステージング部２０２２とを含む。データ量決定部２０２１は、先読みするデータ量（プリフェッチステージングデータ量）を決定する。データ量決定部２０２１は、後述するデータ量決定処理をプロセッサ２１が実行することで実現される。プリフェッチステージング部２０２２は、データ量決定部２０２１が決定したプリフェッチステージングデータ量で先読みをおこなう。プリフェッチステージング部２０２２は、後述するプリフェッチステージング処理をプロセッサ２１が実行することで実現される。
【００４１】
次に、第２の実施形態のプリフェッチステージング処理について図６を用いて説明する。図６は、第２の実施形態のプリフェッチステージング処理のフローチャートを示す図である。
【００４２】
プリフェッチステージング処理は、プリフェッチステージングの実行条件を判定して、実行条件が成立する場合にプリフェッチステージングを実行する処理である。プリフェッチステージング処理は、ホスト６からリードリクエストを受け付けたことを契機に、制御部２０２が実行する処理である。
【００４３】
［ステップＳ１１］プリフェッチステージング部２０２２（制御部２０２）は、シーケンシャル性検出用テーブルを参照する。なお、ここでいうシーケンシャル性とは、リードリクエストが要求する読出しデータの連続性を指す。
【００４４】
ここで、シーケンシャル性検出用テーブルについて図７を用いて説明する。図７は、第２の実施形態のシーケンシャル性検出用テーブルの一例を示す図である。
シーケンシャル性検出用テーブル３００は、シーケンシャル性検出対象のボリューム（以下、対象ボリューム）に対応して所定数のエントリを有する。シーケンシャル性検出用テーブル３００は、項目「ボリューム番号」と、項目「先頭ＬＢＡ（Logical Block Address）」と、項目「最終ＬＢＡ」と、項目「シーケンシャル性検出回数」と、項目「タイムスタンプ」とを含む。項目「ボリューム番号」は、対象ボリュームを特定可能な識別情報を示し、対象ボリュームに対応するエントリを特定可能にする。対象ボリュームに対応するエントリは、項目「先頭ＬＢＡ」と、項目「最終ＬＢＡ」と、項目「シーケンシャル性検出回数」と、項目「タイムスタンプ」をパラメータ（エントリパラメータ）に含む。
【００４５】
項目「先頭ＬＢＡ」は、シーケンシャル性検出開始時の対象ボリュームの先頭ＬＢＡを示し、シーケンシャル性検出開始の契機となったリードリクエストから特定される。項目「最終ＬＢＡ」は、シーケンシャル性検出中の対象ボリュームの最終ＬＢＡを示す。最終ＬＢＡは、シーケンシャル性検出中に受け付けた最後のリードリクエスト、あるいはプリフェッチステージングの実行結果から特定される。項目「シーケンシャル性検出回数」は、シーケンシャル性検出中に対象ボリュームのシーケンシャル性を検出した回数を示す。項目「タイムスタンプ」は、対象ボリュームのエントリを最後に更新した時刻を示す。
【００４６】
たとえば、項目番号「＃Ｖ１」で特定される対象ボリュームは、先頭ＬＢＡ「＃Ｈ１」、最終ＬＢＡ「＃Ｔ１」、シーケンシャル性検出回数「＃Ｓ１」、タイムスタンプ「＃ＴＳ１」であることを示す。
【００４７】
再び、図６を用いたプリフェッチステージング処理の説明に戻る。
［ステップＳ１２］プリフェッチステージング部２０２２は、シーケンシャル性検出用テーブルに、受け付けたリードリクエストが読出し対象とするボリュームを対象ボリュームとするエントリ（対象エントリ）があるか否かを判定する。プリフェッチステージング部２０２２は、対象エントリがある場合にステップＳ１６にすすみ、対象エントリがない場合にステップＳ１３にすすむ。
【００４８】
［ステップＳ１３］プリフェッチステージング部２０２２は、シーケンシャル性検出用テーブルのエントリ数が上限に達している場合に、項目「タイムスタンプ」を参照して最も古いエントリを削除する。なお、プリフェッチステージング部２０２２は、シーケンシャル性検出用テーブルのエントリ数が上限に達していない場合に、最も古いエントリを削除することを要しない。
【００４９】
［ステップＳ１４］プリフェッチステージング部２０２２は、受け付けたリードリクエストが読出し対象とするボリュームを対象ボリュームとする新規エントリを追加する。
［ステップＳ１５］プリフェッチステージング部２０２２は、新規エントリに対象ボリュームのエントリパラメータを設定する。プリフェッチステージング部２０２２は、エントリパラメータを設定した後、プリフェッチステージング処理を終了する。
【００５０】
［ステップＳ１６］プリフェッチステージング部２０２２は、対象エントリの項目「最終ＬＢＡ」について、受け付けたリードリクエストの最終ＬＢＡで更新する。
［ステップＳ１７］プリフェッチステージング部２０２２は、対象エントリの項目「シーケンシャル性検出回数」について、シーケンシャル性検出回数を「１」インクリメントして更新する。
【００５１】
［ステップＳ１８］プリフェッチステージング部２０２２は、シーケンシャル性検出回数があらかじめ設定する閾値を超えたか否かを判定する。プリフェッチステージング部２０２２は、シーケンシャル性検出回数が閾値を超えた場合にシーケンシャル性を検出したとしてステップＳ１９にすすむ。一方、プリフェッチステージング部２０２２は、シーケンシャル性検出回数が閾値を超えない場合にプリフェッチステージング処理を終了する。
【００５２】
［ステップＳ１９］データ量決定部２０２１（制御部２０２）は、データ量決定処理を実行する。データ量決定処理は、プリフェッチステージングデータ量を決定する処理である。データ量決定処理の詳細については、図８を用いて後で説明する。
【００５３】
［ステップＳ２０］プリフェッチステージング部２０２２は、ステップＳ１９において決定したプリフェッチステージングデータ量にしたがいプリフェッチステージングを実行する。
【００５４】
［ステップＳ２１］プリフェッチステージング部２０２２は、対象エントリの項目「最終ＬＢＡ」について、プリフェッチステージングの実行結果にしたがう最終ＬＢＡで更新する。
【００５５】
［ステップＳ２２］プリフェッチステージング部２０２２は、対象エントリの項目「シーケンシャル性検出回数」について、シーケンシャル性検出回数を初期値にリセット（たとえば、ゼロクリア）する。プリフェッチステージング部２０２２は、シーケンシャル性検出回数をリセットした後、プリフェッチステージング処理を終了する。
【００５６】
次に、第２の実施形態のデータ量決定処理について図８を用いて説明する。図８は、第２の実施形態のデータ量決定処理のフローチャートを示す図である。
データ量決定処理は、プリフェッチステージングデータ量を決定する処理である。データ量決定処理は、プリフェッチステージング処理のステップＳ１９においてデータ量決定部２０２１が実行する処理である。
【００５７】
［ステップＳ３１］データ量決定部２０２１は、対象ボリュームのＲＡＩＤレベルを検出する。データ量決定部２０２１は、ＲＡＩＤ構成情報を参照することで、対象ボリュームに記憶領域を割り当てたＲＡＩＤグループを特定するとともに、当該ＲＡＩＤグループのＲＡＩＤレベルを特定することができる。
【００５８】
［ステップＳ３２］データ量決定部２０２１は、対象ボリュームのＲＡＩＤレベルがＲＡＩＤ５またはＲＡＩＤ６であるか否かを判定する。データ量決定部２０２１は、対象ボリュームのＲＡＩＤレベルがＲＡＩＤ５またはＲＡＩＤ６でない場合にステップＳ３３にすすみ、ＲＡＩＤ５またはＲＡＩＤ６である場合にステップＳ３４にすすむ。
【００５９】
［ステップＳ３３］データ量決定部２０２１は、プリフェッチステージングデータ量として規定値（第１の実施形態の第１のデータ量に相当）を取得する。規定値は、あらかじめ設定される値であり、たとえば、記憶装置など各種性能を考慮して設定される値である。
【００６０】
［ステップＳ３４］データ量決定部２０２１は、対象ボリュームのＲＡＩＤ構成を取得する。これにより、データ量決定部２０２１は、対象ボリュームのＲＡＩＤグループを構成する記憶装置数（ディスク数）を取得することができる。
【００６１】
［ステップＳ３５］データ量決定部２０２１は、プリフェッチステージングデータ量として変更値（第１の実施形態の第２のデータ量に相当）を算出する。変更値は、記憶装置に発行するリードコマンドの発行量の偏りを低減可能な値である。データ量決定部２０２１は、たとえば、（１）式により変更値Ｖを算出することができる。
【００６２】
Ｖ＝（ｄ×ｎ＋１）×（ｄ−ｐ）×ｃ  …  （１）
ただし、ｄ＝（ＲＡＩＤグループの構成ディスク数）であり、ｎ＝（任意の自然数）であり、ｐ＝（パリティディスク数）であり、ｃ＝（キャッシュページサイズ）である。なお、パリティディスク数ｐは、ＲＡＩＤ５において「１」であり、ＲＡＩＤ６において「２」である。また、任意の自然数ｎは、変更値Ｖが規定値を超える最小の値とする。なお、（１）式中の定数「１」は、コマンド発行量に偏りが生じる記憶装置を順次交代させるためのシフト量である。
【００６３】
たとえば、ｄ＝「５」、ｐ＝「２」、ｃ＝「６４ｋＢ（ｂｙｔｅ）」、規定値が「１０２４（＝１６ｃ）ｋＢ」のとき、変更値Ｖ（ｎ＝１）は「１１５２ｋＢ」である。また、変更値Ｖ（ｎ＝２）は「２１１２ｋＢ」であり、変更値Ｖ（ｎ＝１）と変更値Ｖ（ｎ＝２）のいずれもが規定値「１０２４ｋＢ」を超える。したがって、この場合、データ量決定部２０２１は、変更値Ｖとして「１１５２ｋＢ」を算出する。
【００６４】
［ステップＳ３６］データ量決定部２０２１は、ステップＳ３３で取得した規定値、またはステップＳ３５で算出した変更値を、プリフェッチステージングデータ量として設定し、データ量決定処理を終了する。
【００６５】
なお、データ量決定部２０２１がステップＳ３２で実行したＲＡＩＤレベルの判定は、規定値をプリフェッチステージングデータ量としてプリフェッチステージングを実行した場合に生じる記憶装置ごとのコマンド発行量の偏りが生じる状態（検出対象状態）の検出に相当する。このように、データ量決定部２０２１は、必ずしも規定値を用いて検出対象状態を検出することを要しない。データ量決定部２０２１は、あらかじめ設定した検出条件によって、検出対象状態を検出することができる。
【００６６】
たとえば、データ量決定部２０２１は、ＲＡＩＤレベルがＲＡＩＤ５またはＲＡＩＤ６であるかに代えて、ＲＡＩＤグループを構成する記憶装置群におけるデータディスクの数（データ領域に対応する記憶装置の数）を検出対象状態の検出条件とすることができる。また、データ量決定部２０２１は、ＲＡＩＤレベルがＲＡＩＤ５またはＲＡＩＤ６であるかに代えて、ＲＡＩＤグループを構成する記憶装置群におけるパリティディスクの数（パリティ領域に対応する記憶装置の数）を検出対象状態の検出条件とすることができる。具体的には、データ量決定部２０２１は、ＲＡＩＤグループを構成する記憶装置群のパリティディスクの数が「２」であることを、検出対象状態の検出条件とすることができる。パリティディスクの数「２」は、ＲＡＩＤレベルがＲＡＩＤ６に相当する。
【００６７】
また、データ量決定部２０２１は、プリフェッチステージング処理の実行ごとに、プリフェッチステージングデータ量を決定したが、これに代えてボリューム作成時に１度おこなうようにしてもよい。これにより、プリフェッチステージング部２０２２は、ボリューム作成時に決定したプリフェッチステージングデータ量を取得して、プリフェッチステージングを実行するようにしてもよい。
【００６８】
次に、変更値が記憶装置に発行するリードコマンドの発行量の偏りを低減可能な値となることについて、図９から図１３を用いて説明する。
まず、規定値をプリフェッチステージングデータ量としてＲＡＩＤ５におけるディスクセットからデータを読み出す場合について、図９を用いて説明する。図９は、規定値をプリフェッチステージングデータ量としてＲＡＩＤ５におけるディスクセットからデータを読み出す参考例を示す図である。
【００６９】
図示するＲＡＩＤグループは、ＲＡＩＤレベルがＲＡＩＤ５であり、Ｄｉｓｋ＃０からＤｉｓｋ＃２の３つのディスクから構成される。Ｄｉｓｋ＃０からＤｉｓｋ＃２は、１つのストライプに２つのデータディスクと１つのパリティディスクとを含む。データブロック（Ｄ＋番号で表記（たとえば、「Ｄ００」））をハッチングなしの四角枠で示し、パリティブロック（Ｐ＋番号で表記（たとえば、「Ｐ０」））をハッチングありの四角枠で示す。データブロックとパリティブロックは、それぞれキャッシュページサイズ（たとえば、６４ｋＢ）の大きさを有する。図示するプリフェッチステージング範囲は、プリフェッチステージングデータ量が１８キャッシュページサイズであることを示す。
【００７０】
プリフェッチステージング範囲のデータをキャッシュメモリにステージングするとき、プリフェッチステージング部２０２２は、各ディスクにリードコマンドを発行する。プリフェッチステージング部２０２２は、データブロックを読出し対象とし、パリティブロックの読出し対象としない。一般に、パリティブロックを読み飛ばした方がディスクからデータを読み出す際のスループットが高いことによる。
【００７１】
すなわち、プリフェッチステージング部２０２２は、１つのディスクについて連続するデータブロックを１つのリードコマンドで読み出す。したがって、プリフェッチステージング部２０２２は、Ｄｉｓｋ＃０について３回、Ｄｉｓｋ＃１について４回、Ｄｉｓｋ＃２について３回のリードコマンドを発行してプリフェッチステージングを実行する。Ｄｉｓｋ＃０について３回のリードコマンドの発行は、データブロック「Ｄ００，Ｄ０３」とデータブロック「Ｄ０６，Ｄ０９」とデータブロック「Ｄ１２，Ｄ１５」を読出し対象とするリードコマンドである。また、Ｄｉｓｋ＃１について４回のリードコマンドの発行は、データブロック「Ｄ０１」とデータブロック「Ｄ０４，Ｄ０７」とデータブロック「Ｄ１０，Ｄ１３」とデータブロック「Ｄ１６」を読出し対象とするリードコマンドである。
【００７２】
このようなプリフェッチステージング範囲は、次回のプリフェッチステージングにおいても各ディスクに対するリードコマンド発行回数が同じである。すなわち、Ｄｉｓｋ＃０，Ｄｉｓｋ＃２のリードコマンド発行回数とＤｉｓｋ＃１のリードコマンド発行回数の差が蓄積し、Ｄｉｓｋ＃０，Ｄｉｓｋ＃２と比較してＤｉｓｋ＃１のデータ読み出しにかかる負荷が大きくなる。
【００７３】
次に、規定値をプリフェッチステージングデータ量としてＲＡＩＤ６におけるディスクセットからデータを読み出す場合について、図１０を用いて説明する。図１０は、規定値をプリフェッチステージングデータ量としてＲＡＩＤ６におけるディスクセットからデータを読み出す参考例を示す図である。
【００７４】
図示するＲＡＩＤグループは、ＲＡＩＤレベルがＲＡＩＤ６であり、Ｄｉｓｋ＃０からＤｉｓｋ＃４の５つのディスクから構成される。Ｄｉｓｋ＃０からＤｉｓｋ＃４は、１つのストライプに３つのデータディスクと２つのパリティディスクとを含む。データブロック（Ｄ＋番号で表記（たとえば、「Ｄ００」））をハッチングなしの四角枠で示し、パリティブロック（Ｐ＋番号で表記（たとえば、「Ｐ０」）またはＱ＋番号で表記（たとえば、「Ｑ０」））をハッチングありの四角枠で示す。データブロックとパリティブロックは、それぞれキャッシュページサイズ（たとえば、６４ｋＢ）の大きさを有する。図示するプリフェッチステージング範囲は、プリフェッチステージングデータ量が１５キャッシュページサイズであることを示す。
【００７５】
プリフェッチステージング範囲のデータをキャッシュメモリにステージングするとき、プリフェッチステージング部２０２２は、各ディスクにリードコマンドを発行する。プリフェッチステージング部２０２２は、Ｄｉｓｋ＃０について１回、Ｄｉｓｋ＃１について２回、Ｄｉｓｋ＃２について２回、Ｄｉｓｋ＃３について１回、Ｄｉｓｋ＃４について１回のリードコマンドを発行してプリフェッチステージングを実行する。Ｄｉｓｋ＃０について１回のリードコマンドの発行は、データブロック「Ｄ００，Ｄ０４，Ｄ０８」を読出し対象とするリードコマンドである。また、Ｄｉｓｋ＃１について２回のリードコマンドの発行は、データブロック「Ｄ０１，Ｄ０５」とデータブロック「Ｄ１２」を読出し対象とするリードコマンドである。
【００７６】
このようなプリフェッチステージング範囲は、次回のプリフェッチステージングにおいても各ディスクに対するリードコマンド発行回数が同じである。すなわち、Ｄｉｓｋ＃０，Ｄｉｓｋ＃３，Ｄｉｓｋ＃４のリードコマンド発行回数とＤｉｓｋ＃１，Ｄｉｓｋ＃２のリードコマンド発行回数の差が蓄積し、Ｄｉｓｋ＃０，Ｄｉｓｋ＃３，Ｄｉｓｋ＃４と比較してＤｉｓｋ＃１，Ｄｉｓｋ＃２のデータ読み出しにかかる負荷が大きくなる。
【００７７】
プリフェッチステージングを繰返すことによるリードコマンド発行回数の差の蓄積について図１１を用いて説明する。図１１は、リードコマンド発行回数の差が蓄積するプリフェッチステージングの参考例を示す図である。
【００７８】
図示するＲＡＩＤグループは、図１０で図示したＲＡＩＤレベルがＲＡＩＤ６のＲＡＩＤグループである。１回目のプリフェッチステージングでＤｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数がそれぞれ、１回、２回、２回、１回、１回であったところ、２回目のプリフェッチステージングでもＤｉｓｋ＃０からＤｉｓｋ＃４に同じ回数のリードコマンドが発行されていることを示す。したがって、２回のプリフェッチステージングでＤｉｓｋ＃０，Ｄｉｓｋ＃３，Ｄｉｓｋ＃４へのリードコマンド発行回数が２回、Ｄｉｓｋ＃１，Ｄｉｓｋ＃２へのリードコマンド発行回数が４回となっている。このようなリードコマンド発行回数の差は、負荷の大きなディスクが固定されて、プリフェッチステージングを繰返すごとに拡大する。
【００７９】
データ量決定部２０２１は、このようなコマンド発行量の偏りが生じる場合に、プリフェッチステージングデータ量を規定値から変更値に差し替える。
プリフェッチステージングデータ量を規定値から変更値に差し替えたときの、リードコマンド発行回数について図１２を用いて説明する。図１２は、第２の実施形態のリードコマンド発行回数の一例を示す図である。
【００８０】
図示するＲＡＩＤグループは、図１０で図示したＲＡＩＤレベルがＲＡＩＤ６のＲＡＩＤグループである。図１０と異なるのは、プリフェッチステージング範囲の大きさである。図１０においては、プリフェッチステージング範囲の大きさが１５キャッシュページサイズであったが、図１２におけるプリフェッチステージング範囲の大きさは、１８キャッシュページサイズであることを示す。すなわち、変更値に差し替えられたプリフェッチステージングデータ量が１８キャッシュページサイズである。
【００８１】
これにより、プリフェッチステージング部２０２２は、１回目のプリフェッチステージングにおいて、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、それぞれ２回、２回、２回、１回、１回である。また、プリフェッチステージング部２０２２は、２回目のプリフェッチステージングにおいて、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、それぞれ２回、２回、１回、１回、２回である。
【００８２】
したがって、プリフェッチステージング部２０２２は、プリフェッチステージングの複数回の実行において、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数が固定化されることを抑止する。
【００８３】
次に、プリフェッチステージングを５回実行したときの、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数について図１３を用いて説明する。図１３は、第２の実施形態のリードコマンド発行回数の均一化の一例を示す図である。
【００８４】
１回目および２回目のプリフェッチステージングにおけるＤｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、図１２を用いて説明したとおりである。３回目のプリフェッチステージングにおいて、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、それぞれ２回、１回、１回、２回、２回である。４回目のプリフェッチステージングにおいて、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、それぞれ１回、１回、２回、２回、２回である。５回目のプリフェッチステージングにおいて、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数は、それぞれ１回、２回、２回、２回、１回である。
【００８５】
したがって、プリフェッチステージング部２０２２は、プリフェッチステージングの５回の実行において、Ｄｉｓｋ＃０からＤｉｓｋ＃４へのリードコマンド発行回数の合計をすべて８回として均一化することができる。このように、ストレージ装置１０は、Ｄｉｓｋ＃０からＤｉｓｋ＃４への１回のプリフェッチステージングの実行によるリードコマンドの発行回数の不均衡を、１周期（不均衡是正周期）５回のプリフェッチステージングの実行により是正することができる。
【００８６】
このような不均衡是正周期は、１回のプリフェッチステージングの実行によるリードコマンドの発行回数の不均衡が固定化される規定値を変更値に差し替えることにより実現できる。
【００８７】
これにより、ストレージ装置１０は、Ｄｉｓｋ＃０からＤｉｓｋ＃４のうち特定のディスクにおけるレスポンス低下によるプリフェッチステージングの性能低下を抑止することができる。すなわち、ストレージ装置１０は、シーケンシャルリードのスループットを向上できる。
【００８８】
［変形例］
第２の実施形態では、データ量決定処理のステップＳ３５において、（１）式を用いて変更値Ｖを算出したが、変更値Ｖの算出式はこれに限らない。
【００８９】
データ量決定部２０２１は、たとえば、（２）式により変更値Ｖを算出することができる。
Ｖ＝（ｄ×ｎ＋ｋ）×（ｄ−ｐ）×ｃ  …  （２）
ただし、ｄ＝（ＲＡＩＤグループの構成ディスク数）であり、ｎ＝（任意の自然数）であり、ｋ＝（ｄと互いに素な関係にある自然数）、ｐ＝（パリティディスク数）であり、ｃ＝（キャッシュページサイズ）である。なお、パリティディスク数ｐは、ＲＡＩＤ５において「１」であり、ＲＡＩＤ６において「２」である。また、任意の自然数ｎは、変更値Ｖが規定値を超える最小の値とする。なお、（２）式中の定数「ｋ」は、コマンド発行量に偏りが生じる記憶装置を順次交代させるためのシフト量である。
【００９０】
たとえば、ｄ＝「５」のとき、ｋは、「２」や「３」などの値をとり得る。したがって、たとえば、ｄ＝「５」、ｋ＝「２」、ｐ＝「２」、ｃ＝「６４ｋＢ（ｂｙｔｅ）」、規定値が「１０２４（＝１６ｃ）ｋＢ」のとき、変更値Ｖ（ｎ＝１）は「１３４４ｋＢ」である。また、変更値Ｖ（ｎ＝２）は「２３０４ｋＢ」であり、変更値Ｖ（ｎ＝１）と変更値Ｖ（ｎ＝２）のいずれもが規定値「１０２４ｋＢ」を超える。したがって、この場合、データ量決定部２０２１は、変更値Ｖとして「１３４４ｋＢ」を算出する。
【００９１】
このようにして、データ量決定部２０２１は、１回のプリフェッチステージングの実行によるリードコマンドの発行回数の不均衡を是正可能な変更値Ｖを容易に算出することができる。
【００９２】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、ストレージ制御装置１、ストレージ装置１０、ＣＭ２０，３０が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disk）、ＤＶＤ−ＲＡＭ、ＣＤ（Compact Disc）−ＲＯＭ、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【００９３】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００９４】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００９５】
また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤなどの電子回路で実現することもできる。
【符号の説明】
【００９６】
１  ストレージ制御装置
１ａ  記憶部
１ｂ  制御部
２ａ，２ｂ，２ｃ，２ｄ  記憶装置
５  ストレージシステム
６  ホスト
７  ネットワーク
１０  ストレージ装置
１１，１２  チャネルアダプタ
１３，１４  リモートアダプタ
２０，３０  コントローラモジュール（ＣＭ）
２１，３１  プロセッサ
２２，３２  メモリ
２３，２４，３３，３４  ディスクアダプタ
５０  ドライブエンクロージャ（ＤＥ）
５０１，５０２，５０３，５１１，５１２，５１３，５１４，５１５  ＨＤＤ
２０１  記憶部
２０２  制御部
２０１１  プリフェッチデータ記憶部
２０１２  シーケンシャル性検出用テーブル記憶部
２０１３  ＲＡＩＤ構成情報記憶部
２０２１  データ量決定部
２０２２  プリフェッチステージング部
【図１】
2016192037.tif 000003
【図２】
2016192037.tif 000004
【図３】
2016192037.tif 000005
【図４】
2016192037.tif 000006
【図５】
2016192037.tif 000007
【図６】
2016192037.tif 000008
【図７】
2016192037.tif 000009
【図８】
2016192037.tif 000010
【図９】
2016192037.tif 000011
【図１０】
2016192037.tif 000012
【図１１】
2016192037.tif 000013
【図１２】
2016192037.tif 000014
【図１３】
2016192037.tif 000015