JP5205817B2 - データ転送スケジュール装置、プログラム、記録媒体及び方法 - Google Patents

データ転送スケジュール装置、プログラム、記録媒体及び方法 Download PDF

Info

Publication number
JP5205817B2
JP5205817B2 JP2007147711A JP2007147711A JP5205817B2 JP 5205817 B2 JP5205817 B2 JP 5205817B2 JP 2007147711 A JP2007147711 A JP 2007147711A JP 2007147711 A JP2007147711 A JP 2007147711A JP 5205817 B2 JP5205817 B2 JP 5205817B2
Authority
JP
Japan
Prior art keywords
transfer
file
node
request
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007147711A
Other languages
English (en)
Other versions
JP2008299769A (ja
Inventor
信貴 今村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007147711A priority Critical patent/JP5205817B2/ja
Publication of JP2008299769A publication Critical patent/JP2008299769A/ja
Application granted granted Critical
Publication of JP5205817B2 publication Critical patent/JP5205817B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置、プログラム、記録媒体及び方法に関し、特に、データを細分化して近接ノード間でバケツリレー的に転送させるデータ転送スケジュール装置、プログラム、記録媒体及び方法に関する。
従来、大規模なサーバファームやデータセンタのような多数のサーバを利用する環境において、大きな入力ファイルを必要とするアプリケーションを多数台で実行する場合に、その入力ファイルを効率的に配布するデータ転送が必要となる。
従来のデータ転送にあっては、ファイルを必要とするサーバからファイルの置き場所であるファイルサーバへファイルの転送要求が送られ、それに応える形でファイルサーバからサーバへファイルが転送されている。
特開2002−149473号公報 特開平9−160820号公報
しかしながら、このような従来のデータ転送にあっては、複数台のサーバでファイルが必要な場合に、例えばn台のサーバでファイルが必要な場合、ファイルサーバからn回ファイル転送が発生し、このような1対n転送ではファイルサーバがネックとなって全体にファイルが行きわたるまで時間が掛かるという問題がある。
この問題を解消するため、各々のサーバにファイル転送のエージェントを配置し、キャッシュとしてファイルを持たせて、近隣のサーバからファイルを転送させる方法がある。しかし、このデータ転送にあっても、最後の1台にファイルがコピーされるまでに、やはりn回分のファイル転送が必要であり、時間がかかる問題がある。
一方、サーバ設置時などの状況においては、複数のサーバに対するファイルの転送順序予め定め、細分化された部分ファイルを定められた順序でサーバ間を順次転送することでファイル転送時間を短縮するバケツリレー方式によるデータ転送方法がある。
しかし、バケツリレー方式によるデータ転送は、サーバ設置状況が把握できている定められたサーバ群全体に配布するケースでしか利用できず、ファイルを配布するサーバが転送要求毎に変化するようなデータ転送では利用できない問題がある。
本発明は、転送先のノード群が変更されてもバケツリレー転送により細分化した部分ファイルを近接間転送して最終ノードまで高速にファイルを転送可能なデータ転送スケジュール装置、プログラム、記録媒体及び方法を提供することを目的とする。
(装置)
本発明はデータ転送スケジュール装置を提供する。本発明は、ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置に於いて、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部と、
転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部と、
ファイル転送依頼を受けた際に、依頼先となるファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部と、
を備えたことを特徴とする。
ここで、ファイル転送順序管理部は、ファイル転送を依頼したノードでの同一部分ファイルの次のノードへの転送回数を1回に制限して前記ファイル管理リストにおけるノード転送要求の配列順に部分ファイルを順次転送させる。
ファイル転送順序管理部は、
転送要求を転送先ノード毎のノード転送要求に分解した後にファイル名と転送先アドレスでソートし、ファイル名にソートした前記ノード転送要求を連結して転送ノードの順番を示すファイル管理リストを生成するソート処理部と、
ファイルサーバ及び全ノードにキャッシュされている保有ファイルの一覧を収集し、ファイル管理リストに転送元ファイルのキャッシュ位置を検出して設定するキャッシュ位置取得部と、
ファイル管理リストに配列したノード転送要求毎に、次ノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次ノードに対する同じ部分ファイルの転送回数を所定の最大転送可能数に制限する転送回数管理情報とを生成して管理する転送情報管理部と、
進捗管理情報及び転送回数管理情報に基づいて、転送可能なノードを判定して細分化ファイル配信管理部にファイル転送を依頼すると共に、転送回数管理情報における同じ部分ファイルの転送回数を更新するファイル転送依頼部と、
細分化ファイル配信管理部から依頼したファイル転送の完了通知を受けた際に、進捗管理情報に記述している部分ファイルの転送進捗状況を更新し、全ての部分ファイルの転送完了を判別した場合は、対応するノード転送要求をファイル管理リストから削除し、更に、転送回数管理情報の同じ部分ファイルの転送回数が最大転送可能数に達していた場合は次の部分ファイル転送のために転送回数を1つ減らす転送完了処理部と、
を備える。
転送情報管理部で管理する次ノードに対する同じ部分ファイルの最大転送可能数を1に設定する。
ファイル転送依頼部は、
ファイル管理リストに配列したノード転送要求にリンクしているファイルサーバを含む各ノードの進捗管理情報及び転送回数管理情報を配列順に調べ、
転送回数管理情報の部分ファイル転送回数が最大転送可能数未満で、且つ進捗管理情報が全ての部分ファイルの転送完了を示していなければ、転送可能ノードと判定する。
(プログラム)
本発明はデータ転送スケジュールのためのプログラムを提供する。本発明のプログラムは、ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置のコンピュータを、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部、
転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部、
ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部、
として機能させることを特徴とする。
(記録媒体)
本発明はデータ転送スケジュールのためのプログラムを格納したコンピュータ可読な記録媒体を提供する。本発明の記録媒体は、
ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置のコンピュータを、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部、
転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部、
ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部、
として機能させるプログラムを格納ことを特徴とする。
(方法)
本発明はデータ転送スケジュール方法を提供する。本発明は、ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール方法に於いて、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付プロセスと、
転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理プロセスと、
ファイル転送依頼を受けた際に、依頼先となるファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理プロセスと、
を備えたことを特徴とする。
本発明によれば、ファイル名と転送先ノード群を指定した転送要求を受付けた際に、受付けた転送要求をノード毎のノード転送要求に分解してノード間で近接間転送を可能とするように例えばノードのIPアドレスでソートした順番でファイル単位に配列したノード転送順序を示すファイル管理リストを生成し、このファイル管理リストに基づいて転送可能なノードを判別してファイル転送を指示し、更に、ノード間での同じ部分ファイルの転送回数を1回しか許さないように制限することで、ファイル管理リストの転送順序に従って細分化した部分ファイルをファイルサーバから各ノードにバケツリレー的に転送し、最終ノードまで高速にファイルを転送することができる。
図1は本発明によるデータ転送スケジューラを備えたデータ配信システムの実施形態を示した説明図である。図1において、本実施形態のデータ転送スケジューラ10に対してはファイル転送元となるファイルサーバ12が接続され、またネットワーク14を介してファイル転送先となるノード16−1〜16−5が接続されている。
ノード16−1〜16−5のそれぞれにはデータ転送エージェント18−1〜18−5が配置されており、データ転送スケジューラ10からの転送命令を受けて近接ノード間で所定の固定サイズに細分化した部分ファイルをバケツリレー方式で転送する。
またノード16−1〜16−5のそれぞれには転送ファイルを一時的に保持するための転送キャッシュ20−1〜20−5が設けられている。更にノード16−1〜16−5には、それぞれ転送されたファイルを格納してアプリケーションで使用するためのストレージ22−1〜22−5が接続されている。
図1に示す本実施形態のデータ転送スケジューラ10を備えたデータ配信システムは、例えばデータファームやデータセンタのようなグリッド環境であり、ノード16−1〜16−5はファイルサーバ12から比較的大きなファイルの転送を受けてアプリケーションにより実行するサーバとして機能する。
また転送スケジューラ10及びノード16−1〜16−5を接続しているネットワーク14は例えばインターネットプロトコル(IPプロトコルネットワーク)であり、データ転送スケジューラ10、ファイルサーバ12及びノード16−1〜16−5のそれぞれは固有のIPアドレスを持ち、またノード16−1〜16−5はそれぞれ識別するための固有のノード名を予め設定している。
図2は本実施形態におけるデータ転送スケジューラの機能構成を示したブロック図である。図2において本実施形態のデータ転送スケジューラ10は転送要求受付部24、転送順序管理部26、制御部28、キャッシュ位置取得部30、細分化ファイル配信管理部32を備えている。
転送順序管理部26にはソート処理部34と転送要求格納部36が設けられている。また制御部28には転送情報管理部38、ファイル転送依頼部40及び転送完了処理部42が設けられている。このようなデータ転送スケジューラに設けられた各処理部はデータ転送スケジューラ10を実現するコンピュータにおけるプログラムの実行により実現される機能である。
またデータ転送スケジューラ10にネットワーク14を介して接続されているノード16−1〜16−5のノード名として、この例ではhost1〜host5を設定している。
データ転送スケジューラ10に設けた転送要求受付部24は、ネットワーク14に接続しているクライアントなどからの転送要求44−1〜44−2を受け付けて保持する。
転送要求受付部24で受け付ける転送要求44−1、44−2は例えば図3に示す内容を持つ。図3は図2の転送要求44−1はXMLによる記述例を示している。転送要求44−1には転送対象とするファイル名48として「ファイルA」が記述されている。
また転送要求44−1には転送先ノード群50が記述され、この例では転送先ノード群50として図2に示したノード16−1〜16−5の5つのノード名「host1〜host5」が記述されている。
再び図2を参照するに、転送要求受付部24で受け付けた転送要求44−1、44−2は受付順に転送順序管理部26に送られる。転送順序管理部26は転送要求受付部24から受け取った例えば転送要求44−1を、転送先ノードごとのノード転送要求に分解した後、分解したノード転送要求を例えばIPアドレスによってソートしてファイル名に結合して配列したノード転送順序を示す転送要求格納部36に示すファイル管理リスト46−1を生成する。
そして転送順序管理部26は、転送対象となったファイルAを細分化した例えば5つの部分ファイルA1〜A5、ファイル管理リスト46−1のノード転送順序に従って近接ノード間転送をするように細分化ファイル配信管理部32にファイル転送を依頼する。
細分化ファイル配信管理部32は転送順序管理部26から転送依頼を受けた際に、依頼先となるファイルサーバ12、ノード16−1〜16−4にファイル転送を指示して近接ノード間転送を実行する。
この転送順序管理部26の機能を制御部28とともに更に詳細に説明すると次のようになる。まずソート処理部34は転送要求受付部24から例えば転送要求44−1、44−2を受け取った際に、転送要求44−1、44−2をそれぞれ転送先ノードごとのノード転送要求に分解した後、ファイル名と転送先アドレスであるIPアドレスでソートし、ファイル名単位、すなわちファイル名A単位及びファイル名B単位に、それぞれノード転送要求をノード転送順に配列したファイル管理リスト46−1、46−2を生成する。
ファイル管理リスト46−1、46−2に配列している「host1〜host5」または「host3,host5」で示すノート転送要求のそれぞれに対しては、後の説明で明らかにする進捗管理情報を初期化してリンクしている。進捗管理情報は次のノードに対する部分ファイルの転送進捗情報、即ち細分化した部分ファイルがいくつ次ノードにいくつ送られたかを示す情報である。
例えばファイル名Aのファイル管理リスト46−1にリンクされた進捗管理情報はファイルAを例えば6つの部分ファイルA1〜A6に分けて転送していることから、進捗管理情報はある転送タイミングで図示のように転送順に「1/6,2/6,3/6,4/6,5/6」が記録されている。
制御部28に設けた転送情報管理部38は例えばファイル管理リスト46−1を例にとると、ファイル管理リスト46−1に配列した「host1〜host5」で示すノード転送要求に基づき次のノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次のノードに対する同じく部分ファイルの転送回数を所定の最大転送回数に制限する転送回数管理情報部とを生成して管理する。
図4は図2の転送情報管理部24で管理される図3の転送要求44−1から生成されたリンク先のファイル管理リスト46−1と、これにリンクして管理される進捗管理情報52と転送回数管理情報を54を示した説明図である。
図4において、ファイル管理リスト46−1は図3の転送要求44−1について図2のソート処理部34の処理により作成されている。このファイル管理リスト46−1は転送要求44−1のファイル名48に対し転送要求44−1に含まれている転送先ノード名から転送先ノードごとのノード転送要求56−1〜56−5に分解した後、分解したノード転送要求をファイル単位及びIPアドレス単位にソートしてファイル名48に対し配列することで生成している。
ファイル管理リスト46−1の生成と同時にソート処理部34は転送先のノードごとに次のノードに対する部分ファイルの転送進捗情報を示す進捗管理情報60−1〜60−5を初期化してリンクしている。
ノード転送要求56−1〜56−5に初期化してリンクされた進捗管理情報60−1〜60−5は、ノード間で転送される細分化された部分ファイルの転送進捗情報を記録する。例えば細分化数を6とすると、部分ファイルを次のノードに転送るごとに、転送進捗情報は1/6、2/6、3/6、4/6、5/6と変化する情報を記録して管理する。
ここで図4のファイル管理リスト46−1に配列しているノード転送要求56−1〜56−5の情報は図5(A)に代表して示すように、ファイル名68と転送先ノード名70で構成されている。
また図4の進捗管理情報52に配置しているノード進捗管理情報60−1〜60−5は、図5(B)に取り出して代表して示すように、部分ファイル進捗比72とノード名74を記述している。ここで部分ファイル進捗比72は
(部分ファイル進捗比)=(部分ファイルの転送完了数)/細分化数)
で与えられる。
具体的に図4の進捗管理情報52の各ノード進捗管理情報60−1〜60−5に示すように細分化数=6とすると、部分ファイルの転送の進捗に応じて部分ファイル進捗比は、0/6,1/6,2/6,3/6,4/6,5/6,6/6と変化する。尚、部分ファイル進捗比0/6は部分ファイルの転送が行われていない初期値であり、また部分ファイル進捗比6/6は部分ファイルの全ての転送が完了した転送完了を示す値となる。
図4の転送回数管理情報54は、図5(C)に示すように、ノード名62、最大転送可能数64及び現在転送数66を記述している。転送回数管理情報54は細分化して部分ファイルをファイル転送元のファイルサーバ12からノード16−1〜16−5に対してバケツリレー方式により転送する際のノード間で同じ部分ファイルを転送できる回数を制限するための情報である。
即ち、転送回数管理情報52に設定された最低転送可能数64が次のノードに同じ部分ファイルを転送することのできる最大数であり、次のノードに転送するごとに現在転送数66を1つずつ増加させる更新を行い、現在転送数66が最大転送可能数64に達したら、それ以降同じ部分ファイルの次のノードへの転送を禁止する。
本実施形態にあっては転送回数管理情報54における最大転送可能数を1とすることでファイルサーバ12から転送先のノード16−1〜16−5に対する細分化された部分ファイルの転送につき同じ部分ファイルはノード間で1回しか転送できないように制限する。これによってファイルサーバ12からノード16−1〜16−5に対し、部分ファイルを近接サーバ間で1回ずつ順次転送するバケツリレー転送を実現することができる。
図4に示す転送回数管理情報54にあってはノード名62−1〜62−5に示すように、ファイルサーバ12と最後のノード16−5を除くノード16−1〜16−4のホスト名host1〜host4を記述している。
次の最大転送可能数64−1〜64−5は予め設定した「1」である。最後の現在転送数66−1〜66−5は次のノードに対する部分ファイルの転送を依頼するごとに0から1に更新され、依頼した部分ファイルの転送完了の通知を受けると1から0に1つ減らして次の部分ファイルの転送に備える。
再び図2を参照するに制御部28に設けたファイル転送依頼部40は転送情報管理部38で管理している例えば図4に示した進捗情報管理情報52及び転送回数管理情報54に基づき転送可能なノードを判定して細分化ファイル配信管理部32にファイル転送を依頼する。更にファイル転送依頼部40は転送依頼時に同じ部分ファイルの転送回数を示す現在転送数66−1〜66−5を各ノードに対応してこのタイミングで0から1に更新する。
制御部28に設けた転送完了処理部42は、細分化ファイル配信管理部32から依頼したファイル転送の完了通知を受けた際に、図4の進捗管理情報52の中のノード進捗管理情報60−1〜60−5の部分ファイル進捗比の分子を1つ増加させる更新を行う。
この更新により部分ファイル進捗比の分母の細分化数と分子の部分ファイル転送完了数とが一致する例えば6/6となったときに、全ての部分ファイルの転送完了を判別し、対応するノード転送要求をファイル管理リストから削除する。
また図4の転送回数管理情報54における現在転送数66−1〜66−5が最大転送可能数64−1〜64−5の値、具体的には1に達していた場合には、次の部分ファイルの転送のため現在転送数66−1〜66−5を1つ減らしてゼロにする。
更に図2のデータ転送スケジューラ10に設けているキャッシュ位置取得部30は、ファイルサーバ12、ノード16−1〜16−5にキャッシュされている保有ファイルの一覧を収集し、ファイル管理リスト46−1または46−2に転送元のキャッシュ位置を記述してセットする。これによって例えばファイル管理リスト46−1における転送対象となる元ファイルがファイルサーバ12にあることを示す転送元ファイルサーバ情報58をファイル管理リスト46に設定することができる。
図4のファイル管理リスト46−1にあってはファイル名48である「ファイルA」に対し、図2のキャッシュ位置取得部30の処理により検出されたファイルサーバを転送元ファイルサーバ情報58に記録してファイル管理リスト46のファイル名48にリンクする。
図6は図2の転送要求格納部36に配置したファイル管理リスト46−1に基づいてファイルAを6つの部分ファイルA1〜A6に細分化してバケツリレー方式によりノード16−1〜16−5に対しデータ転送する様子を示したタイムチャートである。
図6において、ステップS1のタイミングにあっては、まずファイルサーバ12から細分化した最初の部分ファイルA1を最初のノード16−1に転送する。ファイルサーバ12からノード16−1に対する部分ファイルA1の転送回数は最大転送可能数を1に設定することで1回だけ行われる。
次のステップS2のタイミングでは、ファイルサーバ12は最初の部分ファイルA1は1回しか送ることができないため、次の部分ファイルA2をノード16−1に転送する。同じタイミングでノード16−1はキャッシュに格納したステップS2のタイミングで受信した部分ファイルA1を次のノード16−2に転送する。
以下同様にファイルサーバ12はステップS3〜S6の各タイミングで1つずつ部分ファイルA3、A4、A5、A6を次のノード16−1に順次転送する。またノード16−2にあってはステップS2〜S7のタイミングで部分ファイルA1〜A6を順次次のノード16−2に転送する。
残りのノード16−3〜16−4についても、同様にして各タイミングで同じ部分ファイルは1回ずつだけ次のノードに順次転送する。この結果、ステップS10のタイミングで最後のノード16−5に対する最後の部分ファイルA6の転送が完了し、これによってファイルサーバ12から細分化されたファイルA1の転送先であるノード16−1〜16−5の全てに対するファイル転送が完了することになる。
図7は図2の転送要求44−2からデータ転送スケジューラ10で生成されたファイル管理リスト46−2に基づくデータ転送の様子を示したタイムチャートであり、この場合にはファイルBをファイルAの場合と同様6つの部分ファイルB1〜B6に細分化し、転送先ノードとしてノード16−3、16−5の2つに転送する場合を例にとっている。
図7において、転送先ノードはノード16−3、16−5の2つであることから、ファイルサーバ12はステップS1〜S6のタイミングで部分ファイルB1〜B6を1回ずつノード16−3に転送する。
またノード16−3はステップS2〜S7のタイミングでキャッシュした部分ファイルB1〜B6を1回ずつ次のノード16−5に転送し、これによって転送要求44−2に基づくファイルBのノード16−3、16−5に対する転送を完了する。
この図6及び図7のタイムチャートから明らかなように本実施形態にあっては、転送先となるノードは転送要求によってネットワーク上の任意の数のノードを指定して動的に行うことができ、且つファイルサーバ及びノード間の同じ部分ファイルの転送数を1回に制限することで、IPアドレスのソート順に従ってノード間でバケツリレー方式により近接ノード間転送を実行することができ、複数のノードに対し同時に部分ファイルを転送する1対n転送によるネットワーク輻輳を回避し、さらに図6及び図7のタイムチャートのように、各ノード間で転送可能であれば並列的にバケツリレー転送が実行されることでファイルサーバから複数のノードに対しファイルを高速転送することができる。
尚、本実施形態にあってはノード間の最大転送可能数を1としてノード間のバケツリレー転送を実現しているが、最大転送可能数を1より大きい任意の整数に設定すれば、部分的に1対nを転送が可能となる。このような1対n転送はネットワーク負荷が低い場合などに必要に応じて選択することが可能である。
図8は本実施形態のデータ転送スケジューラのプログラムを実行するコンピュータのハードウェア環境を示したブロック図である。図8において、図1のデータ転送スケジューラ10を構築するコンピュータは、CPU76のバス78に対しROM82、RAM80、ハードディスクドライブ84、キーボート88、マウス90、ディスプレイ92を接続するデバイスインタフェース86、更にネットワーク14に接続するネットワークアダプタ94を接続している。
ハードディスクドライブ84には本実施形態の図2に示したデータ転送スケジューラ10の機能を実現するためのプログラムがインストールされている。
コンピュータを起動するとBIOSによる自己診断及び初期化を経てROM82のブートプログラムが実行され、ハードディスクドライブ84からOSがRAM80に読出し配置されてCPU76により実行される。続いてOSの実行によりハードディスクドライブ84から本実施形態のデータ転送スケジューラの機能を実現するプログラムがRAM80に読出し配置され、CPU76により実行されることになる。
このような図8のコンピュータのハードウェア環境は、本実施形態のデータ転送スケジューラ10のみならず、ファイルサーバ12、ノード16−1〜16−5を構築するサーバについても基本的には同じである。
図9は本実施形態におけるデータ転送スケジュール処理を示したフローチャートであり、図2を参照して説明すると次のようになる。図9において、データ転送スケジューラ10によるデータ転送スケジュール処理は、ステップS1で転送要求受付部24がファイル転送要求の受付の有無をチェックしており、転送要求を受け付けるとステップS2で転送要求をソート処理部34に渡し、ノード転送要求に分解し手ソートしたファイル管理リストを生成するソート処理を実行する。
続いてステップS3でファイル管理リストに従ってファイルサーバ12から転送対象となるノードにノード間の部分ファイル転送数を1回に制限したバケツリレー方式による近接ノード間転送処理を行うための転送順序管理処理を実行する。
続いてステップS4でファイル転送完了の有無をチェックしており、ファイル転送を完了するとステップS5でファイル管理リストを削除し、ステップS6で依頼元に転送正常終了を通知する。このステップS1〜S6の処理をステップS7でログオフなどの停止指示があるまで繰り返す。
図10は図9のステップS2におけるソート処理の詳細を示したフローチャートである。図10において、ソート処理はステップS1でソート処理部34が転送要求受付部24から受け付けた例えば図3に示した転送要求44−1について、ノードごとのノード転送要求に分解する。
続いてステップS2で分解したノード転送要求をファイル名及びノードのIPアドレスでソートし、ステップS3で例えば図4のファイル管理リスト46−1に示すようにファイルごとのファイル管理リストに分解したノード転送要求を連結する。
続いてステップS4で進捗管理情報52を初期化し、ノード進捗管理情報60−1〜60−5に示すように、ファイル管理リストのノード転送要求56−1〜56−5のそれぞれにリンクする。続いてステップS5で図2の転送順序管理部26に生成したファイル管理リストを追加イベントとして送信する。
図11は図9のステップS3における転送順序管理処理の詳細を示したフローチャートである。図11において、転送順序管理処理は図2の転送要求格納部36にソート処理部34から受信して格納した送信要求リスト46−1、46−2を対象に、制御部28に設けた転送情報管理部38、ファイル転送依頼部40及び転送完了処理部42の処理が実行される。
図11において、まずステップS1で新規ノードの転送要求投入イベントがあるか、あるいはステップS2で部分ファイル転送完了イベントがあるか否かチェックし、いずれかのイベントがあるとステップS3に進み、図4に示すようにファイル管理リスト46−1に対応して生成管理している進捗管理情報52及び転送回数管理情報54を更新する。
続いてステップS4で更新した進捗管理情報52及び転送回数管理情報54に基づき転送可能ノードの判別をチェックする。この判別処理の結果、ステップS5で転送可能ノードがあればステップS6で部分ファイル転送を細分化ファイル配信管理部32に依頼する。
この依頼と同時にステップS7で転送回数管理情報54における同じ部分ファイルの現在転送数を1つ増加させて更新する。続いてステップS8で依頼したノード転送要求が完了したことを判別すると、ステップS9で完了したノード転送要求をファイル管理リストから削除する。
図12は図11のステップS4における転送可能ノードの判定処理を詳細を示したフローチャートである。図12において、転送可能ノード判定処理は、ステップS1でノードにリンクした図5(B)に示すノード進捗管理情報60における部分ファイル進捗比72を読み取り、分子の転送完了数が分母の細分化数未満であることをステップS2で判別すると、そのノードは全ての部分ファイルの転送が済んでいないことから転送可能なノードと判断し、続いてステップS3でノードにリンクした図5(C)に示す転送回数管理情報54の現在転送数66を読み取る。
続いてステップS4で現在転送数は同じく転送回数管理情報54に設定している最大転送可能数未満か否かチェックし、最大転送可能数未満であればステップS5に進み、このノードは転送可能ノードと判定する。
ステップS2で転送完了数が細分化数に達していた場合、あるいはステップS4で現在転送数が最大転送可能数に達していたノードについては、部分ファイルの転送ができないことからステップS5の転送可能ノードとしての判定処理は行わない。
続いてステップS6で全ノードを処理が終了したか否かチェックし、未終了であればステップS1に戻り、ファイル管理リストに配列している次のノードについて同様の処理をステップS6で全ノードの処理を判別するまで繰り返す。
図13〜図28は、ファイルを2つの部分ファイルに細分化して2つのノード16−1,16−2に転送する場合の本実施形態によるデータ転送スケジュール処理を、ステップS1〜S16の16段階に分けて詳細に示した説明図である。
図13はステップS1の処理であり、転送要求受付部24で受け付けた転送要求44の内容が、ファイルXを細分化した2つの部分ファイルX1,X2をノード16−1,16−2にファイルサーバ12から転送する場合を例にとっている。ここでノード16−1のホスト名はHost1とし、ノード16−2のホスト名はHost2としている。
図14はステップS2の処理であり、転送要求受付部24で受け付けられた転送要求44はソート処理部34に送られ、ノード16−1,16−2ごとのノード転送要求100,102に分解された後、ノード16−1,16−2のIPアドレスでソートされ、ファイル名98である「ファイルX」のエントリに連結したファイル管理リスト96を生成する。
図15は次のステップS3の処理であり、ソート処理部34は更に、生成したファイル管理リスト96のノード転送要求100,102のそれぞれに対し進捗管理情報104,106を初期化してリンクする。
図16は次のステップS4の処理であり、キャッシュ位置取得部30がファイルサーバ12及び全てのノード16−1,16−2から保有ファイルの一覧を収集し、転送順序管理部26のファイル管理リスト96におけるファイルXの位置情報として、転送元がファイルサーバ12であることを示すファイル転送元情報108を記録する。
図17は次のステップS5の処理であり、制御部28に設けてファイル管理リスト96にリンクしているノード16−1,16−2ごとのノード転送要求100,102を配列順(時間的に古い順)に調べ、ノード転送要求100における部分ファイルX1をファイルサーバ12からノード16−1に転送可能であることを判別する。
この判別結果に基づき制御部28はノード16−1に対応した転送回数管理情報110の現在転送数112をそれまでの0から1に更新した後、細分化ファイル配信管理部32に部分ファイルX1のファイルサーバ12からノード16−1への転送を依頼する。
図18はステップS6の処理であり、図17のステップS5で転送依頼を受けた細分化ファイル配信管理部32がファイルサーバ12に対し転送指示命令を発行し、これを受けてファイルサーバ12が部分ファイルX1をノード16−1に転送する。
図19はステップS7の処理であり、ファイルサーバ12からノード16−1に対する部分ファイルX1の転送が完了すると、細分化ファイル配信管理部32が制御部28に転送終了を通知する。
この転送終了を受けて制御部28は、ノード16−1に対応した転送回数管理情報110における現在転送数112を1つ減らして0にし、次の部分ファイルの転送に備える。更に制御部28は、ノード16−1に対応したノード転送要求100にリンクしている進捗管理情報104を図18の転送前の部分ファイル進捗比「0/2」から「1/2」に更新し、最初の部分ファイルX1の転送が完了した進捗状況を記録する。
図20は次のステップS8の処理であり、制御部28は転送順序管理部26のファイル管理リスト96にリンクしている進捗管理情報104,106を再び調べ、転送対象ファイルXの部分ファイルX2がファイルサーバ12からノード16−1に転送可能であることを判別し、細分化ファイル配信管理部32に判別したファイル転送を依頼し、同時に転送回数管理情報110の現在転送数112をそれまでの0から1に更新する。
図21は次のステップS9の処理であり、制御部28はファイル管理リスト96のノード転送要求102にリンクしている進捗管理情報106を調べ、ノード16−1からノード16−2への部分ファイルX1の転送が可能であることを判別し、この判別した転送を細分化ファイル配信管理部32に依頼する。同時に、制御部28においてノード16−1に対応した転送回数管理情報114における現転送数をそれまでの0から1に更新する。
図22は次のステップS10の処理であり、図20のステップS8及び図21のステップS9の処理でファイル転送の依頼を受けた細分化ファイル配信管理部32が、ファイルサーバ12及びノード16−1のそれぞれに転送指示命令を送り、ファイルサーバ12からノード16−1に部分ファイルX2を転送すると共に、ノード16−1からノード16−2に部分ファイルX1を転送させる。
図23は次のステップS11の処理であり、図22のステップS10の部分ファイルX1,X2の転送が完了すると、細分化ファイル配信管理部32が制御部28に転送終了を通知する。
この転送終了を受けて、制御部28はファイルサーバ12に対応した転送回数管理情報110の現在転送回数112を1つ減らして0にし、同時にノード16−1に対応した転送回数管理情報114の現在転送数116を1つ減らして0にする。
更に制御部28は、ノード16−1に対するノード転送要求110にリンクしている進捗管理情報104の部分ファイル進捗比を、それまでの「1/2」から「2/2」に更新する。またノード16−2のノード転送命令102にリンクしている進捗管理情報106の部分ファイル進捗比を、それまでの「0/2」から「1/2」に更新する。
図24は次のステップS12の処理であり、制御部28は再び転送順序管理部26のファイル管理リスト96にリンクしている進捗管理情報104,106を調べ、ノード16−1からノード16−2への部分ファイルX2の転送が可能であることを判別し、判別した転送を細分化ファイル配信管理部32に依頼し、更にノード16−1に対応した転送回数管理情報114における現在転送数116をそれまでの0から1に更新する。
図25は次のステップS13の処理であり、制御部28は図24のステップS12に示したノード進捗管理情報104の部分ファイル進捗比「2/2」から、ノード16−1に対するファイルXの転送が完了していることを判別し、図24のノード16−1に対応したノード転送要求100をファイル管理リスト96から削除する。
このときファイル管理リスト96のファイル名98に対する転送元情報108はノード16−1を示す「Host1」に書き換える。そして、、転送要求受付部24の転送要求44にノード16−1に対するファイルXの転送が完了したことを記録する。
図26は次のステップS14の処理であり、図24のステップS12で転送依頼を受けた細分化ファイル配信管理部32がノード16−1に対し転送指示命令を発行し、ノード16−1からノード16−2に部分ファイルX2を転送させる。
図27は次のステップS15の処理であり、ノード16−1からノード16−2に対する部分ファイルX2の転送が完了すると、細分化ファイル配信管理部32が転送完了を制御部28に通知する。
制御部28は、ノード16−2に対するノード転送要求102にリンクしている進捗管理情報106の部分ファイル進捗比をそれまでの「1/2」から「2/2」に更新する。更に、ノード16−2に対応した転送回数管理情報114の現在転送数116を1つ減らして0に戻す。
図28は次のステップS16の処理であり、図27のステップS15におけるノード16−2に対応したノード転送要求102にリンクしている進捗管理情報106の部分ファイル進捗比が「2/2」になっていることで、ノード16−2に対するファイルXの転送が完了したことを判別する。
ファイルXの転送完了を判別すると、転送順序管理部26からファイル管理リスト96を削除し、更に転送要求44に対しノード16−2へのファイルXの転送が完了したことを記録する。最終的に転送要求受付部24が、要求したファイルXのノード16−1,16−2に対する転送が完了していることを判別し、転送正常終了を通知して一連の転送処理を終了する。
本発明は図1のデータ転送スケジューラ10のコンピュータで実行されるプログラムを提供する。このプログラムは図9乃至図12のフローチャートに示した内容となる。
また本発明は、本実施形態のデータ転送スケジューラ10を実現する図8のハードウェア環境を持つコンピュータで実行されるプログラムを格納した記録媒体を提供する。
ここで記録媒体とは、CD−ROM、フロッピィディスク(R)、DVDディスク、光磁気ディスク、ICカードなどの可搬型記憶媒体や、コンピュータシステムの内外に備えられたハードディスクドライブなどの記憶装置の他、回線を介してプログラムを保持するデータベースあるいは他のコンピュータシステム、更にそのデータベース、更には回線上の伝送媒体を含むものである。
なお上記の実施形態は転送先のノードとしてサーバを例にとるものであったが、本発明はこれに限定されず、適宜の情報処理装置や機器をノードとするファイルサーバからのデータ転送にそのまま適用できる。
また上記の実施形態にあっては、ファイルを予め定めた固定長の部分ファイルに細分化して転送する場合を例にとっているが、ファイルサイズが部分ファイルのサイズ長より小さい場合には部分ファイル数は1つであり、ファイルサーバから転送先の複数のノードに対し1つのファイルを近接ノード間転送によりバケツリレー転送することになる。
また本発明はその目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴を列挙すると次の付記のようになる。
(付記)

