(57)【要約】【課題】本発明は、記憶装置上のデータを他の記憶装置へ転送するデータ転送装置およびデータ転送方法に関し、記憶装置の制御情報および所定の部分のみを読み出して転送して送信先の記憶装置に書き込み、記憶装置上のファイルを意識することなくアクセス時に必要な制御情報および所定の部分のみをコピーし、ヘッドシークなどの多発を抑止して多量データの高速転送を実現することを目的とする。【解決手段】記憶装置上のデータのアクセス時に必要な制御情報および所定の部分のみを読み出す手段と、読み出した制御情報および所定の部分を転送して相手の記憶装置に書き込ませてコピーさせる手段とを備える。【選択図】　図１
2004094755.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置上のデータを他の記憶装置へ転送するデータ転送装置において、
記憶装置上のデータのアクセス時に必要な制御情報および所定の部分のみを読み出す手段と、
前記読み出した制御情報および所定の部分を転送して相手の記憶装置に書き込ませてコピーさせる手段と
を備えたことを特徴とするデータ転送装置。
【請求項２】
記憶装置上に、前記データのアクセス時に必要な制御情報および所定の部分からなる組が複数あるときは、指定された１つまたは複数の組、あるいは全組についてそれぞれ前記読み出して転送して前記コピーさせることを特徴とする請求項１記載のデータ転送装置。
【請求項３】
他の記憶装置から読み出されて転送されたデータを自記憶装置上に書き込むデータ転送装置において
転送されたアクセス時に必要な制御情報および所定の部分を受信する手段と、前記受信した制御情報および所定の部分を自記憶装置の、送信元と同一場所にコピーする手段と
を備えたことを特徴とするデータ転送装置。
【請求項４】
前記受信したアクセス時に必要な制御情報および所定の部分を自ディスク装置に書き込むときに、送信元の記憶装置の場所と異なる、指定場所にコピーしてパーティションを任意に変更することを特徴とする請求項３記載のデータ転送装置。
【請求項５】
記憶装置上のデータを他の記憶装置へ転送するデータ転送方法において、
記憶装置上のデータのアクセス時に必要な制御情報および所定の部分のみを読み出すステップと、
前記読み出した制御情報および所定の部分を転送して相手の記憶装置の、送信元と同一場所に書き込ませてコピーさせるステップと
を有するデータ転送方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置上のデータを他の記憶装置へ転送するデータ転送装置およびデータ転送方法に関するものである。
【０００２】
【従来の技術】
従来、ＦＴＰ（Ｆｉｌｅ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）やＮＦＳ（Ｎｅｔｗｏｒｋ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）で代表される汎用通信プロトコルを用いて、送信元のディスク装置からファイルのデータを順次読み出し、ネットワークを介して送信先のディスク装置に転送して順次格納していた（例えば特許文献１参照）。
【０００３】
【特許文献１】
特開平４−１２７３３６号公報（第３頁、第１図）
【０００４】
【発明が解決しようとする課題】
しかしながら、送信元で、データを管理するファイルシステムと呼ばれるソフトウェアがハードディスク装置のメタ情報（制御情報）を参照しつつ該当するファイルのデータが格納されている当該ハードディスク装置上の該当位置（ブロック）にヘッドシークを繰り返しつつファイルのデータを順次読み出し、ネットワークを介して送信先に転送し、転送先では、逆に、ディスク装置上のメタ情報を書き込み（参照し）該当位置にデータを順次格納することを繰り返していたため、送信元でのディスク装置からデータの読み出し時および送信先でのディスク装置への書き込み時に、メタ情報を参照（アクセス）しつつファイルのデータを該当位置から読み出す（書き込む）ときにヘッドシークが多発し、多量のデータ（例えば〜数百Ｍバイト、数Ｇバイトのデータ）の高速転送ができないという問題があった。
【０００５】
本発明は、上述の問題を解決するため、ディスク装置のメタ情報（制御情報）および有意なブロックのみを読み出して転送して送信先のディスク装置に書き込み、ディスク装置上のファイルを意識することなくアクセス時に必要なメタ情報および有意ブロックのみをコピーし、ヘッドシークの多発を抑止して多量データの高速転送を実現することを目的としている。
【０００６】
【課題を解決するための手段】
図１を参照して課題を解決するための手段を説明する。
【０００７】
図１において、送信元サーバ１は、各種処理を行うものであって、ここでは、ディスク装置２からアクセスに必要なメタ情報（制御情報）および有意なブロックを読み出しネットワーク５を介して送信先サーバ３に転送し、送信先サーバ３のディスク装置４に格納させてコピーしたりなどするものである。
【０００８】
ディスク装置２，４は、データを格納するものである。
ネットワーク５は、送信元サーバ１と送信先サーバ３とを接続してデータの送受信を行うためのネットワークである。
【０００９】
次に、動作を説明する。
送信元サーバ１がディスク装置２上のデータのアクセス時に必要なメタ情報（制御情報）２１および有意なブロックのみを読み出し、読み出したメタ情報２１および有意なブロックをネットワーク５を介して送信先サーバ３に転送し、当該送信先サーバ３のディスク装置４に書き込ませてコピーさせるようにしている。
【００１０】
この際、ディスク装置２上に、データのアクセス時に必要なメタ情報（制御情報）２１および有意なブロックからなる組が複数あるときは、指定された１つまたは複数の組、あるいは全組についてそれぞれ読み出して送信先サーバ３に転送してディスク装置４にコピーさせるようにしている。
【００１１】
また、送信先サーバ３では、転送されたアクセス時に必要なメタ情報（制御情報）２１および有意なブロックを受信し、受信したメタ情報２１およびブロックを自ディスク装置４の、送信元と同一場所にコピーするようにしている。
【００１２】
この際、送信先サーバ３は、データのアクセス時に必要なメタ情報２１および有意なブロックからなる組あるいは複数組について自ディスク装置４の、送信元と同一場所にコピーするようにしている。
【００１３】
また、送信先サーバ３は、受信したアクセス時に必要なメタ情報２１および有意なブロックを自ディスク装置４に書き込むときに、送信元サーバ１のディスク装置２の場所と異なる、指定場所にコピーしてパーティションを任意に変更するようにしている。
【００１４】
従って、ディスク装置２のメタ情報（制御情報）２１および有意なブロックのみを読み出して転送して送信先のディスク装置４に書き込み、ディスク装置２、４上のファイルを意識することなくアクセス時に必要なメタ情報２１および有意ブロックのみをコピーすることにより、ディスク装置２，４へのアクセス時のヘッドシークの多発を抑止して多量データの高速転送を実現することが可能となる。
【００１５】
【発明の実施の形態】
次に、図１から図５を用いて本発明の実施の形態および動作を順次詳細に説明する。
【００１６】
図１は、本発明のシステム構成図を示す。
図１において、送信元サーバ１は、各種処理を行うものであって、ここでは、ディスク装置２からアクセスに必要な制御情報（メタ情報）２１および有意なブロックを読み出したり、ネットワーク５を介して送信先サーバ３に転送して送信先サーバ３のディスク装置４に格納させてコピーしたりなどするものであって、ＣＰＵ１１、メモリ１２、ＮＩＣ１３などから構成されるものである。
【００１７】
ＣＰＵ１１は、プログラムに従い各種処理を実行するものであって、ここでは、ディスク装置２からアクセスに必要なメタ情報（制御情報）２１および有意なブロックを読み出したりなどするものである。
【００１８】
メモリ１２は、プログラムを格納したり、データを一時的に格納したりなどするものである。
【００１９】
ＮＩＣ１３は、Ｎｅｔｗｏｒｋ　Ｉ／Ｆカードであって、ネットワーク５を介して送信先サーバ３のＮＩＣ３３と通信して所定のプロトコル（例えばｉＳＣＳＩプロトコルなど）を用いてデータの高速送受信を行うものである。
【００２０】
ディスク装置２は、円盤状のディスクを回転させてデータを書き込んだり、読み出したりなどするものであって、ここでは、制御情報（メタ情報）２１および記憶領域２２を設けたものである。
【００２１】
制御情報（メタ情報）２１は、ディスク上の記憶領域２２にデータをブロック単位に書き込んだり、読み出したりするために必要な情報を記憶するものである（図２、図３を用いて後述する）。
【００２２】
記憶領域２２は、データをブロック単位に書き込んだり、読み出したりする記憶領域である。
【００２３】
送信先サーバ３は、ここでは、送信元サーバ１からネットワーク５を介して転送されてきた制御情報２１および有意なブロックを受信し、ディスク装置４に格納したりなどするものであって、ＣＰＵ３１，メモリ３２、ＮＩＣ３３などから構成されるものである。
【００２４】
ＣＰＵ３１は、プログラムに従い各種処理を実行するものであって、ここでは、受信したアクセスに必要な制御情報（メタ情報）２１および有意なブロックをディスク装置４の制御情報４１および記憶領域４２に書き込んだりなどするものである。
【００２５】
メモリ３２は、プログラムを格納したり、データを一時的に格納したりなどするものである。
【００２６】
ＮＩＣ３３は、Ｎｅｔｗｏｒｋ　Ｉ／Ｆカードであって、ネットワーク５を介して送信元サーバ１のＮＩＣ１３と通信して所定のプロトコル（例えばｉＳＣＳＩプロトコルなど）を用いてデータの高速送受信を行うものである。
【００２７】
ディスク装置４は、円盤状のディスクを回転させてデータを書き込んだり、読み出したりなどするものであって、ここでは、制御情報（メタ情報）４１および記憶領域４２を設けたものである。
【００２８】
制御情報（メタ情報）４１は、ディスク上の記憶領域４２にデータをブロック単位に書き込んだり、読み出したりするために必要な情報を記憶するものである（図２、図３を用いて後述する）。
【００２９】
記憶領域４２は、データをブロック単位に書き込んだり、読み出したりする記憶領域である。
【００３０】
ネットワーク５は、送信元サーバ１と送信先サーバ３とを接続して高速にデータの送受信を行うものである。
【００３１】
次に、図１の構成の動作を詳細に説明する。
（１）　オペレータがデータ送信指示を行う。これは、オペレータが例えば図１の送信元サーバ１のディスク装置２上の全データを、ネットワーク５を介して送信先サーバ３のディスク装置４へ転送してコピーする旨の指示を行う。
【００３２】
（２）　送信元サーバ１は、送信指示されたディスク装置２の制御情報２１を読み込む。
【００３３】
（３）　（２）で読み込んだ制御情報２１を解析し、当該ディスク装置２に記録されているユーザデータ部（記憶領域）２２の有意なブロックを特定する（図３の（ａ）参照）。
【００３４】
（４）　送信元サーバ１は、制御情報２１およびユーザデータ部（記憶領域）２２から有意なブロックを読み出し、ネットワークを介して送信先サーバ３に転送し、同位置に書き込むように要求する。
【００３５】
（５）　送信先サーバ３は、制御情報２１および有意なブロックの全てを、ディスク装置４に書き込むことを繰り返し、全てが完了するまで繰り返す。全て完了したときに、一連のデータ転送（データ交換）を終了する。
【００３６】
以上のように、送信元サーバ１のディスク装置２のアクセスに必要な制御情報２１および有意なブロックのみを読み出してネットワーク５を介して送信先サーバ３に送信し、送信先サーバ３はディスク装置４の同位置に制御情報および有意なブロックのみを書き込むことにより、ディスク装置２，４のファイルを意識することなく、当該ディスク装置２，４へのアクセス時のヘッドシークの多発を抑止して多量データの高速転送を実現することが可能となる。
【００３７】
次に、図２から図５を用いて、図１の構成の具体例を詳細に説明する。
図２は、本発明のディスク装置の説明図を示す。ここで、ＯＳ（オペレーティングシステム）としてＬｉｎｕｘのファイルシステム（ＥＸＴ２）を例に以下説明する。
【００３８】
図２において、ブロックグループ２３は、ブロックをアクセスするために必要な情報を記録するメタ情報２１およびユーザデータ部２２（図１の記憶領域２２に対応）から構成されるものである。ブロックグループ２３のサイズは、ファイルシステムのブロックサイズによって変わる。ディスクフォーマットを行う場合、４種類のブロックサイズを選択でき、そのときのブロックグループ２３のサイズは下記のようになります。図示の下記のいずれか１つをフォーマット時に選択すると、選択されたブロックサイズ、ブロックグループのサイズで指定された（選択された）全体のディスク容量を当該ブロックサイズ、ブロックグループのサイズでフォーマットされます。
【００３９】
ブロックサイズ　　　　ブロックグループのサイズ
５１２バイト　　　　１６ＭＢ
１０２４バイト　　　　３２ＭＢ
２０４８バイト　　　　６４ＭＢ
４０９６バイト　　　　１２８ＭＢ
メタ情報２１は、ユーザデータ部２２中のブロックをアクセスするための情報を記録するものであって、ここでは、図示の下記の情報を記録するものである。
【００４０】
・Ｓｕｐｅｒ　Ｂｌｏｃｋ：ファイルシステムの管理情報（例えば、ファイルシステム（ｅｘｔ２）によるフォーマット形式である、Ｂｌｏｃｋ　Ｇｒｏｕｐ数やＢｌｏｃｋサイズなど）
・Ｂｌｏｃｋ　Ｇｒｏｕｐ　Ｄｅｓｃｒｉｐｔｏｒ：ブロックグループの管理情報（例えば、ブロックグループの番号、開始アドレスのオフセット、空きブロック数など）
・Ｄａｔａ　Ｂｌｏｃｋ　Ｂｉｔ　Ｍａｐ：ブロックグループ内のデータブロックの使用情報（例えば、使用領域がビットマップでＯＮ（”１”）とする使用情報（図３参照））
・Ｉｎｏｄｅ　Ｂｉｔ　Ｍａｐ：ｉｎｏｄｅの使用情報（ｉｎｏｄｅ　ｔａｂｌｅの空き（使用）情報
・Ｉｎｏｄｅ　Ｔａｂｌｅ：ファイルとディレクトリの情報（ファイル名、ディレクトリ名、ファイルのデータブロックアドレスなど）
ユーザデータ部２２は、ブロック毎に区切ってデータを記録する部分である。
【００４１】
全体のディスク容量は、ブロックグループ２３を複数設けて当該設けた数に対応する容量である。例えば全体のディスク容量が１０ＧＢの場合に、ブロックサイズ４０９６（ブロックグループのサイズ１２８ＭＢ）が選択されると、１０ＧＢ÷１２８ＭＢ＝７８個のブロックグループ２３がフォーマットされます。
【００４２】
図３は、本発明の説明図を示す。
図３の（ａ）は、ディスク装置（コピー元）のブロックの有意（データが書き込まれている）あるいは有意でない（データが書き込まれていない）の状態を示す。ここで、斜線のブロックが有意のデータが書き込まれている部分（ブロック）である。
【００４３】
図３の（ｂ）は、ディスク装置（コピー先）のブロックの状態（有意、有意でない）を示す。ここでは、図３の（ａ）のディスク装置（コピー元）のブロックグループ毎に有意なブロックのみを転送してコピーしたものである。これにより、ファイルを意識することなく、ディスク装置（コピー元）内のブロックグループの有意なブロックのみを読み出し、ディスク装置（コピー先）の同一位置のブロックに書き込むことで、高速データ転送できる。
【００４４】
図４は、本発明のＲＡＩＤ（ストライプ）の説明図を示す。
図４において、ファイル６は、データを格納したファイルであって、ここでは、チャンクサイズでブロックに分割した様子を示す。
【００４５】
チャンクサイズは、ＰＣ（パソコン）上で動作するソフトウェアによるＲＡＩＤシステム（ストライプ）がデータを分割し、ここでは、２つのディスク装置（ＤＩＳＫ＃０とＤＩＳＫ＃１）に交互に図示のように格納するブロックのサイズである。
【００４６】
ＰＣ７は、パソコン上で動作するソフトウェアによるＲＡＩＤシステムである。
【００４７】
ディスク装置（仮想）８は、ＰＣ７上で動作するソフトウェアＲＡＩＤがファイルをチャンクサイズに分割して格納する仮想的なディスク装置である。
【００４８】
ＤＩＳＫ＃０，ＤＩＳＫ＃１は、実際のディスク装置であって、ここでは、ＰＣ７上で動作するソフトウェアによるＲＡＩＤシステムが、ファイル６をチャンクサイズで分割し、交互にＤＩＳＫ＃０とＤＩＳＫ＃１に格納している。
【００４９】
以上のようにＤＩＳＫ＃０とＤＩＳＫ＃１に格納されているブロック（サイズはチャンクサイズ）を読み出し、送信先の同様なＤＩＳＫ＃０とＤＩＳＫ＃１の同一位置に書き込みコピーすることにより、送信先のＰＣ７上で動作するソフトウェアによりＲＡＩＤシステムはコピーされたＤＩＳＫ＃０とＤＩＳＫ＃１をアクセスしてファイル６の任意部分のデータを読み出すことが可能となる。
【００５０】
図５は、本発明の説明図（パーティション変更）を示す。
図５において、送信元のディスク装置２は、制御情報２１と、２つのパーティションＡ，パーティションＢとから構成されている。パーティションＡ中の有意なブロックのみを読み出し、送信先のディスク装置４のパーティションＢの領域にコピーする例を示す。例えば送信元のＣドライブ（パーティションＡ）から送信先のＤドライブ（パーティションＢ）にデータをコピーすることが可能となる。この場合には、送信元サーバ１から送信先サーバ３に、書き込み指示を行う際に、パーティションＢのオフセット（例えば＋１０００）を加算したアドレス（ブロックアドレス）から書き込むように指示してコピーさせる。
【００５１】
以上により、送信元サーバ１はディスク装置２の制御情報２１とパーティションＡから読み出した有意なブロックのみを転送および書き込むパーティションのオフセットを指示することにより、送信先サーバ１のディスク装置４の指示されたオフセットの位置例えばパーティションＢにコピーすることが可能となる。
【００５２】
尚、パーティションは、図示外のＯＳのファイルシステムが管理し、ディスク装置の全サイズを例えば８ＧＢ，８ＧＢというように分割してそれぞれにパーティションＡ（ドライブＣ），パーティションＢ（ドライブＤ）を割り当てて管理している。本実施例では、送信元のディスク装置の当該パーティションＡとして割り当てられた領域（１つあるいは複数のブロックグループから構成される図２の全体のディスク容量の領域）内の有意なブロックについて、送信先のディスク装置の異なる場所（パーティションＢの場所）にコピーする。
【００５３】
また、パーティションが複数あるときは、１つあるいは指定した複数あるいは全部の当該各パーティションに含まれるメタ情報および有意なブロックの組をそれぞれ読み出し、送信先のディスク装置の同一場所あるいは指定した任意のパーティションの場所にコピーしてデータ転送することが可能となる。コピーは、コピー先の容量がコピー元と同一あるいは大きいければよい（大きい場合は、コピーされた領域のみが使用され、残りの部分は使用されないこととなる）。
【００５４】
（付記１）
記憶装置上のデータを他の記憶装置へ転送するデータ転送装置において、
記憶装置上のデータのアクセス時に必要な制御情報および所定の部分のみを読み出す手段と、
前記読み出した制御情報および所定の部分を転送して相手の記憶装置に書き込ませてコピーさせる手段と
を備えたことを特徴とするデータ転送装置。
【００５５】
（付記２）
記憶装置上に、前記データのアクセス時に必要な制御情報および所定の部分からなる組が複数あるときは、指定された１つまたは複数の組、あるいは全組についてそれぞれ前記読み出して転送して前記コピーさせることを特徴とする付記１記載のデータ転送装置。
【００５６】
（付記３）
他の記憶装置から読み出されて転送されたデータを自記憶装置上に書き込むデータ転送装置において
転送されたアクセス時に必要な制御情報および所定の部分を受信する手段と、前記受信した制御情報および所定の部分を自記憶装置の、送信元と同一場所にコピーする手段と
を備えたことを特徴とするデータ転送装置。
【００５７】
（付記４）
前記データのアクセス時に必要な制御情報および所定の部分からなる組あるいは複数組について自記憶装置の、送信元と同一場所にコピーすることを特徴とする付記３記載のデータ転送装置。
【００５８】
（付記５）
前記受信したアクセス時に必要な制御情報および所定の部分を自記憶装置に書き込むときに、送信元の記憶装置の場所と異なる、指定場所にコピーしてパーティションを任意に変更することを特徴とする付記３記載のデータ転送装置。
【００５９】
（付記６）
記憶装置上のデータを他の記憶装置へ転送するデータ転送方法において、
記憶装置上のデータのアクセス時に必要な制御情報および所定の部分のみを読み出すステップと、
前記読み出した制御情報および所定の部分を転送して相手の記憶装置の、送信元と同一場所に書き込ませてコピーさせるステップと
を有するデータ転送方法。
【００６０】
（付記７）
記憶装置から読み出されて転送されたデータを自記憶装置上に書き込むデータ転送方法において
前記転送されたアクセス時に必要な制御情報および所定の部分を受信するステップと、
前記受信した所定の部分を自記憶装置の、送信元と同一場所にコピーするステップと
を有するデータ転送方法。
【００６１】
【発明の効果】
以上説明したように、本発明によれば、ディスク装置２の制御情報（メタ情報）２１および有意なブロックのみを読み出して転送して送信先のディスク装置４に書き込み、ディスク装置２、４上のファイルを意識することなくアクセス時に必要な制御情報２１および有意ブロックのみをコピーする構成を採用しているため、ディスク装置２，４へのアクセス時のヘッドシークの多発を抑止して多量データの高速転送を実現することが可能となる。
【図面の簡単な説明】
【図１】本発明のシステム構成図である。
【図２】本発明のディスク装置の説明図である。
【図３】本発明の説明図である。
【図４】本発明のＲＡＩＤ（ストライプ）である。
【図５】本発明の説明図（パーティション変更）である。
【符号の説明】
１：送信元サーバ
１１、３１：ＣＰＵ
１２、３２：メモリ
１３、３３：ＮＩＣ
２，４：ディスク装置
２１，４１：制御情報（メタ情報）
２２，４２：記憶領域
３：送信先サーバ
５：ネットワーク
６：ファイル
７：ＰＣ（パソコン）
８：ディスク装置（仮想）
【図１】
2004094755.tif 000003
【図２】
2004094755.tif 000004
【図３】
2004094755.tif 000005
【図４】
2004094755.tif 000006
【図５】
2004094755.tif 000007