(57)【要約】【課題】  低速ネットワークで接続された装置間におけるデータ移行において、移行先ファイルサーバの運搬を利用してデータ移行する場合、移行先ファイルサーバ運搬中であってもクライアントからのファイルアクセスを可能にする。【解決手段】  移行先ファイルサーバ運搬中におけるクライアントからのアクセスは、アクセスのあったファイルが移行先ファイルサーバにコピーされているか否かに関わらず、移行元ファイルサーバで処理する。ただし、クライアントは直接移行元ファイルサーバに対してアクセスするのではなく、データ移行装置を介して移行先ファイルサーバにアクセスする。クライアントからのアクセスを受けたデータ移行装置は、ユーザからのアクセス内容を、移行元ファイルサーバに対して代理で実行する。【選択図】図１
2013080334.tif 000002
【特許請求の範囲】
【請求項１】
移行元と移行先との間のファイル転送を制御する転送制御部を有するデータ移行装置と、
前記データ移行装置に接続される移行元ファイルサーバと、
前記データ移行装置に接続される移行先ファイルサーバと、
前記移行元サーバから前記移行先サーバにファイルを移動するためのテンポラリファイルサーバと、
を備えるデータ移行システムであって、
前記各ファイルサーバは、
第１のプロセッサ及び前記第１のプロセッサに接続される第１のメモリを含む第１のコントローラと、
前記第１のコントローラに接続される第１の記憶装置と、
前記第１のコントローラに接続され、外部装置と通信するための第１のインタフェースと、を有し、
前記転送制御部は、前記移行元ファイルサーバに格納されたファイルを選択し、
前記選択したファイルを前記テンポラリファイルサーバに転送し、
クライアントからのファイルアクセスに基づいて、前記移行元ファイルサーバに対してファイルアクセスし、
前記移行元ファイルサーバからの返信内容を前記クライアントに返信し、
前記移行元ファイルサーバから転送され、前記テンポラリファイルサーバに格納された前記ファイルを、前記移行先ファイルサーバに転送し、
前記移行元ファイルサーバに格納されたファイルを、前記移行先ファイルサーバに転送することを特徴とするデータ移行システム。
【請求項２】
請求項１に記載のデータ移行システムにおいて、
前記転送制御部は、
前記移行元ファイルサーバに格納されたファイルを選択する際に、前記格納されたファイルの第１の属性情報に基づいて、最終アクセス日時の最も古いファイルを選択することを特徴とするデータ移行システム。
【請求項３】
請求項２に記載のデータ移行システムにおいて、
前記第１の記属性情報は、前記格納されたファイルの最終アクセス日時、最終更新日時、作成日、作成ユーザ名、アクセスユーザ名、アクセスユーザ数、アクセス回数、及び更新回数の少なくともいずれかを含むことを特徴とするデータ移行システム。
【請求項４】
請求項３に記載のデータ移行システムにおいて、
前記転送制御部は、
前記クライアントからのファイルアクセスに基づいて、前記移行元ファイルサーバに対してファイルアクセスする際に、前記ファイルアクセス内容、又は前記移行元ファイルサーバからの返信内容から第１の更新情報を取得することを特徴とするデータ移行システム。
【請求項５】
請求項４に記載のデータ移行システムにおいて、
前記第１の記更新情報は、
前記移行元ファイルサーバに格納されたファイルが、前記テンポラリファイルサーバに転送された後に更新されたか否かを示す情報、及び更新量の少なくともいずれかを含むことを特徴とするデータ移行システム。
【請求項６】
請求項５に記載のデータ移行システムにおいて、
前記転送制御部は、
前記各更新情報が所定の閾値以上であるか否かを判定し、
前記各更新情報が所定の閾値以上である場合には、前記移行元ファイルサーバに格納されたファイルを、再度前記テンポラリファイルサーバに転送することを特徴とするデータ移行システム。
【請求項７】
請求項６に記載のデータ移行システムにおいて、
前記転送制御部は、
前記テンポラリファイルサーバに格納されたファイルを前記移行先ファイルサーバに少なくとも一部のファイルを転送することを特徴とするデータ移行システム。
【請求項８】
請求項６に記載のデータ移行システムにおいて、
前記転送制御部は、
前記各更新情報が所定の閾値以上であるか否かを判定し、
前記各更新情報が所定の閾値以上である場合には、前記移行元ファイルサーバに格納されたファイルを、前記データ移行装置と少なくとも１度切断された前記テンポラリファイルサーバ、又は前記テンポラリファイルサーバに格納されたファイルを転送した移行先ファイルサーバに転送し、
前記クライアントからのファイルアクセスに基づいて、前記テンポラリファイルサーバ、又は前記移行先ファイルサーバに対してファイルアクセスし、
前記テンポラリファイルサーバ、又は前記移行先ファイルサーバからの返信内容を前記クライアントに返信することを特徴とするデータ移行システム。
【請求項９】
前記各ファイルサーバの少なくとも一以上が、前記転送制御部を有することを特徴とする請求項１に記載のデータ移行システム。
【請求項１０】
移行元と移行先との間のファイル転送を制御する転送制御部を有するデータ移行装置と、
前記データ移行装置に接続される移行元ファイルサーバと、
前記データ移行装置に接続される移行先ファイルサーバと、
前記移行元サーバから前記移行先サーバにファイルを移動するためのテンポラリファイルサーバと、
を備えるデータ移行システムにおけるデータ移行方法であって、
前記各ファイルサーバは、
第１のプロセッサ及び前記第１のプロセッサに接続される第１のメモリを含む第１のコントローラと、
前記第１のコントローラに接続される第１の記憶装置と、
前記第１のコントローラに接続され、外部装置と通信するための第１のインタフェースと、を有し、
前記転送制御部が、前記移行元ファイルサーバに格納されたファイルを選択する第１のステップと、
前記選択したファイルを前記テンポラリファイルサーバに転送する第２のステップと、
クライアントからのファイルアクセスに基づいて、前記移行元ファイルサーバに対してファイルアクセスする第３のステップと、
前記移行元ファイルサーバからの返信内容を前記クライアントに返信する第４のステップと、
前記移行元ファイルサーバから転送され、前記テンポラリファイルサーバに格納された前記ファイルを、前記移行先ファイルサーバに転送する第５のステップと、
前記移行元ファイルサーバに格納されたファイルを、前記移行先ファイルサーバに転送する第６のステップと、
を含むことを特徴とするデータ移行方法。
【請求項１１】
請求項１０に記載のデータ移行方法において、
前記第１のステップは、
前記格納されたファイルの第１の属性情報に基づいて、最終アクセス日時の最も古いファイルを選択するステップを含むことを特徴とするデータ移行方法。
【請求項１２】
請求項１１に記載のデータ移行方法において、
前記第１の属性情報は、
前記格納されたファイルの最終アクセス日時、最終更新日時、作成日、作成ユーザ名、アクセスユーザ名、アクセスユーザ数、アクセス回数、及び更新回数の少なくともいずれかを含むことを特徴とするデータ移行方法。
【請求項１３】
請求項１２に記載のデータ移行方法において、
前記第３のステップは、
前記ファイルアクセス内容、又は前記移行元ファイルサーバからの返信内容から第１の更新情報を取得するステップを含むことを特徴とするデータ移行方法。
【請求項１４】
請求項１３に記載のデータ移行方法において、
前記第１の記更新情報は、
前記移行元ファイルサーバに格納されたファイルが、前記テンポラリファイルサーバに転送された後に更新されたか否かを示す情報、及び更新量の少なくともいずれかを含むことを特徴とするデータ移行方法。
【請求項１５】
請求項１４に記載のデータ移行方法において、
前記第２のステップは、
前記各更新情報が所定の閾値以上であるか否かを判定するステップと、
前記各更新情報が所定の閾値以上である場合には、前記移行元ファイルサーバに格納されたファイルを、再度前記テンポラリファイルサーバに転送するステップと、を含むことを特徴とするデータ移行方法。
【請求項１６】
請求項１５に記載のデータ移行方法において、
前記第５のステップは、
前記テンポラリファイルサーバに格納されたファイルを前記移行先ファイルサーバに少なくとも一部のファイルを転送するステップを含むことを特徴とするデータ移行方法。
【請求項１７】
請求項１５に記載のデータ移行方法において、
前記第６のステップは、
前記各更新情報が所定の閾値以上であるか否かを判定するステップと、
前記各更新情報が所定の閾値以上である場合には、前記移行元ファイルサーバに格納されたファイルを、前記データ移行装置と少なくとも１度切断された前記テンポラリファイルサーバ、又は前記テンポラリファイルサーバに格納されたファイルを転送した移行先ファイルサーバに転送するステップと、
前記クライアントからのファイルアクセスに基づいて、前記テンポラリファイルサーバ、又は前記移行先ファイルサーバに対してファイルアクセスするステップと、
前記テンポラリファイルサーバ、又は前記移行先ファイルサーバからの返信内容を前記クライアントに返信するステップと、
を含むことを特徴とするデータ移行方法。
【請求項１８】
前記ファイルサーバの少なくとも一つ以上が、前記転送制御部を有することを特徴とする請求項１０に記載のデータ移行方法。
【請求項１９】
移行元ファイルサーバと移行先ファイルサーバとに接続され、前記移行元ファイルサーバから前記移行先ファイルサーバにファイルを移動するためのテンポラリファイルサーバを用いた、前記移行元ファイルサーバと前記移行先ファイルサーバとの間のファイル転送を制御するデータ移行装置は、
前記移行元ファイルサーバから前記移行先ファイルサーバへのデータ移行期間中における、クライアントからの前記移行元ファイルサーバへのアクセスを受け付けて、前記移行元ファイルサーバに処理を実行させる手段、
前記アクセスの内容を、記録すると共に、前記移行元ファイルサーバに対して転送し、前記転送に対する返信内容を前記クライアントに転送する手段、
前記テンポラリファイルサーバを用いて前記移行元ファイルサーバから前記移行先ファイルサーバにファイルを移動させる手段、及び
前記移行先ファイルサーバへのファイル転送後に、前記記録した前記アクセスの内容に基づいて、前記移行元ファイルサーバのデータと、前記移行先ファイルサーバのデータとの差分を更新する手段を有することを特徴とするデータ移行装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ移行システム及びデータ移行方法に関し、特に、低速ネットワーク回線で接続された装置間のデータ移行に関する。
【背景技術】
【０００２】
近年のパーソナルコンピュータ利用の高度化、アプリケーションの大容量化によって、１台のファイルサーバが扱うファイルは増加し続けている。それに伴って、ファイル管理コストの増大、ファイル消滅の危険性の増大、及び記憶装置導入コストの増大などを招いている。
【０００３】
そのため、近年、各拠点や部門に設置されたファイルサーバ(以下「移行元ファイルサーバ」と記す)から、データセンターに設置されたファイルサーバ(以下「移行先ファイルサーバ」と記す)に対してデータ移行し、データセンターにおいてファイルを集中管理する、ストレージクラウドが普及しつつある。しかし、このようなストレージクラウドへのデータ移行では、移行期間中でもクライアントがファイルにアクセスできるようにする必要がある。
【０００４】
従来技術では、移行元ファイルサーバに保存されたファイルを、データ移行装置が、順に移行先ファイルサーバにファイルコピーしていた。このとき、移行期間中のクライアントからのファイルアクセスがあった場合は、コピー完了済か否かでアクセス先を移行元ファイルサーバ(未完了の場合)又は、移行先ファイルサーバ(完了済の場合)に切り替える。（例えば、特許文献１参照）。これにより、クライアントはデータ移行期間中でも全てのファイルに対してアクセスが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２５７０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ストレージクラウドへのデータ移行では、移行元ファイルサーバと移行先ファイルサーバが低速なネットワークで接続されているような構成において、ネットワーク帯域がボトルネックとなり、データ移行に膨大な時間が必要となる可能性があった。この問題を解決するためには、低速なネットワーク経由によるファイル転送を、移行先ファイルサーバの物理的な運搬によって回避する必要がある。しかし、特許文献１に記載の技術は、装置運搬中のファイルアクセスに対しては考慮されていないため、前述の構成において、移行先ファイルサーバをデータ移行装置から切り離して運搬した場合、運搬中はクライアントからのファイルアクセスが不可能になる可能性があった。
【０００７】
従って、本発明の目的は、移行先ファイルサーバの運搬中における、クライアントからのファイルアクセスを可能にするシステム及び方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明では、移行元サーバから移行先サーバにファイルを移動するためのテンポラリファイルサーバを用いてデータ移行を行い、移行元ファイルサーバから移行先ファイルサーバへのデータ移行期間中における、クライアントからのアクセスは、アクセスのあったファイルが移行先ファイルサーバに対してファイルがコピーされているか否かに関わらず、移行元ファイルサーバで処理する。ただし、クライアントは直接移行元ファイルサーバに対してアクセスするのではなく、データ移行装置を介して移行元ファイルサーバにアクセスする。クライアントからのアクセスを受けたデータ移行装置は、ユーザからのアクセス内容を、同装置内で記録すると共に、移行元ファイルサーバに対して転送し、その返信内容をクライアントに転送する。
【０００９】
移行先ファイルサーバへのファイルの運搬後に、前記データ移行装置内に記録した情報を利用して移行元ファイルサーバのデータと、移行先ファイルサーバのデータとの差分を更新することで、移行元ファイルサーバから移行先ファイルサーバへのデータ移行を完了させる。
【００１０】
これにより、移行先ファイルサーバを、データ移行装置から切断して運搬している間でも、クライアントは最新のファイルに対してアクセスすることができる。
【発明の効果】
【００１１】
本発明によれば、ファイルサーバの運搬を利用したデータ移行において、クライアントからのファイルアクセスが不可能な期間を削減することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例における装置運搬前（図１２で説明するステップＳ１０１に相当）のファイル移行システムの構成図である。
【図２】本発明の実施例における装置運搬後（図１２で説明するステップＳ１０２、Ｓ１０３、及びＳ１０４に相当）のファイル移行システムの構成図である。
【図３】本発明の実施例における移行元ファイルサーバ１０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【図４】本発明の実施例におけるテンポラリファイルサーバ２０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【図５】本発明の実施例におけるデータ移行装置３０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【図６】本発明の実施例における移行先ファイルサーバ４０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【図７】本発明の実施例におけるデータ移行プログラム３１２３の構成を示すブロック図である。
【図８】本発明の実施例におけるファイル管理テーブルＴ１００の一例を示す説明図である。
【図９】本発明の実施例におけるデータ移行管理テーブルＴ２００の一例を示す説明図である。
【図１０】本発明の実施例におけるファイルパステーブルＴ３００の一例を示す説明図である。
【図１１】本発明の実施例における更新ファイルリストＴ４００の一例を示す説明図である。
【図１２】本発明の実施例における全体処理Ｓ１００を説明するフローチャートである。
【図１３Ａ】本発明の実施例におけるファイルコピー制御処理Ｓ２００を説明するフローチャートである。
【図１３Ｂ】図１３Ａの続きである。
【図１４】本発明の実施例におけるデータコピー時（図１２で説明するステップステップＳ１０１、Ｓ１０２、及びＳ１０３に相当）のクライアントアクセス制御処理Ｓ３００を説明するフローチャートである。
【図１５】本発明の実施例におけるファイル同期制御処理Ｓ４００を説明するフローチャートである。
【図１６Ａ】本発明の実施例における差分更新制御処理Ｓ５００を説明するフローチャートである。
【図１６Ｂ】図１６Ａの続きである。
【図１７Ａ】本発明の実施例における更新差分反映時（図１２で説明するステップＳ１０４に相当）のクライアントアクセス制御処理Ｓ６００を説明するフローチャートである。
【図１７Ｂ】図１７Ａの続きである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を用いて説明する。
【００１４】
図１は、本発明の実施例における装置運搬前（図１２で説明するステップＳ１０１に相当）のファイル移行システムの構成図である。
【００１５】
図１では、クライアント５００と、移行元ファイルサーバ１０００と、テンポラリファイルサーバ２０００が、高速ネットワークＡ１００を介してデータ移行装置３０００に接続され、移行元と移行先との間のファイル転送を制御するデータ移行装置３０００が、低速ネットワーク２００を介して移行先ファイルサーバ４０００に接続されたデータ移行システムの構成を表わす。テンポラリファイルサーバ２０００は、移行元ファイルサーバ１０００から移行先ファイルサーバ４０００にファイルを移動するための装置である。テンポラリファイルサーバ２０００は、ファイルシステムを備えたハードディスク単体でもよい。
【００１６】
移行元ファイルサーバ１０００の詳細については、図３を用いて後述する。テンポラリファイルサーバ２０００の詳細については、図４を用いて後述する。データ移行装置３０００の詳細については、図５を用いて後述する。移行先ファイルサーバ４０００の詳細については、図６を用いて後述する。
【００１７】
図２は、本発明の実施例における装置運搬後（図１２で説明するステップＳ１０２、Ｓ１０３、及びＳ１０４に相当）のファイル移行システムの構成図である。
【００１８】
図２では、クライアント５００と、移行元ファイルサーバ１０００が高速ネットワークＡ１００を介してデータ移行装置３０００に接続され、移行先ファイルサーバ４０００が低速ネットワーク２００を介してデータ移行装置３０００に接続される点は、図１と同じであるが、図１では高速ネットワークＡ１００に接続されていたテンポラリファイルサーバ２０００が、移行元ファイルサーバ１０００から移動して（切り離されて）、図２では、高速ネットワークＢ１００を介して移行先ファイルサーバ４０００に接続されている点が異なる。従って、図１と図２のテンポラリファイルサーバ２０００は同じものである。
【００１９】
なお、以後、高速ネットワーク１００及び低速ネットワーク２００を区別しない場合には、ネットワークと記載する。各ネットワークは、上記装置間のファイル転送が可能であればよく、例えば、ＷＡＮ、ＬＡＮ、又はＳＡＮ等どのようなネットワークであってもよい。
【００２０】
図３は、本発明の実施例における移行元ファイルサーバ１０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【００２１】
移行元ファイルサーバ１０００は、コントローラ１１００及びディスクドライブ１２００を備え、各構成は内部的な通信路によって接続される。ディスクドライブ１２００は、各種ファイルを格納する。例えば、ファイルシステム１２１０、及び移行元ファイルサーバ１０００自身が使用する、プログラム又はファイルを格納する。なお、移行元ファイルサーバ１０００は、ディスクドライブ１２００以外の記憶装置を備えてもよい。
【００２２】
コントローラ１１００は、移行元ファイルサーバ１０００を制御し、さらに、ファイルサーバ間のファイル転送を制御する。コントローラ１１００は、ネットワークインタフェース１１１０、メモリ１１２０、及びＣＰＵ１１３０を備え、各構成は内部的な通信路によって互いに接続される。ＣＰＵ１１３０は、メモリ１１２０に格納されたプログラムを読み出し、読み出されたプログラムを実行する。ネットワークインタフェース１１１０は、ネットワークを介して他の装置と接続する。メモリ１１２０は、ＣＰＵ１１３０によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。具体的には、メモリ１１２０は、ファイルサーバプログラム１１２１、及びファイルシステムプログラム１１２２を格納する。
【００２３】
ファイルサーバプログラム１１２１は、クライアントに対してファイル共有サービスを提供するプログラム（例えばＮＦＳ(Network File System)サーバプログラム）である。ファイルシステムプログラム１１２２は、ディスクドライブ１２００に格納されているファイルシステム１２１０を管理するプログラムである。
【００２４】
図４は、本発明の実施例におけるテンポラリファイルサーバ２０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【００２５】
テンポラリファイルサーバ２０００は、コントローラ２１００及びディスクドライブ２２００を備え、各構成は内部的な通信路によって互いに接続される。ディスクドライブ２２００は、各種ファイルを格納する。例えば、ファイルシステム２２１０、及びテンポラリファイルサーバ２０００自身が使用する、プログラム又はファイルを格納する。なお、テンポラリファイルサーバ２０００は、ディスクドライブ２２００以外の記憶装置を備えてもよい。
【００２６】
コントローラ２１００は、移行先ファイルサーバ４０００を制御する。コントローラ２１００は、ネットワークインタフェース２１１０、メモリ２１２０、及びＣＰＵ２１３０を備え、各構成は内部的な通信路によって互いに接続される。ＣＰＵ２１３０は、メモリ２１２０に格納されたプログラムを読み出し、読み出されたプログラムを実行する。ネットワークインタフェース２１１０は、ネットワークを介して他の装置と接続する。メモリ２１２０は、ＣＰＵ２１３０によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。具体的には、メモリ２１２０は、ファイルサーバプログラム２１２１、及びファイルシステムプログラム２１２２を格納する。
【００２７】
ファイルサーバプログラム２１２１は、クライアントに対してファイル共有サービスを提供するプログラム（例えばＮＦＳサーバプログラム）である。ファイルシステムプログラム２１２２は、ディスクドライブ２２００に格納されているファイルシステム２２１０を管理するプログラムである。
【００２８】
図５は、本発明の実施例におけるデータ移行装置３０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【００２９】
データ移行装置３０００は、コントローラ３１００及びディスクドライブ３２００を備え、各構成は内部的な通信路によって互いに接続される。ディスクドライブ３２００は、各種ファイルを格納する。例えば、ファイルシステム３２１０、及びデータ移行装置３０００自身が使用する、プログラム又はファイルを格納する。なお、データ移行装置３０００は、ディスクドライブ３２００以外の記憶装置を備えてもよい。
【００３０】
コントローラ３１００は、データ移行装置３０００を制御する。コントローラ３１００は、ネットワークインタフェース３１１０、メモリ３１２０、及びＣＰＵ３１３０を備え、各構成は内部的な通信路によって互いに接続される。ＣＰＵ３１３０は、メモリ３１２０に格納されたプログラムを読み出し、読み出されたプログラムを実行する。ネットワークインタフェース３１１０は、ネットワークを介して他の装置と接続する。メモリ３１２０は、ＣＰＵ３１３０によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。具体的には、メモリ３１２０は、ファイルサーバプログラム３１２１、ファイルシステムプログラム３１２２、及びデータ移行プログラム３１２３を格納する。
【００３１】
ファイルサーバプログラム３１２１は、クライアントに対してファイル共有サービスを提供するプログラム（例えばＮＦＳサーバプログラム）である。ファイルシステムプログラム３１２２は、ディスクドライブ３２００に格納されているファイルシステム３２１０を管理するプログラムである。データ移行プログラム３１２３は、クライアント５００、移行元ファイルサーバ１０００、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００と通信することで、移行元ファイルサーバ１０００のファイルを移行先ファイルサーバ４０００へ移行するプログラムである。データ移行プログラム３１２３の詳細については、図７を用いて後述する。
【００３２】
なお、データ移行装置３０００は、ファイル移行プログラム３１２３を備えていればよく、例えばファイルサーバ、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）、又はＮｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ（ＮＡＳ）であってもよい。
【００３３】
なお、本発明では、データ移行装置３０００が、前述した各プログラムを備えるものとして説明しているが、移行元ファイルサーバ１０００と常に接続されている装置であればよく、例えば移行元ファイルサーバ１０００自身が前述した各プログラムを備えていてもよいし、図示しないネットワークスイッチ又は管理サーバなど、他の装置が備えていてもよい。
【００３４】
図６は、本発明の実施例における移行先ファイルサーバ４０００のソフトウェア構成及びハードウェア構成を示すブロック図である。
【００３５】
移行先ファイルサーバ４０００は、コントローラ４１００及びディスクドライブ４２００を備え、各構成は内部的な通信路によって互いに接続される。ディスクドライブ４２００は、各種ファイルを格納する。例えば、ファイルシステム４２１０、及び移行先ファイルサーバ４０００自身が使用するプログラム又はファイル、及び他のファイルサーバから転送されたファイル等が格納される。なお、移行先ファイルサーバ４０００は、ディスクドライブ４２００以外の記憶装置を備えてもよい。
【００３６】
コントローラ４１００は、移行先ファイルサーバ４０００を制御する。コントローラ４１００は、ネットワークインタフェース４１１０、メモリ４１２０、及びＣＰＵ４１３０を備え、各構成は内部的な通信路によって互いに接続される。ＣＰＵ４１３０は、メモリ４１２０に格納されたプログラムを読み出し、読み出されたプログラムを実行する。ネットワークインタフェース４１１０は、ネットワークを介して他の装置と接続する。メモリ４１２０は、ＣＰＵ４１３０によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。具体的には、メモリ４１２０は、ファイルサーバプログラム４１２１、及びファイルシステムプログラム４１２２を格納する。
【００３７】
ファイルサーバプログラム４１２１は、クライアントに対してファイル共有サービスを提供するプログラム（例えばＮＦＳサーバプログラム）である。ファイルシステムプログラム４１２２は、ディスクドライブ４２００に格納されているファイルシステム４２１０を管理するプログラムである。
【００３８】
なお、以後、移行元ファイルサーバ１０００、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００を区別しない場合には、ファイルサーバと記載する。
【００３９】
なお、各ファイルサーバは、ネットワークに接続され、ファイルの入出力Ｉ／Ｆを持ち、ファイルを格納できる装置であればよく、例えば、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）、又はＮｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ（ＮＡＳ）であってもよい。
【００４０】
図７は、本発明の実施例におけるデータ移行プログラム３１２３の構成を示すブロック図である。
【００４１】
データ移行プログラム３１２３は、ハッシュ値生成モジュール３５２１、テーブル作成モジュール３５２２、ファイルコピー制御モジュール３５２３、代理実行モジュール３５２４、静止化指示モジュール３５２５、同期制御モジュール３５２６、ファイル管理テーブルＴ１００、データ移行管理テーブルＴ２００、ファイルパステーブルＴ３００、及び更新ファイルリストＴ４００を備える。
【００４２】
ハッシュ値生成モジュール３５２１は、ハッシュ関数を用いて各ファイルからハッシュ値を生成するモジュールである。テーブル作成モジュール３５２２は、移行元ファイルサーバ１０００、及びデータ移行装置３０００を調査し、ファイル管理テーブルＴ１００、データ移行管理テーブルＴ２００、及びファイルパステーブルＴ３００を作成する。
【００４３】
ファイルコピー制御モジュール３５２３は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００へのファイルコピーを制御する。ファイルコピー制御モジュール３５２３の詳細については、図１３、図１６、及び図１７を用いて後述する。
【００４４】
代理実行モジュール３５２４は、データ移行装置３０００へのクライアント５００からのアクセスを、移行元ファイルサーバ１０００、及び移行先ファイルサーバ４０００に対して代理実行する。代理実行モジュール３５２４の詳細については、図１４、及び図１７を用いて後述する。「代理実行」とは、データ移行装置３０００が、クライアント５００からの移行元へのアクセスを代わりに受け付けて、移行元に対して処理を実行させることである。
【００４５】
静止化指示モジュール３５２５は、移行元ファイルサーバ１０００に対して、格納しているファイルの静止化を指示する。
【００４６】
同期制御モジュール３５２６は、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００へのファイル同期（コピー動作）を制御する。同期制御モジュール３５２６の詳細については、図１５を用いて後述する。
【００４７】
各プログラムによって実現される処理の詳細についてはフローチャートを用いて後述する。
【００４８】
ファイル管理テーブルＴ１００は、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００へコピーするファイルの同期状態を管理するための情報を格納する。データ移行装置３０００は、ファイル管理テーブルＴ１００を参照することによって、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００に過不足なくファイルをコピーすることができる。ファイル管理テーブルＴ１００の詳細については、図８を用いて後述する。
【００４９】
データ移行管理テーブルＴ２００は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００へ移行するファイルのデータ移行状態を管理するための情報を格納する。データ移行装置３０００は、データ移行管理テーブルＴ２００を参照することによって、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に過不足なくデータ移行することができる。ファイル管理テーブルＴ２００の詳細については、図９を用いて後述する。
【００５０】
ファイルパステーブルＴ３００は、データ移行装置３０００へのクライアントからのアクセスを代理実行するためのアクセスパス情報を格納する。データ移行装置３０００は、ファイルパステーブルＴ３００を参照することによって、移行元ファイルサーバ１０００、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００へのパスを把握することができる。ファイルパステーブルＴ３００の詳細については、図１０を用いて後述する。
【００５１】
更新ファイルリストＴ４００は、移行元ファイルサーバ１０００において更新のあったファイルの更新日時を管理するための情報を格納する。データ移行装置３０００は、更新ファイルリストＴ４００を参照することによって、クライアント５００から、各ファイルに対していつ更新アクセスがあったのかを確認することができる。更新ファイルリストＴ４００の詳細については、図１１を用いて後述する。
【００５２】
なお、ファイル管理テーブルＴ１００、データ移行管理テーブルＴ２００、ファイルパステーブルＴ３００、及び更新ファイルリストＴ４００は、ディスクドライブ３２００に格納されていてもよい。この場合、所定の処理の実行時にＣＰＵ３１３０によって、ディスクドライブ３２００からメモリ３１２０に読み出す。
【００５３】
なお、本発明では、データ移行装置３０００が、前述した各プログラムを備えるものとして説明しているが、他のファイルサーバ、図示しないネットワークスイッチ又は管理サーバなど、他の装置が備えていてもよい。
【００５４】
図８は、本発明の実施例におけるファイル管理テーブルＴ１００の一例を示す説明図である。
【００５５】
ファイル管理テーブルＴ１００は、データ移行装置３０００によって作成されるリストであり、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にコピーするファイルの同期状態を管理するための情報を格納する。
【００５６】
ファイル管理テーブルＴ１００は、ファイル名Ｔ１０１、同期完了Ｔ１０２を含む。ファイル名Ｔ１０１は、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にコピーするファイルの識別子を格納する。同期完了Ｔ１０２は、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にファイルが同期されたかどうかを示す情報を格納する。
【００５７】
図９は、本発明の実施例におけるデータ移行管理テーブルＴ２００の一例を示す説明図である。
【００５８】
データ移行管理テーブルＴ２００は、データ移行装置３０００によって作成されるリストであり、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に移行するファイルのデータ移行の状態を管理するための情報を格納する。データ移行管理テーブルＴ２００は、ファイル名Ｔ２０１、コピー完了Ｔ２０２、コピー完了日時Ｔ２０３、ハッシュ値Ｔ２０４、整合性確認Ｔ２０５、最終アクセス日時Ｔ２０６を含む。「整合性」とは、２つのファイルデータの内容が一致することである。また、本実施例では、整合性確認の際にハッシュ値を用いているが、ビットマップを用いてデータ更新の有無を管理することによって整合性の確認を行なってもよい。
【００５９】
ファイル名Ｔ２０１は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に移行するファイルの識別子を格納する。コピー完了Ｔ２０２は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、又は移行先ファイルサーバ４０００にファイルがコピーされたかどうかを示す情報を格納する。コピー完了日時Ｔ２０３は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００にいつコピーされたのかを示す情報を格納する。
【００６０】
ハッシュ値Ｔ２０４は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００にコピーされたファイルのハッシュ値を格納する。ハッシュ値Ｔ２０４に格納するハッシュ値は、ハッシュ値生成モジュール３５２１がＭＤ５やＳＨＡ１などのハッシュ関数を用いて生成する。なお、ハッシュ値Ｔ２０４は、各ファイルの移行前後の整合性を確認できる値であればよく、この他の値を用いてもよい。
【００６１】
整合性確認Ｔ２０５は、移行元ファイルサーバ１０００と、移行先ファイルサーバ４０００にそれぞれ格納されているファイルが同一のものであると確認したことを示す情報を格納する。最終アクセス日時Ｔ２０６は、移行元ファイルサーバ１０００に格納されているファイルが最後にいつアクセスされたかを示す情報を格納する。
【００６２】
図１０は、本発明の実施例におけるファイルパステーブルＴ３００の一例を示す説明図である。
【００６３】
ファイルパステーブルＴ３００は、データ移行装置３０００によって作成されるリストであり、クライアントからのアクセスを、代理実行するためのアクセスパス情報を格納する。ファイルパステーブルＴ３００は、ファイル名Ｔ３０１、移行元パスＴ３０２、移行先パスＴ３０３を含む。
【００６４】
ファイル名Ｔ３０１は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に移行するファイルの識別子を格納する。移行元パスＴ３０２は、移行元ファイルサーバ１０００におけるアクセスパス情報を格納する。移行先パスＴ３０３は、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００におけるアクセスパス情報を格納する。
【００６５】
図１１は、本発明の実施例における更新ファイルリストＴ４００の一例を示す説明図である。
【００６６】
更新ファイルリストＴ４００は、データ移行装置３０００によって作成されるリストであり、移行元ファイルサーバ１０００において更新のあったファイルの更新日時を管理するための情報を格納する。更新ファイルリストＴ４００は、ファイル名Ｔ４０１、更新日時Ｔ４０２を含む。
【００６７】
ファイル名Ｔ４０１は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に移行するファイルの識別子を格納する。更新日時Ｔ４０２は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００に、いつコピーがなされたのかを示す情報を格納する。
【００６８】
図１２は、本発明の実施例における全体処理Ｓ１００を説明するフローチャートである。
【００６９】
全体処理Ｓ１００では、データ移行装置３０００が、クライアント５００、移行元ファイルサーバ１０００、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００と連携して処理を実行する。以下、図１２に沿って各処理について説明する。
【００７０】
まず、データ移行プログラム３１２３は、ファイルコピー制御処理Ｓ２００を実行して、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００にファイルをコピーする（ステップＳ１０１）。具体的には、テーブル作成モジュール３５２２が、メモリ３１２０又はディスクドライブ３２００にデータ移行管理テーブルＴ２００を作成する。ファイルコピー制御モジュール３５２３が、移行対象のファイルを、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００にコピーする。なお、ファイルコピー制御処理Ｓ２００の詳細は、図１３を用いて後述する。
【００７１】
次に、管理者は、テンポラリファイルサーバ２０００を、高速ネットワークＡ１００から切り離して運搬し、高速ネットワークＢ１００に接続する（ステップＳ１０２）。
【００７２】
次に、データ移行プログラム３１２３は、ファイル同期制御処理Ｓ４００を実行して、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にファイルを同期する（ステップＳ１０３）。具体的には、テーブル作成モジュール３５２２が、メモリ３１２０又はディスクドライブ３２００にファイル管理テーブルＴ１００を作成する。同期制御モジュール３５２６が、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にファイルを同期する。なお、ファイル同期制御処理Ｓ４００の詳細は、図１５を用いて後述する。
【００７３】
最後に、データ移行プログラム３１２３は、ファイルコピー制御処理Ｓ５００を実行して、移行元ファイルサーバ１０００から移行先ファイルサーバ４０００に更新差分を反映する（ステップＳ１０４）。具体的には、静止化指示モジュール３５２５が、移行元ファイルサーバ１０００に対して、移行元ファイルサーバ１０００に格納されている、移行対象ファイルの静止化（クライアント５００からのファイルアクセスを禁止する）を指示する。ファイルコピー制御モジュール３５２３が、移行元ファイルサーバ１０００から移行先サーバ４０００に更新差分を反映する。なお、ファイルコピー制御処理Ｓ５００の詳細は、図１６を用いて後述する。
【００７４】
図１３Ａ，１３Ｂは、本発明の実施例におけるファイルコピー制御処理Ｓ２００を説明するフローチャートである。
【００７５】
ファイルコピー制御処理Ｓ２００では、データ移行装置３０００が、移行元ファイルサーバ１０００、及びテンポラリファイルサーバ２０００と連携して処理を実行する。以下、図１３Ａ，１３Ｂに沿って各処理について説明する。
【００７６】
まず、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を作成する（ステップＳ２０１）。具体的には、テーブル作成モジュール３５２２が、移行元ファイルサーバ１０００に格納されている移行対象ファイルのファイル名Ｔ２０１、最終アクセス日時Ｔ２０６を調査して、メモリ３１２０又はディスクドライブ３２００にデータ移行管理テーブルＴ２００を作成する。
【００７７】
次に、データ移行プログラム３１２３は、ファイル属性情報テーブルＴ３００を作成する（ステップＳ２０２）。具体的には、テーブル作成モジュール３５２２が、移行元ファイルサーバ１０００に格納されている移行対象ファイルのファイル名Ｔ３０１、及び移行元パスＴ３０２を調査して、メモリ３１２０又はディスクドライブ３２００にファイル属性情報テーブルＴ３００を作成する。
【００７８】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、コピーしていないファイルが存在するか否かを判定する（ステップＳ２０３）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、コピー完了Ｔ２０２にチェックが付いていないファイルが存在するか否かを判定する。チェックが付いていないファイルが存在する場合、まだコピーしていないファイルが存在すると判定する。コピーしていないファイルが存在しないと判定した場合、データ移行プログラム３１２３はステップＳ２０９に進む。
【００７９】
コピーしていないファイルが存在していると判定した場合、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、最もアクセス日時の古いファイルを選択する（ステップＳ２０４）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、最終アクセス日時Ｔ２０６が最も古いファイルを選択する。すなわち、ステップＳ２０４では、クライアント５００からの更新が、今後発生する可能性の低いファイルから選択できればよい。
【００８０】
これにより、クライアントの更新により発生する、移行元ファイルサーバ１０００と、テンポラリファイルサーバ２０００の差異が発生する確率を低下させることができる。なお、ステップＳ２０３におけるファイルの選択方法は前述したものに限定されない。例えば、最終更新日時、作成日、作成ユーザ名、アクセスユーザ名、アクセスユーザ数、アクセス回数、又は更新回数などに基づいた選択処理であってもよい。
【００８１】
次に、データ移行プログラム３１２３は、移行元ファイルサーバ１０００から、テンポラリファイルサーバ２０００にファイルをコピーする（ステップＳ２０５）。具体的には、ファイルコピー制御モジュール３５２３が、ステップＳ２０４で選択したファイルを、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００にコピーする。
【００８２】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、コピー完了Ｔ２０２、及びコピー完了日時Ｔ２０３を登録する（ステップＳ２０６）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、ステップＳ２０５でコピーしたファイルに対して、コピー完了Ｔ２０２にチェックを付け、そのコピーが完了した日時をコピー完了日時Ｔ２０３に登録する。
【００８３】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、ハッシュ値Ｔ２０４を登録する（ステップＳ２０７）。具体的には、ハッシュ値生成モジュール３５２１が、データ移行管理テーブルＴ２００を参照し、ステップＳ２０５でコピーしたファイルに対してハッシュ値を計算し、計算したハッシュ値をハッシュ値Ｔ２０４に登録する。
【００８４】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、移行先パスＴ３０３を登録する（ステップＳ２０８）。具体的には、ファイルコピー制御モジュール３５２３が、ファイルパステーブルＴ３００を参照し、ステップＳ２０５でコピーしたファイルのテンポラリファイルサーバ２０００におけるアクセスパスを、移行先パスＴ３０３に登録する。
【００８５】
次に、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、登録されているファイル数（更新されたファイルの数）が、所定の閾値以上か否かを判定する（ステップＳ２０９）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照して、登録されているファイル数を合計し、その合計数が、管理者が予め設定した任意の閾値以上か否かを判定する。登録されているファイル数が閾値以下であると判定した場合、データ移行プログラム３１２３は処理を終了する。
【００８６】
なお、上記で述べた閾値は移行元ファイルサーバ１０００とテンポラリファイルサーバ２０００に格納されているファイルのうち、移行元ファイルサーバ１０００と移行先ファイルサーバ２０００とでデータに差異があるファイルをいくつまで許容するかを意味する。例えば０に設定した場合は、移行元ファイルサーバ１０００とテンポラリファイルサーバ２０００に格納されている全てのファイルで差異がなくなるまでＳ２１０−Ｓ２１７を繰り返すことを意味する。
【００８７】
なお、上記では更新ファイルリストＴ４００に登録されているファイル数で判定するとしたが、登録されているファイルのファイル容量などで判定してもよい。すなわち、ステップＳ２０９では、移行元ファイルサーバ１０００に保存されているファイルと、テンポラリファイルサーバ２０００に保存されているファイルの状態を比較して判定できればよい。
【００８８】
更新ファイルリストＴ４００に登録されているファイル数が閾値以上であると判定した場合、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、登録されているファイルを一つ選択する（ステップＳ２１０）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照して、登録されているファイルを一つ選択する。
【００８９】
次に、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、ステップＳ２１０で選択したファイルを削除する（ステップＳ２１１）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照し、ステップＳ２１０で選択したファイルを削除する。
【００９０】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００と、更新ファイルリストＴ４００を参照し、コピー完了日時が更新日時よりも古いか否かを判定する（ステップＳ２１２）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００と、更新ファイルリストＴ４００を参照し、ステップＳ２１０で選択したファイルのコピー完了日時Ｔ２０３が、更新日時Ｔ４０２よりも古いか否かを判定する。コピー完了日時Ｔ２０３が更新日時Ｔ４０２よりも新しいと判定した場合（コピー完了後にデータ更新無し）、データ移行プログラム３１２３は、ステップＳ２１０に進む。
【００９１】
コピー完了日時Ｔ２０３が更新日時Ｔ４０２よりも古いと判定した場合（データコピー完了後にデータ更新あり）、データ移行プログラム３１２３は、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００に当該ファイルをコピーする（ステップＳ２１３）。具体的には、ファイルコピー制御モジュール３５２３が、ステップＳ２１０で選択したファイルを、移行元ファイルサーバ１０００からテンポラリファイルサーバ２０００にコピーする。
【００９２】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、ステップＳ２１０で選択したファイルに対して、移行元ファイルサーバ１０００に格納されているファイルと、テンポラリファイルサーバ２０００に格納されているファイルのハッシュ値を計算する（ステップＳ２１４）。具体的には、ハッシュ値生成モジュール３５２１が、ファイルパステーブルＴ３００を参照し、ステップＳ２１０で選択したファイルに対して、移行元パスＴ３０２、及び移行先パスＴ３０３を確認することで、移行元ファイルサーバ１０００、及びテンポラリファイルサーバ２０００に格納されている該ファイルのハッシュ値を計算する。
【００９３】
次に、データ移行プログラム３１２３は、移行元ファイルサーバ１０００に格納されているファイルと、テンポラリファイルサーバ２０００に格納されているファイルに、整合性（ファイルデータの内容の一致）があるか否かを判定する（ステップＳ２１５）。具体的には、ファイルコピー制御モジュール３５２３が、ステップＳ２１５で計算した移行元ファイルサーバ１０００に格納されているファイルのハッシュ値と、テンポラリファイルサーバ２０００に格納されているファイルのハッシュ値が同一か否かを判定する。同一であった場合、整合性があると判定する。整合性がないと判定した場合、データ移行プログラム３１２３はステップＳ２１３に進む。
【００９４】
移行元ファイルサーバ１０００に格納されているファイルと、テンポラリファイルサーバ２０００に格納されているファイルに、整合性があると判定した場合、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、コピー完了日時Ｔ２０３を更新する（ステップＳ２１６）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、ステップＳ２１０で選択したファイルに対して、コピー完了日時Ｔ２０３を更新する。
【００９５】
最後に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、ハッシュ値Ｔ２０４を更新する（ステップＳ２１７）。具体的には、ハッシュ値生成モジュール３５２１が、データ移行管理テーブルＴ２００を参照し、ステップＳ２１１でコピーしたファイルに対してハッシュ値を計算し、計算したハッシュ値をハッシュ値Ｔ２０４に更新する。
【００９６】
図１４は、本発明の実施例におけるデータコピー時（図１２で説明するステップステップＳ１０１、Ｓ１０２、及びＳ１０３に相当）のクライアントアクセス制御処理Ｓ３００を説明するフローチャートである。
【００９７】
クライアントアクセス制御処理Ｓ３００では、データ移行装置３０００が、移行元ファイルサーバ１０００と連携して処理を実行する。以下、図１４に沿って各処理について説明する。
【００９８】
データ移行プログラム３１２３は、ステップＳ１０１、ステップＳ１０２、及びステップＳ１０３実行時において、クライアント５００からアクセスがある度に、クライアントアクセス制御処理Ｓ３００を実行する。
【００９９】
まず、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、クライアント５００からアクセスのあったファイルが、移行元ファイルサーバ１０００のどこに格納されているのか確認する（ステップＳ３０１）。具体的には、代理実行モジュール３５２４が、ファイルパステーブルＴ３００を参照して、クライアント５００からアクセスのあったファイルに対し、移行元パスＴ３０２を確認する。なお、上記ステップは、クライアント５００からのアクセスに、移行元ファイルサーバ１０００での格納場所を示す情報が含まれている場合は、不要としてもよい。
【０１００】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスパケットを解析し、ファイルへのパスを変更する（ステップＳ３０２）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスパケットを解析し、パケットに含まれているファイルへのパス情報をステップＳ３０１で確認した移行元パスＴ３０２に変更する。
【０１０１】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスパケットを解析し、クライアント５００からのアクセス内容を確認する（ステップＳ３０３）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスパケットを解析し、アクセスパケットに含まれているコマンド名、及びファイル名を確認し、確認したコマンド名、及びファイル名をメモリ３１２０に格納する。
【０１０２】
なお、ステップＳ３０２では、クライアント５００からのアクセスパケットを解析することで、アクセス内容を確認するとしているが、アクセス内容を確認する方法は前述したものに限定されない。例えば、クライアント５００からの返信パケットを解析してもよいし、クライアント５００、及び移行元ファイルサーバ１０００から、直接通知を受けてもよい。
【０１０３】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスパケットを、移行元ファイルサーバ１０００に転送する（ステップＳ３０４）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスパケットを移行元ファイルサーバ１０００に転送する。
【０１０４】
次に、データ移行プログラム３１２３は、移行元ファイルサーバ１０００から受け取った返信パケットを、クライアント５００に転送する（ステップＳ３０５）。具体的には、代理実行モジュール３５２４が、ステップＳ３０３で転送したパケットに対する、移行元ファイルサーバ１０００からの返信パケットを、クライアント５００に転送する。
【０１０５】
なお、ステップＳ３０２、Ｓ３０３、及びＳ３０４では、移行元ファイルサーバ１０００、及びクライアント５００からのアクセスパケットを転送するとしているが、他の方法で移行元ファイルサーバ１０００に格納されたファイルに対してアクセスしてもよい。例えば、データ移行プログラム３１２３が、移行元ファイルサーバ１０００からアクセス要求のあったファイルをダウンロードし、データ移行装置３０００上でクライアント５００からのアクセスを処理し、その結果を移行元ファイルサーバ１０００に対して反映してもよい。
【０１０６】
また、他の方法としては、データ移行プログラム３１２３は、クライアント５００からのアクセスによって、移行元ファイルサーバ１０００に格納されているファイルを更新せず、その更新差分のみをデータ移行装置３０００に格納し、更新のあったファイルに対するクライアントからのアクセスに対しては、移行元ファイルサーバ１０００に格納されているファイルに、データ移行装置３０００に格納されている更新差分を反映させたファイルを返信してもよい。
【０１０７】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスが終了したか否かを判定する（ステップＳ３０６）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスが所定の期間行われないか否かを確認する。クライアント５００からのアクセスが所定の期間行われなければ、クライアント５００からのアクセスが終了したと判定する。クライアント５００からのアクセスが終了していないと判定した場合、データ移行プログラム３１２３は、ステップＳ３０１に進む。
【０１０８】
クライアント５００からのアクセスが終了したと判定した場合、データ移行プログラム３１２３は、クライアント５００からのアクセス内容にファイルの更新が含まれていたか否かを判定する（ステップＳ３０７）。具体的には、代理実行モジュール３５２４が、ステップＳ３０２でメモリ３１２０に格納したコマンド名を確認し、クライアント５００からのアクセス内容にファイル更新を意味するコマンド名が含まれていたか否かを確認する。
【０１０９】
ファイルの更新を意味するコマンド名が含まれていた場合、クライアント５００からのアクセス内容にファイルの更新が含まれていたと判定する。クライアント５００からのアクセス内容にファイルの更新が含まれていなかった場合、データ移行プログラム３１２３は処理を終了する。
【０１１０】
クライアント５００からのアクセス内容にファイルの更新が含まれていた場合、データ移行プログラム３１２３は、メモリ３１２０、及び更新ファイルリストＴ４００を参照し、ファイル名Ｔ４０１、及び更新日時Ｔ４０２を登録する（ステップＳ３０８）。具体的には、代理実行モジュール３５２４が、メモリ３１２０、及びファイル更新リストＴ４００を参照し、ファイル名Ｔ４０１、及び更新日時Ｔ４０２を登録する。
【０１１１】
図１５は、本発明の実施例におけるファイル同期制御処理Ｓ４００を説明するフローチャートである。
【０１１２】
ファイル同期制御処理Ｓ４００では、データ移行装置３０００が、テンポラリファイルサーバ２０００、及び移行先ファイルサーバ４０００と連携して処理を実行する。以下、図１５に沿って各処理について説明する。
【０１１３】
なお、ファイル同期制御処理Ｓ４００は、テンポラリファイルサーバ２０００と移行先ファイルサーバ４０００が別の装置である場合は実行する必要があるが、テンポラリファイルサーバ２０００を移行先ファイルサーバ４０００として使用する場合は、本処理は不要となる。
【０１１４】
まず、データ移行プログラム３１２３は、ファイル管理テーブルＴ１００を作成する（ステップＳ４０１）。具体的には、テーブル作成モジュール３５２２が、テンポラリファイルサーバ２０００に格納されているファイルのファイル名Ｔ１０１を調査して、ファイル管理テーブルＴ１００を作成し、作成したファイル管理テーブルＴ１００を、メモリ３１２０又はディスクドライブ３２００に格納する。
【０１１５】
次に、データ移行プログラム３１２３は、ファイル管理テーブルＴ１００を参照し、同期が完了していないファイルが存在するか否かを判定する（ステップＳ４０２）。具体的には、同期制御モジュール３５２６が、ファイル管理テーブルＴ１００を参照して、同期完了Ｔ１０２にチェックが付いていないファイルが存在するか否かを判定する。チェックが付いていないファイルが存在する場合、同期が完了していないファイルは存在すると判定する。同期が完了していないファイルが存在しないと判定した場合、データ移行プログラム３１２３は処理を終了する。
【０１１６】
同期が完了していないファイルが存在していると判定した場合、データ移行プログラム３１２３は、ファイル管理テーブルＴ１００を参照し、同期が完了していないファイルを一つ選択する（ステップ４０３）。具体的には、同期制御モジュール３５２６が、ファイル管理テーブルＴ１００を参照して、同期完了Ｔ１０２にチェックが付いていないファイルを一つ選択する。
【０１１７】
次に、データ移行プログラム３１２３は、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００にファイルを同期する（ステップＳ４０４）。具体的には、同期制御モジュール３５２６が、ステップＳ４０３で選択したファイルを、テンポラリファイルサーバ２０００から移行先ファイルサーバ４０００に同期する。
【０１１８】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、移行先パスＴ３０３を更新する（ステップＳ４０５）。具体的には、同期制御モジュール３５２６が、ファイルパステーブルＴ３００を参照し、ステップＳ４０４で同期したファイルの移行先ファイルサーバ４０００上での格納先を調査し、移行先パスＴ３０３を更新する。
【０１１９】
最後に、データ移行プログラム３１２３は、ファイル管理テーブルＴ１００を参照し、同期完了Ｔ１０２を更新する（ステップＳ４０６）。具体的には、同期制御モジュール３５２６が、ファイル管理テーブルＴ１００を参照し、ステップＳ４０４で同期したファイルに対して、同期完了Ｔ１０２にチェックを付ける。
【０１２０】
図１６Ａ，１６Ｂは、本発明の実施例における差分更新制御処理Ｓ５００を説明するフローチャートである。
【０１２１】
差分更新制御処理Ｓ５００では、データ移行装置３０００が、移行元ファイルサーバ１０００、及び移行先ファイルサーバ４０００と連携して処理を実行する。以下、図１６Ａ、１６Ｂに沿って各処理について説明する。
【０１２２】
まず、データ移行プログラム３１２３は、移行元ファイルサーバ１０００に対して、ファイルの静止化を指示する（ステップＳ５０１）。具体的には、静止化指示モジュール３５２５が、移行元ファイルサーバ１０００に対して、移行元ファイルサーバ１０００に格納されている移行対象のファイルの静止化を指示する。
【０１２３】
次に、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、登録されているファイルが存在するか否かを判定する（ステップＳ５０２）。具体的には、具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照して、登録されているファイルが存在するか否かを判定する。登録されているファイルが存在しないと判定した場合、データ移行プログラム３１２３はステップＳ５０９に進む。
【０１２４】
更新ファイルリストＴ４００に登録されているファイルが存在すると判定した場合、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、登録されているファイルのうち更新日時が最も古いファイルを選択する（ステップＳ５０３）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照して、更新日時Ｔ４０２が最も古いファイルを選択する。
【０１２５】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００と、更新ファイルリストＴ４００を参照し、コピー完了日時が更新日時よりも古いか否かを判定する（ステップＳ５０４）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００と、更新ファイルリストＴ４００を参照し、ステップＳ５０３で選択したファイルのコピー完了日時Ｔ２０３が、更新日時Ｔ４０２よりも古いか否かを判定する。コピー完了日時Ｔ２０３が更新日時Ｔ４０２よりも新しいと判定した場合（コピー完了後にデータ更新無し）、データ移行プログラム３１２３は、ステップＳ５０２に進む。
【０１２６】
コピー完了日時Ｔ２０３が更新日時Ｔ４０２よりも古いと判定した場合（データコピー完了後にデータ更新あり）、データ移行プログラム３１２３は、移行元ファイルサーバ１０００から移行先ファイルサーバ４０００に当該ファイルをコピーする（ステップＳ５０５）。具体的には、ファイルコピー制御モジュール３５２３が、ステップＳ５０３で選択したファイルを、移行元ファイルサーバ１０００から移行先ファイルサーバ４０００にコピーする。
【０１２７】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、ハッシュ値Ｔ２０４を更新する（ステップＳ５０６）。具体的には、ハッシュ値生成モジュール３５２１が、データ移行管理テーブルＴ２００を参照し、ステップＳ５０３で選択したファイルに対して、移行元ファイルサーバ１０００に保存されているファイルのハッシュ値を計算し、計算したハッシュ値をハッシュ値Ｔ２０４に更新する。
【０１２８】
次に、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、ステップＳ５０３で選択したファイルを削除する（ステップＳ５０７）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照し、ステップＳ５０３で選択したファイルを削除する。
【０１２９】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、コピー完了日時Ｔ２０４を更新する（ステップＳ５０８）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、ステップＳ５０３で選択したファイルに対して、コピー完了日時Ｔ２０４を更新する。
【０１３０】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性の確認が完了していないファイルが存在するか否かを判定する（ステップＳ５０９）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、整合性確認Ｔ２０５にチェックが付いていないファイルが存在するか否かを判定する。チェックが付いていないファイルが存在する場合、整合性（ファイルデータの内容の一致）の確認が完了していないファイルが存在すると判定する。整合性の確認が完了していないファイルが存在しないと判定した場合、データ移行プログラム３１２３は処理を終了する。
【０１３１】
整合性の確認が完了していないファイルが存在していると判定した場合、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性の確認が完了していないファイルを選択する（ステップＳ５１０）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、整合性確認Ｔ２０５にチェックが付いていないファイルを一つ選択する。
【０１３２】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、ステップＳ５０８で選択したファイルに対して、移行元ファイルサーバ１０００に格納されているファイルのハッシュ値を計算する（ステップＳ５１１）。具体的には、ハッシュ値生成モジュール３５２１が、ファイルパステーブルＴ３００を参照し、ステップＳ５１０で選択したファイルに対して、移行元パスＴ３０２を確認することで、移行元ファイルサーバに格納されている該ファイルのハッシュ値を計算する。
【０１３３】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性があるか否かを判定する（ステップＳ５１２）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、ステップＳ５０９で計算したハッシュ値と、ハッシュ値Ｔ２０４に登録されている値が同一か否かを判定する。同一であった場合、整合性があると判定する。整合性があると判定した場合、データ移行プログラム３１２３はステップＳ５１５に進む。
【０１３４】
次に、データ移行プログラム３１２３は、移行元ファイルサーバ１０００から移行先ファイルサーバ４０００にファイルをコピーする（ステップＳ５１３）。具体的には、ファイルコピー制御モジュール３５２３が、ステップＳ５１０で選択したファイルを、移行元ファイルサーバ３０００から移行先ファイルサーバ４０００にコピーする。
【０１３５】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、ハッシュ値Ｔ２０４を更新する（ステップＳ５１４）。具体的には、ハッシュ値生成モジュール３５２１が、データ移行管理テーブルＴ２００を参照し、ステップＳ５０８で選択したファイルに対して、ハッシュ値を計算し、計算したハッシュ値をハッシュ値Ｔ２０４に更新する。
【０１３６】
最後に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性確認Ｔ２０５を更新する（ステップＳ５１５）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、ステップＳ５０８で選択したファイルに対して、整合性確認Ｔ２０５にチェックを付ける。
【０１３７】
図１７Ａ，１７Ｂは、本発明の実施例における更新差分反映時（図１２で説明するステップＳ１０４に相当）のクライアントアクセス制御処理Ｓ６００を説明するフローチャートである。
【０１３８】
クライアントアクセス制御処理Ｓ６００では、データ移行装置３０００が、クライアント５００、移行元ファイルサーバ１０００、及び移行先ファイルサーバ４０００と連携して処理を実行する。以下、図１７に沿って各処理について説明する。
【０１３９】
データ移行プログラム３１２３は、ステップＳ１０４実行中において、クライアント５００からアクセスがある度に、クライアントアクセス制御処理Ｓ６００を実行する。
【０１４０】
まず、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、クライアント５００からアクセスのあったファイルが、整合性が確認できているか否かを判定する（ステップＳ６０１）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、クライアント５００からアクセスのあったファイルに対して、整合性確認Ｔ２０５にチェックが付いているか否かを判定する。チェックが付いていた場合、整合性が確認できていると判定する。整合性が確認できていると判定した場合、データ移行プログラム３１２３はステップＳ６１０に進む。
【０１４１】
整合性が確認できていないと判定した場合、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、クライアント５００からアクセスのあったファイルが、コピー後に更新が発生したか否かを判定する（ステップＳ６０２）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照し、クライアント５００からアクセスのあったファイルが、更新ファイルリストＴ４００に登録されているか否かを判定する。登録されていた場合、コピー後に更新が発生したと判定する。コピー後に更新が発生しなかったと判定した場合、データ移行プログラム３１２３はステップＳ６０７に進む。
【０１４２】
コピー後に更新が発生したと判定した場合、データ移行プログラム３１２３は、更新ファイルリストＴ４００を参照し、クライアント５００からアクセスのあったファイルに関する項目を削除する（ステップＳ６０３）。具体的には、ファイルコピー制御モジュール３５２３が、更新ファイルリストＴ４００を参照して、クライアント５００からアクセスのあったファイルのファイル名がファイル名Ｔ４０１と一致する項目を全て削除する。
【０１４３】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、移行元ファイルサーバ１０００に格納されているファイルを、移行先ファイルサーバ４０００にコピーする（ステップＳ６０４）。具体的には、ファイルコピー制御モジュール３５２３が、ファイルパステーブルＴ３００を参照し、クライアント５００からアクセスのあったファイルに対して、移行元パスＴ３０２を確認することで、移行元ファイルサーバ１０００に格納されている該ファイルを、移行先ファイルサーバ４０００にコピーする。
【０１４４】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、ハッシュ値Ｔ２０４を更新する（ステップＳ６０５）。具体的には、ハッシュ値生成モジュール３５２１が、データ移行管理テーブルＴ２００を参照し、クライアント５００からアクセスのあったファイルに対して、移行元ファイルサーバ１０００に保存されているファイルのハッシュ値を計算し、計算したハッシュ値をハッシュ値Ｔ２０４に更新する。
【０１４５】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、コピー完了日時Ｔ２０３を登録する（ステップＳ６０６）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、クライアント５００からアクセスのあったファイルに対して、コピー完了日時Ｔ２０３を登録する。
【０１４６】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、移行元ファイルサーバ１０００に格納されているファイルのハッシュ値を計算する（ステップＳ６０７）。具体的には、ハッシュ値生成モジュール３５２１が、ファイルパステーブルＴ３００を参照し、クライアント５００からアクセスのあったファイルに対して、移行元パスＴ３０２を確認することで、移行元ファイルサーバ１０００に格納されている該ファイルのハッシュ値を計算する。
【０１４７】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性があるか否かを判定する（ステップＳ６０８）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照して、ステップＳ６０７で計算したハッシュ値と、ハッシュ値Ｔ２０４に登録されている値が同一か否かを判定する。同一であった場合、整合性があると判定する。整合性がないと判定した場合、データ移行プログラム３１２３はステップＳ６０４に進む。
【０１４８】
次に、データ移行プログラム３１２３は、データ移行管理テーブルＴ２００を参照し、整合性確認Ｔ２０５を更新する（ステップＳ６０９）。具体的には、ファイルコピー制御モジュール３５２３が、データ移行管理テーブルＴ２００を参照し、クライアント５００からアクセスのあったファイルに対して、整合性確認Ｔ２０５にチェックを付ける。
【０１４９】
次に、データ移行プログラム３１２３は、ファイルパステーブルＴ３００を参照し、クライアント５００からアクセスのあったファイルが、移行先ファイルサーバ４０００のどこに格納されているのか確認する（ステップＳ６１０）。具体的には、代理実行モジュール３５２４が、ファイルパステーブルＴ３００を参照して、クライアント５００からアクセスのあったファイルに対し、移行先パスＴ３０３を確認する。なお、上記ステップは、クライアント５００からのアクセスに、移行先ファイルサーバ４０００での格納場所を示す情報が含まれている場合は、不要としてもよい。
【０１５０】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスパケットを解析し、ファイルへのパスを変更する（ステップＳ６１１）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスパケットを解析し、パケットに含まれているファイルへのパス情報をステップＳ６１０で確認した移行元パスＴ３０２に変更する。
【０１５１】
次に、データ移行プログラム３１２３は、クライアント５００からのアクセスパケットを、移行先ファイルサーバ４０００に転送する（ステップＳ６１２）。具体的には、代理実行モジュール３５２４が、クライアント５００からのアクセスパケットを移行先ファイルサーバ４０００に転送する。
【０１５２】
最後に、データ移行プログラム３１２３は、移行先ファイルサーバ４０００から受け取った返信パケットを、クライアント５００に転送する（ステップＳ６１３）。具体的には、代理実行モジュール３５２４が、ステップＳ６１２で転送したパケットに対する、移行先ファイルサーバ４０００からの返信パケットを、クライアント５００に転送する。
【０１５３】
なお、ステップＳ６１１、Ｓ６１２、及びＳ６１３では、移行先ファイルサーバ４０００、及びクライアント５００からのアクセスパケットを転送するとしているが、他の方法で移行先ファイルサーバ４０００に格納されたファイルに対してアクセスしてもよい。例えば、データ移行プログラム３１２３が、移行先ファイルサーバ４０００からアクセス要求のあったファイルをダウンロードし、データ移行装置３０００上でクライアント５００からのアクセスを処理し、その結果を移行先ファイルサーバ４０００に対して反映してもよい。
【０１５４】
また、他の方法としては、データ移行プログラム３１２３は、クライアント５００からのアクセスによって、移行先ファイルサーバ４０００に格納されているファイルを更新せず、その更新差分のみをデータ移行装置３０００に格納し、更新のあったファイルに対するクライアントからのアクセスに対しては、移行先ファイルサーバ４０００に格納されているファイルに、データ移行装置３０００に格納されている更新差分を反映させたファイルを返信してもよい。
【０１５５】
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
【符号の説明】
【０１５６】
１００  高速ネットワーク
２００  低速ネットワーク
５００  クライアント
１０００  移行元ファイルサーバ
１１００  コントローラ
１１１０  ネットワークインタフェース
１１２０  メモリ
１１２１  ファイルサーバプログラム
１１２２  ファイルシステムプログラム
１１３０  ＣＰＵ
１２００  ディスクドライブ
１２１０  ファイルシステム
２０００  テンポラリファイルサーバ
２１００  コントローラ
２１１０  ネットワークインタフェース
２１２０  メモリ
２１２１  ファイルサーバプログラム
２１２２  ファイルシステムプログラム
２１３０  ＣＰＵ
２２００  ディスクドライブ
２２１０  ファイルシステム
３０００  データ移行装置
３１００  コントローラ
３１１０  ネットワークインタフェース
３１２０  メモリ
３１２１  ファイルサーバプログラム
３１２２  ファイルシステムプログラム
３１２３  データ移行プログラム
３１３０  ＣＰＵ
３２００  ディスクドライブ
３２１０  ファイルシステム
３５２１  ハッシュ値生成モジュール
３５２２  テーブル作成モジュール
３５２３  ファイルコピー制御モジュール
３５２４  代理実行モジュール
３５２５  静止化指示モジュール
３５２６  同期制御モジュール
４０００  移行先ファイルサーバ
４１００  コントローラ
４１１０  ネットワークインタフェース
４１２０  メモリ
４１３０  ＣＰＵ
４２００  ディスクドライブ
４２１０  ファイルシステム
【図１】
2013080334.tif 000003
【図２】
2013080334.tif 000004
【図３】
2013080334.tif 000005
【図４】
2013080334.tif 000006
【図５】
2013080334.tif 000007
【図６】
2013080334.tif 000008
【図７】
2013080334.tif 000009
【図８】
2013080334.tif 000010
【図９】
2013080334.tif 000011
【図１０】
2013080334.tif 000012
【図１１】
2013080334.tif 000013
【図１２】
2013080334.tif 000014
【図１３Ａ】
2013080334.tif 000015
【図１３Ｂ】
2013080334.tif 000016
【図１４】
2013080334.tif 000017
【図１５】
2013080334.tif 000018
【図１６Ａ】
2013080334.tif 000019
【図１６Ｂ】
2013080334.tif 000020
【図１７Ａ】
2013080334.tif 000021
【図１７Ｂ】
2013080334.tif 000022