(付記1)(装置)
ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置に於いて、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部と、
前記転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、前記ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、前記ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部と、
前記ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部と、
を備えたことを特徴とするデータ転送スケジュール装置。(1)
(付記2)(ファイル転送順序管理部の詳細)
付記1記載のデータ転送スケジュール装置に於いて、前記ファイル転送順序管理部は、ファイル転送を依頼したノードでの同一部分ファイルの次のノードへの転送回数を1回に制限して前記ファイル管理リストにおけるノード転送要求の配列順に部分ファイルを順次転送させることを特徴とするデータ転送スケジュール装置。(2)
(付記3)(ファイル転送順序管理部の詳細)
付記1記載のデータ転送スケジュール装置に於いて、前記ファイル転送順序管理部は、
前記転送要求を転送先ノード毎のノード転送要求に分解した後にファイル名と転送先アドレスでソートし、前記ファイル名にソートした前記ノード転送要求を連結して転送ノードの順番を示すファイル管理リストを生成するソート処理部と、
前記ファイルサーバ及び全ノードにキャッシュされている保有ファイルの一覧を収集し、前記ファイル管理リストに転送元ファイルのキャッシュ位置を検出して設定するキャッシュ位置取得部と、
前記ファイル管理リストに配列したノード転送要求毎に、次ノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次ノードに対する同じ部分ファイルの転送回数を所定の最大転送可能数に制限する転送回数管理情報とを生成して管理する転送情報管理部と、
前記進捗管理情報及び転送回数管理情報に基づいて、転送可能なノードを判定して前記細分化ファイル配信管理部にファイル転送を依頼すると共に、前記転送回数管理情報における同じ部分ファイルの転送回数を更新するファイル転送依頼部と、
前記細分化ファイル配信管理部から依頼したファイル転送の完了通知を受けた際に、前記進捗管理情報に記述している部分ファイルの転送進捗状況を更新し、全ての部分ファイルの転送完了を判別した場合は、対応するノード転送要求を前記ファイル管理リストから削除し、更に、前記転送回数管理情報の同じ部分ファイルの転送回数が最大転送可能数に達していた場合は次の部分ファイル転送のために前記転送回数を1つ減らす転送完了処理部と、
を備えたことを特徴とするデータ転送スケジュール装置。(3)
(付記4)(ファイル転送順序管理部の詳細)
付記3記載のデータ転送スケジュール装置に於いて、前記転送情報管理部で管理する次ノードに対する同じ部分ファイルの最大転送可能数を1に設定したことを特徴とするデータ転送スケジュール装置。(4)
(付記5)(転送可能ノードの判定)
付記1記載のデータ転送スケジュール装置に於いて、前記ファイル転送依頼部は、
前記ファイル管理リストに配列したノード転送要求にリンクしている前記ファイルサーバを含む各ノードの進捗管理情報及び転送回数管理情報を配列順に調べ、
前記転送回数管理情報の部分ファイル転送回数が最大転送可能数未満で、且つ前記進捗管理情報が全ての部分ファイルの転送完了を示していなければ、転送可能ノードと判定することを特徴とするデータ転送スケジュール装置。(5)
(付記6)(プログラム)
ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置のコンピュータを、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部、
前記転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、前記ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、前記ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部、
前記ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部、
として機能させることを特徴とするプログラム。(6)
(付記7)(ファイル転送順序管理部の詳細)
付記6記載のプログラムに於いて、前記ファイル転送順序管理部は、ファイル転送を依頼したノードでの同一部分ファイルの次のノードへの転送回数を1回に制限して前記ファイル管理リストにおけるノード転送要求の配列順に部分ファイルを順次転送させることを特徴とするプログラム。
(付記8)(ファイル転送順序管理部の詳細)
付記6記載のプログラムに於いて、前記ファイル転送順序管理部は、
前記転送要求を転送先ノード毎のノード転送要求に分解した後にファイル名と転送先アドレスでソートし、前記ファイル名にソートした前記ノード転送要求を連結して転送ノードの順番を示すファイル管理リストを生成するソート処理部と、
前記ファイルサーバ及び全ノードにキャッシュされている保有ファイルの一覧を収集し、前記ファイル管理リストに転送元ファイルのキャッシュ位置を検出して設定するキャッシュ位置取得部と、
前記ファイル管理リストに配列したノード転送要求毎に、次ノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次ノードに対する同じ部分ファイルの転送回数を所定の最大転送可能数に制限する転送回数管理情報とを生成して管理する転送情報管理部と、
前記進捗管理情報及び転送回数管理情報に基づいて、転送可能なノードを判定して前記細分化ファイル配信管理部にファイル転送を依頼すると共に、前記転送回数管理情報における同じ部分ファイルの転送回数を更新するファイル転送依頼部と、
前記細分化ファイル配信管理部から依頼したファイル転送の完了通知を受けた際に、前記進捗管理情報に記述している部分ファイルの転送進捗状況を更新し、全ての部分ファイルの転送完了を判別した場合は、対応するノード転送要求を前記ファイル管理リストから削除し、更に、前記転送回数管理情報の同じ部分ファイルの転送回数が最大転送可能数に達していた場合は次の部分ファイル転送のために前記転送回数を1つ減らす転送完了処理部と、
を備えたことを特徴とするプログラム。
(付記9)(ファイル転送順序管理部の詳細)
付記8記載のプログラムに於いて、前記転送情報管理部で管理する次ノードに対する同じ部分ファイルの最大転送可能数を1に設定したことを特徴とするプログラム。
(付記10)(転送可能ノードの判定)
付記6記載のプログラムに於いて、前記ファイル転送依頼部は、
前記ファイル管理リストに配列したノード転送要求にリンクしている前記ファイルサーバを含む各ノードの進捗管理情報及び転送回数管理情報を配列順に調べ、
前記転送回数管理情報の部分ファイル転送回数が最大転送可能数未満で、且つ前記進捗管理情報が全ての部分ファイルの転送完了を示していなければ、転送可能ノードと判定することを特徴とするプログラム。
(付記11)(記録媒体)
ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール装置のコンピュータを、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付部、
前記転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、前記ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、前記ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理部、
前記ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理部、
として機能させるプログラムを格納したコンピュータ可読な記録媒体。(7)
(付記12)(方法)
ファイルサーバから複数のノードに対するデータ転送をスケジュールして管理するデータ転送スケジュール方法に於いて、
ファイル名と複数の転送先ノードを指定した転送要求を受け付ける転送要求受付プロセスと、
前記転送要求を転送先ノード毎のノード転送要求に分解してソートした後に、前記ファイル名に連結して転送ノードの順番を示すファイル管理リストを生成し、前記ファイル管理リストの順番に従って細分化した部分ファイルを近接ノード間転送するようにファイル転送を依頼するファイル転送順序管理プロセスと、
前記ファイル転送依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる細分化ファイル配信管理プロセスと、
を備えたことを特徴とするデータ転送スケジュール方法。(8)
(付記13)(ファイル転送順序管理プロセスの詳細)
付記12記載のデータ転送スケジュール方法に於いて、前記ファイル転送順序管理プロセスは、ファイル転送を依頼したノードでの同一部分ファイルの次のノードへの転送回数を1回に制限して前記ファイル管理リストにおけるノード転送要求の配列順に部分ファイルを順次転送させることを特徴とするデータデータ転送スケジュール方法。
(付記14)(ファイル転送順序管理プロセスの詳細)
付記12記載のデータ転送スケジュール方法に於いて、前記ファイル転送順序管理プロセスは、
前記転送要求を転送先ノード毎のノード転送要求に分解した後にファイル名と転送先アドレスでソートし、前記ファイル名にソートした前記ノード転送要求を連結して転送ノードの順番を示すファイル管理リストを生成するソート処理プロセスと、
前記ファイルサーバ及び全ノードにキャッシュされている保有ファイルの一覧を収集し、前記ファイル管理リストに転送元ファイルのキャッシュ位置を検出して設定するキャッシュ位置取得プロセスと、
前記ファイル管理リストに配列したノード転送要求毎に、次ノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次ノードに対する同じ部分ファイルの転送回数を所定の最大転送可能数に制限する転送回数管理情報とを生成して管理する転送情報管理プロセスと、
前記進捗管理情報及び転送回数管理情報に基づいて、転送可能なノードを判定して前記細分化ファイル配信管理プロセスにファイル転送を依頼すると共に、前記転送回数管理情報における同じ部分ファイルの転送回数を更新するファイル転送依頼プロセスと、
前記細分化ファイル配信管理プロセスから依頼したファイル転送の完了通知を受けた際に、前記進捗管理情報に記述している部分ファイルの転送進捗状況を更新し、全ての部分ファイルの転送完了を判別した場合は、対応するノード転送要求を前記ファイル管理リストから削除し、更に、前記転送回数管理情報の同じ部分ファイルの転送回数が最大転送可能数に達していた場合は次の部分ファイル転送のために前記転送回数を1つ減らす転送完了処理プロセスと、
を備えたことを特徴とするデータ転送スケジュール方法。
(付記15)(ファイル転送順序管理プロセスの詳細)
付記14記載のデータ転送スケジュール方法に於いて、前記転送情報管理プロセスで管理する次ノードに対する同じ部分ファイルの最大転送可能数を1に設定したことを特徴とするデータ転送スケジュール方法。
(付記16)(転送可能ノードの判定)
付記12記載のデータ転送スケジュール方法に於いて、前記ファイル転送依頼プロセスは、
前記ファイル管理リストに配列したノード転送要求にリンクしている前記ファイルサーバを含む各ノードの進捗管理情報及び転送回数管理情報を配列順に調べ、
前記転送回数管理情報の部分ファイル転送回数が最大転送可能数未満で、且つ前記進捗管理情報が全ての部分ファイルの転送完了を示していなければ、転送可能ノードと判定することを特徴とするデータ転送スケジュール方法。
本発明のデータ転送スケジューラを備えたデータ配信システムの実施形態を示した説明図 本実施形態におけるデータ転送スケジューラの機能構成を示したブロック図 本実施形態で受付ける転送要求を示した説明図 本実施形態のデータ転送スケジューラで生成管理されるファイル管理リスト、進捗管理情報及び転送回数管理情報を示した説明図 図4のノード転送要求、進捗管理情報及び転送回数管理情報の内容を示した説明図 図2のファイルAを5つのノードに6つの部分ファイルに細分化してデータ転送する様子を示したタイムチャート 図2のファイルBを2つのノードに6つの部分ファイルに細分化してデータ転送する様子を示したタイムチャート 本実施形態のデータ転送スケジューラのプログラムを実行するコンピュータのハードウェア環境を示したブロック図 本実施形態におけるデータ転送スケジュール処理を示したフローチャート 図9のステップS2におけるソート処理の詳細を示したフローチャート 図9のステップS3における転送順序管理処理の詳細を示したフローチャート 図11のステップS4における転送可能ノード判定処理の詳細を示したフローチャート 転送要求を受けたステップS1の処理を示した説明図 転送要求を分解してファイル管理リストを生成するステップS2の処理を示した説明図 ファイル管理リストに進捗管理情報を初期化してリンクするステップS3の処理を示した説明図 ファイルサーバ及び全ノードの保有ファイルを取得してファイル管理リストにファイル位置を記録するステップS4の処理を示した説明図 転送可能ノードを調べてファイルサーバから最初のノードに部分ファイルX1の転送を依頼するステップS5の処理の説明図 ファイルサーバから最初のノードに部分ファイルX1を転送するステップS6の処理の説明図 部分ファイルX1の転送完了に伴い転送順序情報と進捗管理情報を更新するステップS7の処理を示した説明図 転送可能ノードを調べてファイルサーバから最初のノードに次の部分ファイルX2の転送を依頼するステップS8の処理の説明図 転送可能ノードを調べて最初のノードから次のノードに部分ファイルX1の転送を依頼するステップS9の処理の説明図 転送依頼に基づき部分ファイルX1,X2を転送するステップS10の処理の説明図 部分ファイルX1,X2の転送完了に伴い転送順序情報と進捗管理情報を更新するステップS11の処理を示した説明図 転送可能ノードを調べて最初のノードから次のノードに部分ファイルX2の転送を依頼するステップS12の処理の説明図 最初のノードへの転送完了を判別してファイル管理リストから対応するノード転送要求を削除するステップS13の処理を示した説明図 転送依頼に基づき部分ファイルX2を転送するステップS14の処理の説明図 部分ファイルX2の転送完了に伴い転送順序情報と進捗管理情報を更新するステップS15の処理を示した説明図 次のノードへの転送完了を判別してファイル管理リストから対応するノード転送要求を削除した後に依頼元に転送正常終了を通知するステップS16の処理を示した説明図
符号の説明
10:データ転送スケジューラ
12:ファイルサーバ
14:ネットワーク
16−1〜16−5:ノード
18−1〜18−5:データ転送エージェント
20−1〜20−5:転送キャッシュ
22−1〜22−5:ストレージ
24:転送要求受付部
26:転送順序管理部
28:制御部
30:キャッシュ位置取得部
32:細分化ファイル配信管理部
34:ソート処理部
36:転送要求格納部
38:転送情報管理部
40:ファイル転送依頼部
42:転送完了処理部
44,44−1,44−2:転送要求
46−1,46−2,96:ファイル管理リスト
48,54,78,98:ファイル名
50:転送先ノード群
52,104,106:進捗管理情報
54,110,112:転送回数管理情報
56−1〜56−5,100,102:ノード転送要求
58:転送元ファイルサーバ
60,60−1〜60−5,104,106:ノード進捗管理情報
62,62−1〜62−5:ノード名
64,64−1〜64−5:最大転送可能数
66,66−1〜66−5,112,116:現在転送数
68:ファイル名
70:転送先ノード名
72:部分ファイル進捗比
74:ノード名
76:CPU
78:バス
80:RAM
82:ROM
84:ハードディスクドライブ
86:デバイスインタフェース
88:キーボード
90:マウス
92:ディスプレイ
94:ネットワークアダプタ

