(57)【要約】【課題】データ読み出し時のタイムアウトの発生を防止する。【解決手段】ストレージ装置１は、制御部１ａ、１次ストレージｍ１および２次ストレージｍ２を備える。制御部１ａは、データ書き込み要求時に１次ストレージｍ１に対象データｄ０を書き込み、１次ストレージｍ１から２次ストレージｍ２へのデータ移動時に、１次ストレージｍ１に対象データｄ０のうちの先頭データｄ１を格納し、２次ストレージｍ２に先頭データｄ１を除いた分割データ＃１、・・・、＃ｎを格納する。制御部１ａは、データ読み出し要求時、先頭データｄ１を１次ストレージｍ１から読み出してデータ要求元へ転送すると共に分割データ＃１を２次ストレージｍ２から１次ストレージｍ１へ移動する。そして、制御部１ａは、先頭データｄ１の転送後に１次ストレージｍ１に移動した分割データ＃１をデータ要求元へ転送する。【選択図】図１
2020177274.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶装置と第２の記憶装置を含むストレージ部と、
データ書き込み要求時に前記第１の記憶装置に対象データを書き込み、前記第１の記憶装置から前記第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、データ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出してデータ要求元へ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記データ要求元へ転送する制御部と、
を有するストレージ装置。
【請求項２】
前記制御部は、前記第２のデータの転送完了後、前記第１のデータに前記第２のデータを結合して前記第１の記憶装置上で前記対象データを復元する請求項１記載のストレージ装置。
【請求項３】
前記制御部は、
前記対象データを所定サイズに分割し、分割したうちの先頭データを前記第１のデータ、前記先頭データを除く分割データを前記第２のデータとした場合、
複数の前記分割データを含む分割データ群を前記第２の記憶装置に保存し、
データ読み出し要求時、前記先頭データを前記第１の記憶装置から読み出して前記データ要求元へ転送すると共に前記分割データ群のうちの第１の分割データを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記先頭データの転送後に前記第１の記憶装置に移動した前記第１の分割データを前記データ要求元へ転送し、
前記第１の分割データを前記データ要求元へ転送すると共に前記分割データ群のうちの第２の分割データを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１の分割データの転送後に前記第１の記憶装置に移動した前記第２の分割データを前記データ要求元へ転送する、
請求項１記載のストレージ装置。
【請求項４】
前記制御部は、前記対象データをファイル単位で管理する場合、前記先頭データ、前記分割データが格納されている前記第２の記憶装置の格納先アドレス、および前記分割データが前記第１の記憶装置から前記第２の記憶装置へ移動した後の前記第１の記憶装置の空き領域の属性を含むファイル情報を生成して前記第１の記憶装置に格納する請求項３記載のストレージ装置。
【請求項５】
前記制御部は、前記ファイル情報に示される前記格納先アドレスにもとづいて、前記第１の分割データの読み出しおよび前記第１の分割データに続く前記第２の分割データを読み出して、前記第２の記憶装置から前記第１の記憶装置へ前記分割データを移動する請求項４記載のストレージ装置。
【請求項６】
前記制御部は、前記ファイル情報に示される前記空き領域にもとづいて、前記分割データを前記空き領域に格納して、前記第２の記憶装置から前記第１の記憶装置へ前記分割データを移動する請求項４記載のストレージ装置。
【請求項７】
前記制御部は、前記対象データを前記データ要求元へ転送する際の回線速度でデータ容量を転送する場合に要する第１の時間と、前記第２の記憶装置から前記第１の記憶装置への移動に要する第２の時間との差分が、前記データ要求元の読み出し規定時間の範囲内に収まるように定められる前記データ容量を前記所定サイズに設定して前記対象データを分割する請求項３記載のストレージ装置。
【請求項８】
前記制御部は、
前記対象データの先頭データを前記第１のデータ、前記先頭データを除く残りデータを前記第２のデータとした場合、
前記残りデータを前記第２の記憶装置に保存し、
データ読み出し要求時、前記先頭データを前記第１の記憶装置から読み出して前記データ要求元へ転送すると共に、前記残りデータを所定サイズで分割して分割データを生成して複数の前記分割データを含む分割データ群を前記第２の記憶装置から前記第１の記憶装置へ移動し、
前記先頭データの転送後に前記第１の記憶装置に移動した前記分割データ群のうちの第１の分割データを前記データ要求元へ転送し、前記第１の分割データの転送後に前記分割データ群のうちの第２の分割データを前記データ要求元へ転送する、
請求項１記載のストレージ装置。
【請求項９】
ホストサーバと、
第１の記憶装置と第２の記憶装置を含むストレージ部と、前記ホストサーバからのデータ書き込み要求時に前記第１の記憶装置に対象データを書き込み、前記第１の記憶装置から前記第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、前記ホストサーバからのデータ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出して前記ホストサーバへ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記ホストサーバへ転送する制御部とを備えるストレージ装置と、
を有するストレージシステム。
【請求項１０】
コンピュータに、
データ書き込み要求時に第１の記憶装置に対象データを書き込み、
前記第１の記憶装置から第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、
データ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出してデータ要求元へ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記データ要求元へ転送する、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置、ストレージシステムおよびプログラムに関する。
【背景技術】
【０００２】
ストレージシステムは、記憶装置を有して、情報処理で扱う大量のデータを記憶管理する。また、近年では、使用頻度は低いが削除できず長期保管が求められるようなデータを高速アクセスのストレージから低速アクセスのストレージへ退避させるアーカイブ機能を備えたストレージシステムが注目されている。
【０００３】
このようなストレージシステムは、階層化された１次ストレージと２次ストレージを備えており、例えば、ＳＳＤ（Solid State Drive）で構成される１次ストレージに記憶されているデータが、テープで構成される２次ストレージへ移動される。２次ストレージは、１次ストレージから移動されたデータをアーカイブデータ（保管データ）として記憶する。
【０００４】
関連技術としては、例えば、記憶装置がデータの先頭部分を保持して上位装置に送信し、該記憶装置よりも読み出し速度の遅い記憶装置が先頭部分以降のデータを上位装置に送信する技術が提案されている。また、通信装置がホストサーバからダウンロード対象のファイルにおける複数の領域のデータを同時に呼び出して複数のデータを並行にダウンロードし、生成した格納ファイルの各領域に格納する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−８３８４５号公報
【特許文献２】国際公開第２０１７／１２６１０５号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記のようなストレージシステムでは、アーカイブデータの読み出しを行う場合、２次ストレージから１次ストレージへ全データの移動が完了した後に１次ストレージからデータが読み出される。また、データ読み出しには規定時間が定められ、規定時間内にデータの読み出しが開始されることが求められている。しかし、２次ストレージから１次ストレージへのデータ移動に時間がかかると規定時間内にデータの読み出しが開始されずタイムアウトが発生する可能性がある。
【０００７】
１つの側面では、本発明は、データ読み出し時のタイムアウトの発生を防止したストレージ装置、ストレージシステムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、ストレージ装置が提供される。ストレージ装置は、第１の記憶装置と第２の記憶装置を含むストレージ部と、データ書き込み要求時に第１の記憶装置に対象データを書き込み、第１の記憶装置から第２の記憶装置へのデータ移動時に、第１の記憶装置に対象データのうちの第１のデータを格納し、第２の記憶装置に対象データから第１のデータを除いた第２のデータを少なくとも格納し、データ読み出し要求時に、第１のデータを第１の記憶装置から読み出してデータ要求元へ転送すると共に第２のデータを第２の記憶装置から第１の記憶装置へ移動し、第１のデータの転送後に第１の記憶装置に移動した第２のデータをデータ要求元へ転送する制御部と、を有する。
【０００９】
また、上記課題を解決するために、上記ストレージ装置と同様の制御を実行するストレージシステムが提供される。
さらに、上記課題を解決するために、コンピュータに上記ストレージ装置と同様の制御を実行させるプログラムが提供される。
【発明の効果】
【００１０】
１側面によれば、データ読み出し時のタイムアウトの発生を防止できる。
【図面の簡単な説明】
【００１１】
【図１】ストレージ装置の一例を説明するための図である。
【図２】ストレージシステムの構成の一例を示す図である。
【図３】ストレージ制御部のハードウェア構成の一例を示す図である。
【図４】機能ブロックの構成の一例を示す図である。
【図５】アーカイブ分割時におけるデータ転送動作の一例を示すフローチャートである。
【図６】アーカイブ分割時における書き込み動作の一例を示すフローチャートである。
【図７】アーカイブ分割時における読み出し動作の一例を示すフローチャートである。
【図８】書き込み動作の一例を説明するための図である。
【図９】書き込み動作の一例を説明するための図である。
【図１０】書き込み動作の一例を説明するための図である。
【図１１】読み出し動作の一例を説明するための図である。
【図１２】読み出し動作の一例を説明するための図である。
【図１３】読み出し動作の一例を説明するための図である。
【図１４】リコール分割時におけるデータ転送動作の一例を示すフローチャートである。
【図１５】リコール分割時における書き込み動作の一例を示すフローチャートである。
【図１６】リコール分割時における読み出し動作の一例を示すフローチャートである。
【図１７】書き込み動作の一例を説明するための図である。
【図１８】書き込み動作の一例を説明するための図である。
【図１９】読み出し動作の一例を説明するための図である。
【図２０】読み出し動作の一例を説明するための図である。
【図２１】先頭データの転送から対象データの復元までの動作の一例を示すフローチャートである。
【図２２】データ転送の一例を示す図である（テープの場合）。
【図２３】データ転送の一例を示す図である（ディスクの場合）。
【発明を実施するための形態】
【００１２】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
第１の実施の形態について図１を用いて説明する。図１はストレージ装置の一例を説明するための図である。ストレージ装置１は、制御部１ａとストレージ部１ｂを備え、ストレージ部１ｂは、１次ストレージｍ１（第１の記憶装置）と２次ストレージｍ２（第２の記憶装置）を含む。また、ストレージ装置１には、ホストサーバ３が接続されている。
【００１３】
制御部１ａは、ホストサーバ３からのデータ書き込み要求時に１次ストレージｍ１に対象データｄ０を書き込む。制御部１ａは、１次ストレージｍ１から２次ストレージｍ２へのデータ移動時に、１次ストレージｍ１に対象データｄ０のうちの第１のデータを格納し、２次ストレージｍ２に対象データｄ０から第１のデータを除いた第２のデータを少なくとも格納する。なお、２次ストレージｍ２には、第２のデータだけでなく第１のデータが格納されてもよい（すなわち、対象データｄ０が２次ストレージｍ２に格納されてもよい）。
【００１４】
さらに、制御部１ａは、ホストサーバ３からのデータ読み出し要求時に、第１のデータを１次ストレージｍ１から読み出してデータ要求元へ転送すると共に第２のデータを２次ストレージｍ２から１次ストレージｍ１へ移動する。そして、第１のデータの転送後に１次ストレージｍ１に移動した第２のデータをデータ要求元へ転送する。
【００１５】
図１に示す例を用いて動作について説明する。
〔ステップＳ１〕制御部１ａは、ホストサーバ３からのデータ書き込み要求時、１次ストレージｍ１に対象データｄ０を書き込み保存する。
【００１６】
〔ステップＳ２〕制御部１ａは、１次ストレージｍ１から２次ストレージｍ２へのデータ移動時に、対象データｄ０を所定サイズに分割する。制御部１ａは、対象データｄ０を分割したデータのうちの先頭データｄ１を１次ストレージｍ１に格納し、先頭データｄ１を除く分割データ群（分割データ＃１、・・・、＃ｎ）を２次ストレージｍ２に格納する。
【００１７】
〔ステップＳ３〕制御部１ａは、ホストサーバ３からのデータ読み出し要求時、先頭データｄ１を１次ストレージｍ１から読み出してホストサーバ３へ転送する。また、制御部１ａは、先頭データｄ１のホストサーバ３への転送と並列して、２次ストレージｍ２に格納されている分割データ群のうちの分割データ＃１を２次ストレージｍ２から１次ストレージｍ１へコピーして移動する。
【００１８】
〔ステップＳ４〕制御部１ａは、先頭データｄ１の転送後、１次ストレージｍ１に移動した分割データ＃１を１次ストレージｍ１から読み出してホストサーバ３へ転送する。また、制御部１ａは、分割データ＃１のホストサーバ３への転送と並列して、２次ストレージｍ２に格納されている分割データ群のうちの分割データ＃２を２次ストレージｍ２から１次ストレージｍ１へコピーして移動する。以降同様にして、２次ストレージｍ２から１次ストレージｍ１に移動した分割データがホストサーバ３へ順次転送される。
【００１９】
このように、ストレージ装置１では、対象データｄ０のうちの第１のデータを１次ストレージｍ１に格納し、第１のデータを除く残りの第２のデータを２次ストレージｍ２に少なくとも格納する。そして、ストレージ装置１は、第１のデータのホストサーバ３への転送と共に２次ストレージｍ２から１次ストレージｍ１へ第２のデータを移動し、１次ストレージｍ１に移動した第２のデータをホストサーバ３へ順次転送する。
【００２０】
これにより、ホストサーバ３からのデータ読み出し要求時、規定時間以内にデータ読み出しが開始され、かつデータが途切れることなくホストサーバ３へデータが転送されるので、データ読み出し時のタイムアウトの発生を防止することができる。
【００２１】
［第２の実施の形態］
次に第２の実施の形態について説明する。図２はストレージシステムの構成の一例を示す図である。ストレージシステムｓｙ１は、ストレージ装置１−１、ホストサーバ３および端末装置４を備える。ホストサーバ３には保守・運用管理を行う端末装置４が接続され、ホストサーバ３とストレージ装置１−１は、ネットワーク５を介して接続されている。
【００２２】
ストレージ装置１−１は、ストレージ制御部１０およびストレージ部２０を備える。ストレージ部２０は、１次ストレージ２１および２次ストレージ２２を含む。
１次ストレージ２１は、２次ストレージ２２よりも高速にデータの読み書きが可能な記録媒体で構成される。例えば、１次ストレージ２１は、ＨＤＤ（Hard Disk Drive）やＳＳＤである。
【００２３】
また、１次ストレージ２１は、運用領域２１ａと一時領域２１ｂを有する。運用領域２１ａには例えば、対象データ（実データ）や、対象データを分割した際の先頭データが格納される。一時領域２１ｂには例えば、対象データを分割した際の全分割データが格納される。また、対象データをファイル単位で管理する場合、後述のファイル情報が運用領域２１ａまたは一時領域２１ｂに格納される。運用領域２１ａと一時領域２１ｂの使用例については後述する。
【００２４】
２次ストレージ２２は、１次ストレージ２１よりも低速にデータの読み書きを行う記録媒体で構成される。２次ストレージ２２は、例えば、ＨＤＤ、光ディスクまたはテープである。
【００２５】
ストレージ制御部１０は、制御部１１、記憶部１２およびインタフェース部１３を含み、ホストサーバ３が有する上位アプリケーション３ａの指示にもとづき、ストレージ部２０に対するＩ／Ｏ制御を行う。
【００２６】
制御部１１は、図１に示した制御部１ａの機能を有する。制御部１１は、１次ストレージ２１から２次ストレージ２２へ、または２次ストレージ２２から１次ストレージ２１へのデータ移動を行って、１次ストレージ２１と２次ストレージ２２との階層管理（１次ストレージ２１および２次ストレージ２２間でのデータ再配置）を行う。
【００２７】
記憶部１２は、ストレージ間のデータ再配置に伴う後述の設定情報（データの分割サイズや同時読み書き可能数等）を記憶し、またストレージ装置１−１全体の運用管理にかかわる制御情報等を記憶する。インタフェース部１３は、ネットワーク５を介したホストサーバ３とのインタフェース制御、またはストレージ部２０とのインタフェース制御を行う。
【００２８】
＜ハードウェア＞
図３はストレージ制御部のハードウェア構成の一例を示す図である。ストレージ制御部１０は、プロセッサ（コンピュータ）１００によって全体が制御されている。すなわち、プロセッサ１００は、ストレージ制御部１０の制御部として機能する。プロセッサ１００には、バス１０３を介して、メモリ１０１および複数の周辺機器が接続されている。プロセッサ１００は、マルチプロセッサであってもよい。プロセッサ１００は、例えば、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１００は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００２９】
メモリ１０１は、ストレージ制御部１０の主記憶装置として使用される。メモリ１０１には、プロセッサ１００に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０１には、プロセッサ１００による処理に要する各種データが格納される。
【００３０】
また、メモリ１０１は、ストレージ制御部１０の補助記憶装置としても使用され、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。メモリ１０１は、補助記憶装置として、フラッシュメモリやＳＳＤ等の半導体記憶装置やＨＤＤ等の磁気記録媒体を含んでもよい。
【００３１】
バス１０３に接続されている周辺機器としては、入出力インタフェース１０２、ネットワークインタフェース１０４およびストレージインタフェース１０５がある。入出力インタフェース１０２は、プロセッサ１００からの命令にしたがってストレージ制御部１０の状態を表示する表示装置として機能するモニタ（例えば、ＬＥＤ（Light Emitting Diode）やＬＣＤ（Liquid Crystal Display）等）が接続されている。
【００３２】
また、入出力インタフェース１０２は、キーボードやマウス等の情報入力装置を接続可能であって、情報入力装置から送られてくる信号をプロセッサ１００に送信する。
さらにまた、入出力インタフェース１０２は、周辺機器を接続するための通信インタフェースとしても機能する。例えば、入出力インタフェース１０２は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Ｂｌｕ−ｒａｙＤｉｓｃ（登録商標）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）等がある。
【００３３】
また、入出力インタフェース１０２は、メモリ装置やメモリリーダライタを接続することができる。メモリ装置は、入出力インタフェース１０２との通信機能を搭載した記録媒体である。メモリリーダライタは、メモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しを行う装置である。メモリカードは、カード型の記録媒体である。
【００３４】
ネットワークインタフェース１０４は、ネットワーク５の通信インタフェース制御を行い、例えば、ＮＩＣ（Network Interface Card）、無線ＬＡＮ（Local Area Network）カード等を使用することもできる。ネットワークインタフェース１０４で受信されたデータは、メモリ１０１やプロセッサ１００に出力される。
【００３５】
ストレージインタフェース１０５は、ストレージ部２０とのインタフェース制御を行い、ストレージ部２０との間で行われるデータやファイル情報等の送受信を制御する。
以上のようなハードウェア構成によって、ストレージ制御部１０の処理機能を実現することができる。例えば、ストレージ制御部１０は、プロセッサ１００がそれぞれ所定のプログラムを実行することで本発明の制御を行うことができる。
【００３６】
ストレージ制御部１０は、例えば、コンピュータで読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。ストレージ制御部１０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
【００３７】
例えば、ストレージ制御部１０に実行させるプログラムを補助記憶装置に格納しておくことができる。プロセッサ１００は、補助記憶装置内のプログラムの少なくとも一部を主記憶装置にロードし、プログラムを実行する。
【００３８】
また、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ１００からの制御により、補助記憶装置にインストールされた後、実行可能となる。またプロセッサ１００が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００３９】
＜機能ブロック＞
図４は機能ブロックの構成の一例を示す図である。ストレージ制御部１０は、制御部１１、記憶部１２、外部インタフェース部１３ａおよびストレージインタフェース部１３ｂを備える。
【００４０】
制御部１１は、分割データ書き込み部１１ａ、分割データ読み出し部１１ｂおよび動作設定部１１ｃを含む。分割データ書き込み部１１ａは、１次ストレージ２１に保存されたデータを分割する。分割データ読み出し部１１ｂは、２次ストレージ２２から１次ストレージ２１へ分割データを読み出し、ホストサーバ３に転送する。
【００４１】
動作設定部１１ｃは、データを分割する際のサイズの設定や、１次ストレージ２１でのデータ滞留時間等を設定する。また動作設定部１１ｃは、１次ストレージ２１と２次ストレージ２２との間で同時に読み書き可能なデータ数を決定する同時読み書き可能数を設定する。
【００４２】
外部インタフェース部１３ａは、ネットワーク５またはストレージ制御部１０に接続される各種機器のインタフェース制御を行い、ストレージインタフェース部１３ｂは、ストレージ部２０のインタフェース制御を行う。
【００４３】
なお、制御部１１は図３のプロセッサ１００により実現され、外部インタフェース部１３ａは図３の入出力インタフェース１０２またはネットワークインタフェース１０４により実現される。さらに、ストレージインタフェース部１３ｂは、図３のストレージインタフェース１０５により実現され、記憶部１２は、図３のメモリ１０１により実現される。
【００４４】
＜アーカイブ分割時における動作＞
次に本発明の動作について以降詳しく説明する。なお、対象データを分割するタイミングとして、２次ストレージ２２にデータを書き込む際に分割する場合と、２次ストレージ２２から１次ストレージ２１へのデータ移動時に分割する場合とがある。前者をアーカイブ分割、後者をリコール分割と呼ぶことにし、最初にアーカイブ分割時における動作について説明する。
【００４５】
（フローチャート）
図５はアーカイブ分割時におけるデータ転送動作の一例を示すフローチャートである。
〔ステップＳ１１〕制御部１１は、上位アプリケーション３ａのタイムアウト情報（規定時間）等にもとづき分割サイズ等を設定する。
【００４６】
〔ステップＳ１２〕制御部１１は、上位アプリケーション３ａからの書き込み要求にもとづき、１次ストレージ２１へ対象データの書き込みを行う。
〔ステップＳ１３〕制御部１１は、設定した分割サイズで対象データを分割する。
【００４７】
〔ステップＳ１４ａ〕制御部１１は、対象データを分割した際の先頭データを１次ストレージ２１に残して格納する。ステップＳ１５ａへ処理が進む。
〔ステップＳ１４ｂ〕制御部１１は、先頭データ以外の分割データ群を２次ストレージ２２に移動して格納する。ステップＳ１５ｂへ処理が進む。なお、分割データ群は、２次ストレージ２２へコピーされ、コピーが完了すると１次ストレージ２１から削除される。
【００４８】
〔ステップＳ１５ａ〕制御部１１は、上位アプリケーション３ａからの対象データの読み出し要求の受信を待機する。読み出し要求を受信した場合はステップＳ１６へ処理が進む。
【００４９】
〔ステップＳ１５ｂ〕制御部１１は、上位アプリケーション３ａからの対象データの読み出し要求の受信を待機する。読み出し要求を受信した場合はステップＳ１７へ処理が進む。
【００５０】
〔ステップＳ１６〕制御部１１は、上位アプリケーション３ａに先頭データを転送する。
〔ステップＳ１７〕制御部１１は、先頭データの転送と並列して２次ストレージ２２から１次ストレージ２１へ分割データを移動する。
【００５１】
〔ステップＳ１８〕制御部１１は、１次ストレージ２１に移動した分割データを上位アプリケーション３ａへ転送する。
〔ステップＳ１９〕制御部１１は、すべての分割データが２次ストレージ２２から１次ストレージ２１へ移動したか否かを判定する。分割データが２次ストレージ２２に残っている場合はステップＳ１７へ処理が戻り、すべての分割データの移動が完了した場合は終了する。
【００５２】
図６はアーカイブ分割時における書き込み動作の一例を示すフローチャートである。
〔ステップＳ２１〕制御部１１は、対象データを分割して転送・保存するための分割サイズや、データ滞留時間および同時読み書き可能数を設定する。データ滞留時間は、１次ストレージ２１にデータを滞留させておく時間である。同時読み書き可能数は、１次ストレージ２１と２次ストレージ２２との間で同時に読み書き可能なデータ数である。
【００５３】
〔ステップＳ２２〕制御部１１は、上位アプリケーション３ａからの書き込み要求にもとづき、１次ストレージ２１上の運用領域２１ａに対象データの書き込みを行う。
〔ステップＳ２３〕制御部１１は、設定した分割サイズで対象データを分割し、１次ストレージ２１上の一時領域２１ｂに、先頭データを含む分割データ群をコピーして格納する。
【００５４】
〔ステップＳ２４〕制御部１１は、先頭データ以外の分割データ群を同時読み書き可能数にもとづいて、２次ストレージ２２へコピーして格納する。
〔ステップＳ２５〕制御部１１は、先頭データ以外の分割データ群を一時領域２１ｂから削除する。
【００５５】
〔ステップＳ２６〕制御部１１は、ファイル情報を生成して一時領域２１ｂに格納する。
ここで、制御部１１は、対象データをファイル単位で管理する場合、ファイル情報を生成する。ファイル情報は、先頭データ、格納先情報および空き領域の属性（Sparse属性）を含み、各属性は例えば、ショートカット形式で管理することができる。格納先情報は、２次ストレージ２２に移動した分割データ群の格納先アドレスを示し、空き領域は、２次ストレージ２２に移動した分割データ群の容量を示す。
【００５６】
また、空き領域の属性は、空の領域の存在を示す情報であり、１次ストレージ２１上に空きの領域が実際に割り当てられているわけではない。分割データ群を１次ストレージ２１に復元させるときに、該空き領域が示す容量分に分割データ群が書き込まれることになる。このようなファイル情報を生成して、１次ストレージ２１と２次ストレージ２２間のデータ再配置制御を行うことにより、ファイル情報を介して効率のよいデータ管理が可能になる。なお、以降ではファイル情報をスパースファイル（Sparse file）と呼ぶ。
【００５７】
〔ステップＳ２７〕制御部１１は、データ滞留時間に達したか否かを判定する。データ滞留時間に達した場合はステップＳ２８へ処理が進む。
〔ステップＳ２８〕制御部１１は、一時領域２１ｂ上のスパースファイルを運用領域２１ａに移動し、運用領域２１ａ上の対象データを削除する。
【００５８】
図７はアーカイブ分割時における読み出し動作の一例を示すフローチャートである。
〔ステップＳ３１〕制御部１１は、上位アプリケーション３ａからの読み出し要求を受信する。
【００５９】
〔ステップＳ３２〕制御部１１は、読み出し要求されたデータはスパースファイルに属性が設定されているデータか否かを判定する。属性が設定されている場合はステップＳ３４、Ｓ３５へ処理が進み、属性が設定されていない場合はステップＳ３３へ処理が進む。
【００６０】
〔ステップＳ３３〕制御部１１は、１次ストレージ２１に格納されている対象データを上位アプリケーション３ａへ転送する。
〔ステップＳ３４〕制御部１１は、スパースファイルに示される先頭データを上位アプリケーション３ａへ転送する。ステップＳ３９へ処理が進む。
【００６１】
〔ステップＳ３５〕制御部１１は、２次ストレージ２２に格納されている分割データを１次ストレージ２１内の一時領域２１ｂへ同時読み書き可能数にもとづいて移動する。
〔ステップＳ３６〕制御部１１は、移動した分割データを一時領域２１ｂに書き込む。なお、ステップＳ３４の処理と、ステップＳ３５、Ｓ３６の処理は並列に実行される。
【００６２】
〔ステップＳ３７〕制御部１１は、一時領域２１ｂに書き込んだ分割データを上位アプリケーション３ａへ転送する。
〔ステップＳ３８〕制御部１１は、すべての分割データが２次ストレージ２２から１次ストレージ２１へ移動したか否かを判定する。分割データが２次ストレージ２２に残っている場合はステップＳ３５へ処理が戻り、すべての分割データの移動が完了した場合はステップＳ３９へ処理が進む。
【００６３】
〔ステップＳ３９〕制御部１１は、１次ストレージ２１上で、先頭データに分割データ群を結合して対象データを復元し、スパースファイルを解除してスパースファイル内の格納先情報および空き領域の属性を削除する。
【００６４】
（アーカイブ分割時における動作イメージ）
次にアーカイブ分割時における動作イメージについて図８から図１３を用いて説明する。図８から図１０は書き込み動作の一例を説明するための図である。
【００６５】
〔ステップＳ４１〕制御部１１は、上位アプリケーション３ａの書き込み要求にもとづき対象データを１次ストレージ２１上の運用領域２１ａに書き込む。
〔ステップＳ４２〕制御部１１は、設定した分割サイズにもとづき、運用領域２１ａに書き込んだ対象データを分割し、分割したデータを先頭データ、分割データ＃１、・・・、＃ｎとして、１次ストレージ２１上の一時領域２１ｂにコピーする。
【００６６】
〔ステップＳ４３〕制御部１１は、分割データ＃１、・・・、＃ｎを２次ストレージ２２にコピーし、コピー完了後は一時領域２１ｂ上の分割データ＃１、・・・、＃ｎを削除する。
【００６７】
〔ステップＳ４４〕制御部１１は、先頭データ、格納先情報および空き領域の属性を含むスパースファイルＳｆ１を一時領域２１ｂ上に生成する。格納先情報は、２次ストレージ２２に移動した分割データ＃１、・・・、＃ｎそれぞれの２次ストレージ２２上の格納先アドレスを示し、空き領域は、分割データ群（分割データ＃１、・・・、＃ｎ）の容量を示す。
【００６８】
〔ステップＳ４５〕制御部１１は、一時領域２１ｂ上のスパースファイルＳｆ１を運用領域２１ａへ移動する（運用領域２１ａに移動した後は、一時領域２１ｂからスパースファイルＳｆ１は削除される）。
【００６９】
〔ステップＳ４６〕制御部１１は、運用領域２１ａから対象データを削除する。
図１１から図１３は読み出し動作の一例を説明するための図である。
〔ステップＳ５１〕制御部１１は、上位アプリケーション３ａの読み出し要求にもとづき運用領域２１ａ上のスパースファイルＳｆ１に含まれる先頭データを上位アプリケーション３ａに転送する。
【００７０】
〔ステップＳ５２〕制御部１１は、先頭データの転送と並列して、２次ストレージ２２上の分割データ＃１を１次ストレージ２１上の一時領域２１ｂにコピーして移動する。ここで、制御部１１は、スパースファイルＳｆ１に示される格納先情報にもとづいて２次ストレージ２２上の分割データ＃１を読み出し、スパースファイルＳｆ１に示される一時領域２１ｂ上の空き領域に分割データ＃１を格納する。
【００７１】
〔ステップＳ５３〕制御部１１は、分割データ＃１を上位アプリケーション３ａに転送する。
〔ステップＳ５４〕制御部１１は、分割データ＃１の転送と並列して、２次ストレージ２２上の分割データ＃２を１次ストレージ２１上の一時領域２１ｂにコピーして移動する。ここで、制御部１１は、スパースファイルＳｆ１に示される格納先情報にもとづいて２次ストレージ２２上の分割データ＃２を読み出し、スパースファイルＳｆ１に示される一時領域２１ｂ上の空き領域に分割データ＃２を格納する。
【００７２】
上記のステップＳ５２、Ｓ５４のように、スパースファイルＳｆ１で管理される格納先情報および空き領域にもとづいて、２次ストレージ２２から１次ストレージ２１へのデータ再配置が行われることで、効率よくデータ移動を行うことができる。
【００７３】
〔ステップＳ５５〕制御部１１は、２次ストレージ２２上の分割データ＃１、・・・、＃ｎをすべて転送した後、運用領域２１ａ上で先頭データに分割データ＃１、・・・、＃ｎを結合して対象データを復元する。このように、読み出し要求のあった対象データは１次ストレージ２１上に復元されるので、再度読み出し要求があった場合、１次ストレージ２１から即時にデータ転送が行われることになり応答性を高めることができる。なお、制御部１１は、対象データの復元後、スパースファイルＳｆ１を解除してスパースファイルＳｆ１内の格納先情報および空き領域の属性を削除する。
【００７４】
＜リコール分割時における動作＞
（フローチャート）
図１４はリコール分割時におけるデータ転送動作の一例を示すフローチャートである。
【００７５】
〔ステップＳ６１〕制御部１１は、上位アプリケーション３ａのタイムアウト情報等にもとづき分割サイズ等を設定する。
〔ステップＳ６２〕制御部１１は、上位アプリケーション３ａからの書き込み要求にもとづき、１次ストレージ２１へ対象データの書き込みを行う。
【００７６】
〔ステップＳ６３〕制御部１１は、対象データを先頭データと先頭データ以外の残りデータとに分割する。
〔ステップＳ６４ａ〕制御部１１は、１次ストレージ２１に先頭データを残して格納する。ステップＳ６５ａへ処理が進む。
【００７７】
〔ステップＳ６４ｂ〕制御部１１は、先頭データ以外の残りデータを２次ストレージ２２に移動して格納する。ステップＳ６５ｂへ処理が進む。なお、残りデータは、２次ストレージ２２へコピーされ、コピーが完了すると１次ストレージ２１から削除される。
【００７８】
〔ステップＳ６５ａ〕制御部１１は、上位アプリケーション３ａからの対象データの読み出し要求の受信を待機する。読み出し要求を受信した場合はステップＳ６６へ処理が進む。
【００７９】
〔ステップＳ６５ｂ〕制御部１１は、上位アプリケーション３ａからの対象データの読み出し要求の受信を待機する。読み出し要求を受信した場合はステップＳ６７へ処理が進む。
【００８０】
〔ステップＳ６６〕制御部１１は、上位アプリケーション３ａに先頭データを転送する。
〔ステップＳ６７〕制御部１１は、先頭データの転送と並列して、２次ストレージ２２から残りデータを読み出し、読み出した残りデータを、設定した分割サイズで分割して１次ストレージ２１に格納する。
【００８１】
〔ステップＳ６８〕制御部１１は、分割データを上位アプリケーション３ａへ転送する。
〔ステップＳ６９〕制御部１１は、すべての残りデータが２次ストレージ２２から１次ストレージ２１へ移動したか否かを判定する。残りデータが２次ストレージ２２に残っている場合はステップＳ６７へ処理が戻り、すべての残りデータの移動が完了した場合は終了する。
【００８２】
図１５はリコール分割時における書き込み動作の一例を示すフローチャートである。
〔ステップＳ７１〕制御部１１は、分割サイズおよびデータ滞留時間を設定する。
〔ステップＳ７２〕制御部１１は、上位アプリケーション３ａからの書き込み要求にもとづき、１次ストレージ２１上の運用領域２１ａに対象データの書き込みを行う。
【００８３】
〔ステップＳ７３〕制御部１１は、データ滞留時間に達したか否かを判定する。データ滞留時間に達した場合はステップＳ７４へ処理が進む。
〔ステップＳ７４〕制御部１１は、対象データを先頭データと残りデータとに分割する。
【００８４】
〔ステップＳ７５〕制御部１１は、先頭データ以外の残りデータを２次ストレージ２２へコピーして移動する。
〔ステップＳ７６〕制御部１１は、先頭データ以外の残りデータを運用領域２１ａから削除する。
【００８５】
〔ステップＳ７７〕制御部１１は、先頭データ、格納先情報および空き領域の属性を含むスパースファイルを運用領域２１ａ上に生成し、運用領域２１ａ上の対象データを削除する。
【００８６】
図１６はリコール分割時における読み出し動作の一例を示すフローチャートである。
〔ステップＳ８１〕制御部１１は、上位アプリケーション３ａからの読み出し要求を受信する。
【００８７】
〔ステップＳ８２〕制御部１１は、読み出し要求されたデータはスパースファイルに属性が設定されているデータか否かを判定する。属性が設定されている場合はステップＳ８４、Ｓ８５へ処理が進み、属性が設定されていない場合はステップＳ８３へ処理が進む。
【００８８】
〔ステップＳ８３〕制御部１１は、１次ストレージ２１に格納されている対象データを上位アプリケーション３ａへ転送する。
〔ステップＳ８４〕制御部１１は、スパースファイルに示される先頭データを上位アプリケーション３ａへ転送する。ステップＳ８９へ処理が進む。
【００８９】
〔ステップＳ８５〕制御部１１は、２次ストレージ２２に格納されている残りデータを読み出し、分割サイズにもとづいて分割する。
〔ステップＳ８６〕制御部１１は、分割データを一時領域２１ｂに書き込む。なお、ステップＳ８４の処理と、ステップＳ８５、Ｓ８６の処理は並列に実行される。
【００９０】
〔ステップＳ８７〕制御部１１は、一時領域２１ｂに書き込んだ分割データを上位アプリケーション３ａへ転送する。
〔ステップＳ８８〕制御部１１は、すべての残りデータが２次ストレージ２２から１次ストレージ２１へ移動したか否かを判定する。残りデータが２次ストレージ２２に残っている場合はステップＳ８５へ処理が戻り、すべての残りデータの移動が完了した場合はステップＳ８９へ処理が進む。
【００９１】
〔ステップＳ８９〕制御部１１は、１次ストレージ２１上で、先頭データに分割データ群を結合して対象データを復元し、スパースファイルを解除してスパースファイル内の格納先情報および空き領域の属性を削除する。
【００９２】
（リコール分割時における動作イメージ）
次にリコール分割時における動作イメージについて図１７から図２０を用いて説明する。
【００９３】
図１７、図１８は書き込み動作の一例を説明するための図である。
〔ステップＳ９１〕制御部１１は、上位アプリケーション３ａの書き込み要求にもとづき対象データを１次ストレージ２１上の運用領域２１ａに書き込む。
【００９４】
〔ステップＳ９２〕制御部１１は、運用領域２１ａに書き込んだデータを先頭データと残りデータとに分割し、残りデータを２次ストレージ２２へ移動する。
〔ステップＳ９３〕制御部１１は、先頭データ、格納先情報および空き領域の属性を含むスパースファイルＳｆ２を運用領域２１ａ上に生成する。格納先情報は、２次ストレージ２２に移動した残りデータの２次ストレージ２２上の格納先アドレスを示し、空き領域は、残りデータの容量を示す。
【００９５】
図１９、図２０は読み出し動作の一例を説明するための図である。
〔ステップＳ１０１〕制御部１１は、上位アプリケーション３ａの読み出し要求にもとづき運用領域２１ａ上の先頭データを上位アプリケーション３ａに転送する。
【００９６】
〔ステップＳ１０２〕制御部１１は、先頭データの転送と並列して、残りデータを分割サイズにもとづき分割し、分割データ＃１、・・・、＃ｎを、２次ストレージ２２上の一時領域２１ｂにコピーして移動する。
【００９７】
〔ステップＳ１０３〕制御部１１は、一時領域２１ｂ上の分割データを上位アプリケーション３ａへ順次転送する。
〔ステップＳ１０４〕制御部１１は、２次ストレージ２２上の分割データ＃１、・・・、＃ｎをすべて転送した後、運用領域２１ａ上で先頭データに分割データ＃１、・・・、＃ｎを結合して対象データを復元する。また、制御部１１は、スパースファイルＳｆ２を解除してスパースファイルＳｆ２内の格納先情報および空き領域の属性を削除する。
【００９８】
ここで、上述のステップＳ６３やステップＳ９２において、対象データが先頭データと残りデータとに分割されるが、先頭データをどのようなデータ容量で分割するかについては、上位アプリケーション３ａへの転送時にタイムアウトしないようなデータ容量が設定される。
【００９９】
すなわち、制御部１１は、先頭データの上位アプリケーション３ａへの転送に要する時間が、残りデータを分割サイズで分割して２次ストレージ２２から１次ストレージ２１へ移動する際に要する時間に等しいまたは大きくなるように、先頭データのデータ容量を決定する。これにより、先頭データが転送されている間に、残りデータが分割されて２次ストレージ２２から１次ストレージ２１への移動が完了するので、タイムアウトが発生することなく、先頭データの転送後、分割データを順次転送することができる。
【０１００】
（分割データ群転送後の動作）
図２１は先頭データの転送から対象データの復元までの動作の一例を示すフローチャートである。なお、図２１は、アーカイブ分割およびリコール分割に対して共通動作である。
【０１０１】
〔ステップＳ１１１〕制御部１１は、先頭データを上位アプリケーション３ａへ転送する。
〔ステップＳ１１２〕制御部１１は、分割データを上位アプリケーション３ａへ転送する。すべての分割データの転送が終了した場合はステップＳ１１３へ処理が進む。
【０１０２】
〔ステップＳ１１３〕制御部１１は、運用領域２１ａ上のスパースファイルＳｆ２を解除してスパースファイルＳｆ２内の格納先情報および空き領域の属性を削除する。
〔ステップＳ１１４〕制御部１１は、一時領域２１ｂ上の分割データ群を運用領域２１ａに移動し一時領域２１ｂ上の分割データ群を削除する。
【０１０３】
〔ステップＳ１１５〕制御部１１は、運用領域２１ａ上で先頭データと分割データ群を結合して対象データを復元する。
＜データ転送時間＞
次にアーカイブ分割時におけるデータ転送時間の具体例について、図２２、図２３を用いて説明する。なお、対象データのデータサイズを１ＴＢ（１０２４ＧＢ）、運用領域２１ａの容量を３０ＴＢ、一時領域２１ｂの容量を６０ＴＢ、制御部１１の２次ストレージ２２への書き込み処理速度を６０ＭＢ／ｓｅｃ、読み出し処理速度を３０ＭＢ／ｓｅｃとする。
【０１０４】
また、データ滞留時間を２４時間、同時読み書き可能数を４とする。さらに、ホストサーバ３とストレージ装置１−１間のネットワーク処理速度を１Ｇｂ／ｓｅｃ、上位アプリケーション３ａのタイムアウト値を１８０秒とする。
【０１０５】
図２２はデータ転送の一例を示す図である。２次ストレージ２２がテープの場合のデータ転送状態を示している。分割サイズを５ＧＢと設定したとする（先頭データおよび分割データが５ＧＢデータサイズ）。また、分割データはテープの先頭から順番に格納されるので、同時読み書き可能数の値によらず１分割データずつ読み出される。
【０１０６】
ここで、ネットワーク処理速度の１Ｇｂ／ｓｅｃは、１Ｇｂ／ｓｅｃ×１０２４＝１０２４Ｍｂ／ｓｅｃであり、１秒間で（１０２４÷８）ＭＢのデータを転送できる。また、５ＧＢは、（５×１０２４）ＭＢである。したがって、先頭データの転送時間は、以下の式（１）から算出されて４０ｓｅｃとなる。
【０１０７】
５ＧＢ×１０２４÷（１Ｇｂ／ｓｅｃ×１０２４÷８）＝４０ｓｅｃ・・・（１）
分割データの１つ目が転送可能となるまでの時間、すなわち、２次ストレージ２２から１次ストレージ２１の移動に要する時間は、２次ストレージ２２の読み出し処理速度が３０ＭＢ／ｓｅｃなので、以下の式（２）から算出されて１７１ｓｅｃとなる。
【０１０８】
５ＧＢ×１０２４÷３０ＭＢ／ｓｅｃ＝１７１ｓｅｃ・・・（２）
式（１）、（２）から、１つ目の分割データが転送されるまでの上位アプリケーション３ａの待ち時間は、１３１ｓｅｃ（＝１７１−４０）となる。
【０１０９】
図２２において、時刻ｔ１はデータ転送開始時刻である。１次ストレージ２１の運用領域２１ａに格納されている先頭データが時刻ｔ１から転送され始め、先頭データの転送が終了するのに４０ｓｅｃかかる。
【０１１０】
また、時刻ｔ１から、分割データ＃１が２次ストレージ２２から１次ストレージ２１に移動し始める。１つの分割データが２次ストレージ２２から１次ストレージ２１に移動するのに１７１ｓｅｃ要し、１次ストレージ２１に移動してから上位アプリケーション３ａに転送するのに４０ｓｅｃ要する。したがって、上位アプリケーション３ａが先頭データを受信してから分割データ＃１を受信するまでの待ち時間は１３１ｓｅｃ（＜１８０ｓｅｃ）となる。同様に、上位アプリケーション３ａが分割データ＃１を受信してから次の分割データ＃２を受信するまでの待ち時間は１３１ｓｅｃとなる。以降、１３１ｓｅｃ毎に上位アプリケーション３ａに継続的に分割データが転送されることになる。
【０１１１】
ここで、対象データのデータサイズは１ＴＢであるから、分割データ＃１、・・・、＃ｎの個数は、以下の式（３）から算出されて２０３．８個となり、全データ転送時間は以下の式（４）から算出されて３４８９０ｓｅｃとなる。
【０１１２】
１ＴＢ×１０２４÷５ＧＢ−１＝２０３．８個・・・（３）
４０ｓｅｃ＋１７１ｓｅｃ×２０３．８≒３４８９０ｓｅｃ・・・（４）
一方、本発明の機能を持たない通常システムでは、２次ストレージから１次ストレージにデータが移動するまでの時間は、以下の式（５）から算出されて３４９５３ｓｅｃとなる。
【０１１３】
１ＴＢ×１０２４×１０２４÷３０ＭＢ／ｓｅｃ＝３４９５３ｓｅｃ・・・（５）
また、１ＴＢ分のデータが上位アプリケーション３ａに転送される時間は、以下の式（６）から算出されて８１９２ｓｅｃとなる。
【０１１４】
１ＴＢ×１０２４÷（１Ｇｂ／ｓｅｃ÷８）＝８１９２ｓｅｃ・・・（６）
よって、全データ転送時間は４３１４５ｓｅｃ（＝３４９５３＋８１９２）になる。本発明と通常システムとを対比させると、本発明ではタイムアウトせずに２．３時間（＝８２５５ｓｅｃ＝４３１４５ｓｅｃ−３４８８９．８ｓｅｃ）データ転送時間を短くすることができる。
【０１１５】
ここで、分割サイズの算出について説明する。対象データをホストサーバ３へ転送する際の回線速度をＶｂｐｓとし、この回線を使ってデータ容量Ａバイトを転送する場合、転送に要する時間Ｔ１（第１の時間）は、式（１）に示すように、Ｔ１＝８Ａ／Ｖ（ｓｅｃ）で算出される。
【０１１６】
また、２次ストレージ２２の読み出し処理速度をＲとした場合に、２次ストレージ２２からデータ容量Ａを読み出す時間Ｔ２（第２の時間：２次ストレージ２２から１次ストレージ２１の移動に要する時間）は、式（２）に示すように、Ｔ２＝Ａ／Ｒである。
【０１１７】
したがって、時間Ｔ２と時間Ｔ１との差分（Ｔ２−Ｔ１）が、ホストサーバ３のタイムアウト時間の範囲内にあれば、タイムアウトせずにデータ転送を行うことができる。差分（Ｔ２−Ｔ１）を算出するパラメータのうち、データ容量Ａのみが可変値であり、その他のパラメータは固定値である。
【０１１８】
したがって、差分（Ｔ２−Ｔ１）の値が、ホストサーバ３のタイムアウト時間の範囲内に収まるようにデータ容量Ａが決定される。すなわち、データ容量Ａのサイズで対象データを分割して上記のような制御を行うことでタイムアウトを抑止できる。
【０１１９】
図２３はデータ転送の一例を示す図である。２次ストレージ２２がディスク（例えば、ＨＤＤ）の場合のデータ転送状態を示している。分割サイズを５ＧＢと設定したとする（先頭データおよび分割データが５ＧＢデータサイズ）。また、同時読み書き可能数＝４としたので、分割データは４分割データずつ読み出される。
【０１２０】
先頭データの転送時間は、式（１）から４０ｓｅｃである。また、分割データが２次ストレージ２２から１次ストレージ２１に移動する時間は、４つの分割データは同時に移動するが、式（２）と同じで１７１ｓｅｃである。よって、１つ目の分割データが転送されるまでの上位アプリケーション３ａの待ち時間は、１３１ｓｅｃ（＝１７１−４０）となる。
【０１２１】
図２３において、時刻ｔ１はデータ転送開始時刻である。１次ストレージ２１の運用領域２１ａに格納されている先頭データが時刻ｔ１から転送され始め、先頭データの転送が終了するのに４０ｓｅｃかかる。
【０１２２】
また、時刻ｔ１から、分割データ＃１、・・・、＃４が２次ストレージ２２から１次ストレージ２１に移動し始める。４つの分割データが２次ストレージ２２から１次ストレージ２１に同時に移動するのに１７１ｓｅｃ要し、１次ストレージ２１に移動してから上位アプリケーション３ａに１つの分割データが転送するのに４０ｓｅｃ要する。したがって、上位アプリケーション３ａが先頭データを受信してから分割データ＃１を受信するまでの待ち時間は１３１ｓｅｃとなる。
【０１２３】
また、２つ目から４つ目の分割データ＃２、・・・、＃４は、一時領域２１ｂに読み出しが完了していることから、１つ目の分割データの上位アプリケーション３ａへの転送が終了次第、上位アプリケーション３ａに順次転送されることになる。以降、分割データ＃５、・・・、＃８に対しても上位アプリケーション３ａに継続的にデータが転送されることになる。
【０１２４】
ここで、分割データ＃１、・・・、＃ｎの個数は、式（３）から算出されて２０３．８個であり２０４個とすると、２０４個のうちに４つの分割データが５１群含まれることになる。
【０１２５】
また、分割データの２次ストレージ２２から１次ストレージ２１への移動が１７１ｓｅｃ、４つの分割データの上位アプリケーション３ａへの転送時間が１６０ｓｅｃ（＝４０ｓｅｃ×４）である。したがって、全データ転送時間は以下の式（７）から算出されて８８８１ｓｅｃ（約２．５時間）となる。
【０１２６】
１７１ｓｅｃ×５１＋４０ｓｅｃ×4＝８８８１ｓｅｃ・・・（７）
一方、本発明の機能を持たない通常システムの全データ転送時間は上述のように４３１４５ｓｅｃになる。本発明と通常システムとを対比させると、本発明ではタイムアウトせずに約９．５時間（＝３４３０４ｓｅｃ＝４３１４５ｓｅｃ−８８４１ｓｅｃ）データ転送時間を短くすることができる。
【０１２７】
上記で説明した本発明のストレージ装置１、１−１の処理機能は、コンピュータによって実現することができる。この場合、ストレージ装置１、１−１が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【０１２８】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶部、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶部には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等がある。光ディスクには、ＣＤ−Ｒ／ＲＷ等がある。光磁気記録媒体には、ＭＯ（Magneto Optical disk）等がある。
【０１２９】
プログラムを流通させる場合、例えば、そのプログラムが記録されたＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶部に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１３０】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶部に格納する。そして、コンピュータは、自己の記憶部からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【０１３１】
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤ等の電子回路で実現することもできる。
【０１３２】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０１３３】
（付記１）  第１の記憶装置と第２の記憶装置を含むストレージ部と、
データ書き込み要求時に前記第１の記憶装置に対象データを書き込み、前記第１の記憶装置から前記第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、データ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出してデータ要求元へ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記データ要求元へ転送する制御部と、
を有するストレージ装置。
【０１３４】
（付記２）  前記制御部は、前記第２のデータの転送完了後、前記第１のデータに前記第２のデータを結合して前記第１の記憶装置上で前記対象データを復元する付記１記載のストレージ装置。
【０１３５】
（付記３）  前記制御部は、
前記対象データを所定サイズに分割し、分割したうちの先頭データを前記第１のデータ、前記先頭データを除く分割データを前記第２のデータとした場合、
複数の前記分割データを含む分割データ群を前記第２の記憶装置に保存し、
データ読み出し要求時、前記先頭データを前記第１の記憶装置から読み出して前記データ要求元へ転送すると共に前記分割データ群のうちの第１の分割データを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記先頭データの転送後に前記第１の記憶装置に移動した前記第１の分割データを前記データ要求元へ転送し、
前記第１の分割データを前記データ要求元へ転送すると共に前記分割データ群のうちの第２の分割データを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１の分割データの転送後に前記第１の記憶装置に移動した前記第２の分割データを前記データ要求元へ転送する、
付記１記載のストレージ装置。
【０１３６】
（付記４）  前記制御部は、前記対象データをファイル単位で管理する場合、前記先頭データ、前記分割データが格納されている前記第２の記憶装置の格納先アドレス、および前記分割データが前記第１の記憶装置から前記第２の記憶装置へ移動した後の前記第１の記憶装置の空き領域の属性を含むファイル情報を生成して前記第１の記憶装置に格納する付記３記載のストレージ装置。
【０１３７】
（付記５）  前記制御部は、前記分割データ群の転送完了後、前記ファイル情報に示される前記先頭データに前記分割データ群を結合して前記第１の記憶装置上で前記対象データを復元する付記４記載のストレージ装置。
【０１３８】
（付記６）  前記制御部は、前記ファイル情報に示される前記格納先アドレスにもとづいて、前記第１の分割データの読み出しおよび前記第１の分割データに続く前記第２の分割データを読み出して、前記第２の記憶装置から前記第１の記憶装置へ前記分割データを移動する付記４記載のストレージ装置。
【０１３９】
（付記７）  前記制御部は、前記ファイル情報に示される前記空き領域にもとづいて、前記分割データを前記空き領域に格納して、前記第２の記憶装置から前記第１の記憶装置へ前記分割データを移動する付記４記載のストレージ装置。
【０１４０】
（付記８）  前記制御部は、前記対象データを前記データ要求元へ転送する際の回線速度でデータ容量を転送する場合に要する第１の時間と、前記第２の記憶装置から前記第１の記憶装置への移動に要する第２の時間との差分が、前記データ要求元の読み出し規定時間の範囲内に収まるように定められる前記データ容量を前記所定サイズに設定して前記対象データを分割する付記３記載のストレージ装置。
【０１４１】
（付記９）  前記制御部は、
前記対象データの先頭データを前記第１のデータ、前記先頭データを除く残りデータを前記第２のデータとした場合、
前記残りデータを前記第２の記憶装置に保存し、
データ読み出し要求時、前記先頭データを前記第１の記憶装置から読み出して前記データ要求元へ転送すると共に、前記残りデータを所定サイズで分割して分割データを生成して複数の前記分割データを含む分割データ群を前記第２の記憶装置から前記第１の記憶装置へ移動し、
前記先頭データの転送後に前記第１の記憶装置に移動した前記分割データ群のうちの第１の分割データを前記データ要求元へ転送し、前記第１の分割データの転送後に前記分割データ群のうちの第２の分割データを前記データ要求元へ転送する、
付記１記載のストレージ装置。
【０１４２】
（付記１０）  前記制御部は、前記先頭データの前記データ要求元への転送に要する時間が、前記残りデータを前記所定サイズで分割して前記第２の記憶装置から前記第１の記憶装置へ移動する際に要する時間に等しいまたは大きくなるように、前記先頭データのデータ容量を設定する付記９記載のストレージ装置。
【０１４３】
（付記１１）  ホストサーバと、
第１の記憶装置と第２の記憶装置を含むストレージ部と、前記ホストサーバからのデータ書き込み要求時に前記第１の記憶装置に対象データを書き込み、前記第１の記憶装置から前記第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、前記ホストサーバからのデータ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出して前記ホストサーバへ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記ホストサーバへ転送する制御部とを備えるストレージ装置と、
を有するストレージシステム。
【０１４４】
（付記１２）  コンピュータに、
データ書き込み要求時に第１の記憶装置に対象データを書き込み、
前記第１の記憶装置から第２の記憶装置へのデータ移動時に、前記第１の記憶装置に前記対象データのうちの第１のデータを格納し、前記第２の記憶装置に前記対象データから前記第１のデータを除いた第２のデータを少なくとも格納し、
データ読み出し要求時に、前記第１のデータを前記第１の記憶装置から読み出してデータ要求元へ転送すると共に前記第２のデータを前記第２の記憶装置から前記第１の記憶装置へ移動し、前記第１のデータの転送後に前記第１の記憶装置に移動した前記第２のデータを前記データ要求元へ転送する、
処理を実行させるプログラム。
【符号の説明】
【０１４５】
１  ストレージ装置
１ａ  制御部
１ｂ  ストレージ部
ｍ１  １次ストレージ
ｍ２  ２次ストレージ
３  ホストサーバ
ｄ０  対象データ
ｄ１  先頭データ
＃１、・・・、＃ｎ  分割データ
【図１】
2020177274.tif 000003
【図２】
2020177274.tif 000004
【図３】
2020177274.tif 000005
【図４】
2020177274.tif 000006
【図５】
2020177274.tif 000007
【図６】
2020177274.tif 000008
【図７】
2020177274.tif 000009
【図８】
2020177274.tif 000010
【図９】
2020177274.tif 000011
【図１０】
2020177274.tif 000012
【図１１】
2020177274.tif 000013
【図１２】
2020177274.tif 000014
【図１３】
2020177274.tif 000015
【図１４】
2020177274.tif 000016
【図１５】
2020177274.tif 000017
【図１６】
2020177274.tif 000018
【図１７】
2020177274.tif 000019
【図１８】
2020177274.tif 000020
【図１９】
2020177274.tif 000021
【図２０】
2020177274.tif 000022
【図２１】
2020177274.tif 000023
【図２２】
2020177274.tif 000024
【図２３】
2020177274.tif 000025