Claims (8)

  1. ファイルサーバから複数のノードに対するデータ転送を管理するデータ転送装置に於いて、
    ファイル名と前記ファイル名に対応するファイルを転送する複数の転送先ノードを指定した転送要求を受け付ける受付部と、
    前記転送要求を転送先ノード毎のノード転送要求に分解し、前記分解したノード転送要求を前記複数の転送先ノードのアドレスに基づいてソートした後に、前記ファイル名に対応付けて転送ノードの順番を示すリストを生成し、前記リトに基づい、前記ファイル名に対応するファイルを細分化した部分ファイルを近接ノード間転送するようにファイル転送依頼を行う順序管理部と、
    記依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる配信管理部と、を備えたことを特徴とするデータ転送装置。
  2. 請求項1記載のデータ転送装置に於いて、前記順序管理部は、ファイル転送を依頼したノードでの同一部分ファイルの次のノードへの転送回数を1回に制限して前記リストにおけるノード転送要求の配列順に部分ファイルを順次転送させることを特徴とするデータ転送装置。
  3. 請求項1記載のデータ転送装置に於いて、前記順序管理部は、
    前記転送要求を転送先ノード毎のノード転送要求に分解した後にファイル名と転送先アドレスでソートし、前記ファイル名にソートした前記ノード転送要求を対応付けて転送ノードの順番を示すファイル管理リストを生成するソート処理部と、
    前記ファイルサーバ及び全ノードにキャッシュされている保有ファイルの一覧を収集し、前記リストに転送元ファイルのキャッシュ位置を検出して設定するキャッシュ位置取得部と、
    記リストに配列したノード転送要求毎に、次ノードに対する部分ファイルの転送進捗状況を示す進捗管理情報と、次ノードに対する同じ部分ファイルの転送回数を所定の最大転送可能数に制限する転送回数管理情報とを生成して管理する転送情報管理部と、
    前記進捗管理情報及び転送回数管理情報に基づいて、転送可能なノードを判定して前記配信管理部にファイル転送を依頼すると共に、前記転送回数管理情報における同じ部分ファイルの転送回数を更新するファイル転送依頼部と、
    記配信管理部から依頼したファイル転送の完了通知を受けた際に、前記進捗管理情報に記述している部分ファイルの転送進捗状況を更新し、全ての部分ファイルの転送完了を判別した場合は、対応するノード転送要求を前記リストから削除し、更に、前記転送回数管理情報の同じ部分ファイルの転送回数が最大転送可能数に達していた場合は次の部分ファイル転送のために前記転送回数を1つ減らす転送完了処理部と、
    を備えたことを特徴とするデータ転送装置。
  4. 請求項3記載のデータ転送装置に於いて、前記転送情報管理部で管理する次ノードに対する同じ部分ファイルの最大転送可能数を1に設定したことを特徴とするデータ転送装置。
  5. 請求項1記載のデータ転送装置に於いて、前記ファイル順序管理部は、
    記リストに配列したノード転送要求にリンクしている前記ファイルサーバを含む各ノードの進捗管理情報及び転送回数管理情報を配列順に調べ、
    前記転送回数管理情報の部分ファイル転送回数が最大転送可能数未満で、且つ前記進捗管理情報が全ての部分ファイルの転送完了を示していなければ、転送可能ノードと判定することを特徴とするデータ転送装置。
  6. ファイルサーバから複数のノードに対するデータ転送を管理するデータ転送装置のコンピュータを、
    ファイル名と前記ファイル名に対応するファイルを転送する複数の転送先ノードを指定した転送要求を受け付ける受付部、
    前記転送要求を転送先ノード毎のノード転送要求に分解し、前記分解したノード転送要求を前記複数の転送先ノードのアドレスに基づいてソートした後に、前記ファイル名に対応付けて転送ノードの順番を示すリストを生成し、前記リトに基づい、前記ファイル名に対応するファイルを細分化した部分ファイルを近接ノード間転送するようにファイル転送依頼を行う順序管理部、
    記依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる配信管理部、
    として機能させることを特徴とするプログラム。
  7. ファイルサーバから複数のノードに対するデータ転送を管理するデータ転送装置のコンピュータを、
    ファイル名と前記ファイル名に対応するファイルを転送する複数の転送先ノードを指定した転送要求を受け付ける受付部、
    前記転送要求を転送先ノード毎のノード転送要求に分解し、前記分解したノード転送要求を前記複数の転送先ノードのアドレスに基づいてソートした後に、前記ファイル名に対応付けて連結して転送ノードの順番を示すリストを生成し、前記リトに基づい、前記ファイル名に対応するファイルを細分化した部分ファイルを近接ノード間転送するようにファイル転送依頼を行う順序管理部
    記依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる配信管理部、
    として機能させるプログラムを格納したコンピュータ可読な記録媒体。
  8. ファイルサーバから複数のノードに対するデータ転送を管理するデータ転送方法に於いて、
    ファイル名と前記ファイル名に対応するファイルを転送する複数の転送先ノードを指定した転送要求を受け付ける受付プロセスと、
    前記転送要求を転送先ノード毎のノード転送要求に分解し、前記分解したノード転送要求を前記複数の転送先ノードのアドレスに基づいてソートした後に、前記ファイル名に対応付けて転送ノードの順番を示すリストを生成し、前記リトに基づい、前記ファイル名に対応するファイルを細分化した部分ファイルを近接ノード間転送するようにファイル転送依頼を行う順序管理プロセスと、
    記依頼を受けた際に、依頼先となる前記ファイルサーバ及びノードにファイル転送を指示して実行させる配信管理プロセスと、
    を備えたことを特徴とするデータ転送方法。
JP2007147711A 2007-06-04 2007-06-04 データ転送スケジュール装置、プログラム、記録媒体及び方法 Active JP5205817B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007147711A JP5205817B2 (ja) 2007-06-04 2007-06-04 データ転送スケジュール装置、プログラム、記録媒体及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007147711A JP5205817B2 (ja) 2007-06-04 2007-06-04 データ転送スケジュール装置、プログラム、記録媒体及び方法

Publications (2)

Publication Number Publication Date
JP2008299769A JP2008299769A (ja) 2008-12-11
JP5205817B2 true JP5205817B2 (ja) 2013-06-05

Family

ID=40173209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007147711A Active JP5205817B2 (ja) 2007-06-04 2007-06-04 データ転送スケジュール装置、プログラム、記録媒体及び方法

Country Status (1)

Country Link
JP (1) JP5205817B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7012501B2 (ja) 2016-10-25 2022-01-28 タイコ エレクトロニクス (シャンハイ) カンパニー リミテッド コネクタおよびコネクタアセンブリ

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020057033A (ja) * 2018-09-28 2020-04-09 株式会社リコー 処理実行装置、処理実行プログラムおよび処理実行システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0498557A (ja) * 1990-08-17 1992-03-31 Toyota Motor Corp ファイル転送方法
JPH07200426A (ja) * 1993-12-28 1995-08-04 Nec Corp 逐次型中継ファイル転送装置
JPH08314821A (ja) * 1995-05-22 1996-11-29 Canon Inc データ転送方法
JP3212891B2 (ja) * 1995-10-31 2001-09-25 日本電気株式会社 ファイル転送システムおよびファイル転送方法
JP2853635B2 (ja) * 1996-01-29 1999-02-03 日本電気株式会社 ファイル一括送信スケジューリング方式
JP4254100B2 (ja) * 2001-12-12 2009-04-15 ソニー株式会社 コンテンツ配信管理システム、情報処理装置、および方法、並びにコンピュータ・プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7012501B2 (ja) 2016-10-25 2022-01-28 タイコ エレクトロニクス (シャンハイ) カンパニー リミテッド コネクタおよびコネクタアセンブリ

Also Published As

Publication number Publication date
JP2008299769A (ja) 2008-12-11

Similar Documents

Publication Publication Date Title
US12001677B2 (en) Data storage space recovery via compaction and prioritized recovery of storage space from partitions based on stale data
AU2015221548B2 (en) A computer implemented method for dynamic sharding
US9971823B2 (en) Dynamic replica failure detection and healing
EP2904495B1 (en) Locality aware, two-level fingerprint caching
JP5360978B2 (ja) ファイルサーバ、及びファイルサーバにおけるファイル操作通知方法
JP3526474B2 (ja) ネットワークにおける配布情報管理システム
US20140081919A1 (en) Distributed backup system for determining access destination based on multiple performance indexes
EP4207688A1 (en) Asynchronous bookkeeping method and apparatus for blockchain, medium, and electronic device
CN106537350A (zh) 用于处理数据处理系统中的数据质量异常的方法
WO2015196686A1 (zh) 一种数据存储方法以及一种数据存储管理服务器
US20150106468A1 (en) Storage system and data access method
US9137780B1 (en) Synchronizing multicast data distribution on a computing device
CN116501783A (zh) 一种分布式数据库数据导入方法及系统
JP5205817B2 (ja) データ転送スケジュール装置、プログラム、記録媒体及び方法
JP2011070636A (ja) データ同期システム、データ同期方法、情報処理装置、情報処理方法、およびプログラム
CN117376364A (zh) 一种数据处理方法及相关设备
CN109845199B (zh) 合并网络设备架构中的读取请求
JP5884566B2 (ja) バッチ処理システム、進捗状況確認装置、進捗状況確認方法、及びプログラム
US6883017B1 (en) System and method for distributing and collecting information between a server and a plurality of clients by merging a communication block from a final client of each circulation destination in each of a plurality of groups
JP6607044B2 (ja) サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム
JP4140014B2 (ja) クライアントサーバシステムおよびクライアントサーバシステムのデータ処理方法
CN112395296A (zh) 一种大数据归档方法、装置、设备及存储介质
JP5803908B2 (ja) ストレージシステム及びストレージシステムの制御方法
JP5530878B2 (ja) 分散システムにおけるデータレプリケーション管理方法
JP5262593B2 (ja) データ転送システム、及びデータ転送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120717

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5205817

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150