情報処理システムと該情報処理システムの重複ファイル排除方法、情報処理装置及びその制御方法と制御プログラム
【課題】複数のコンピュータが接続する情報処理システムにおける重複データの排除と保持データの集中管理とにより、リソースを有効利用すること。
【解決手段】処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索部と、同一のデータファイルを含むフォルダがデータ保持手段内に無い場合は、データファイルを含むフォルダをデータ保持手段に記憶する記憶部と、データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルからデータ保持手段内のデータファイルへのパスを設定するパス設定部と、情報処理装置のフォルダが保持するデータファイルを全て削除する削除部と、を備えることを特徴とする。
【解決手段】処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索部と、同一のデータファイルを含むフォルダがデータ保持手段内に無い場合は、データファイルを含むフォルダをデータ保持手段に記憶する記憶部と、データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルからデータ保持手段内のデータファイルへのパスを設定するパス設定部と、情報処理装置のフォルダが保持するデータファイルを全て削除する削除部と、を備えることを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システムにおいて重複ファイルを排除する技術に関する。
【背景技術】
【0002】
上記技術分野において、特許文献1では、記憶装置ユニット(HDU)内における重複データをハッシュコードの比較により検出して、重複データに対しては、一方を破棄する処理やリンクに置き換える処理、重複しないデータのみのコピー処理などを行なうことが記載されている。また、特許文献2では、複数のディスクドライブからなる記憶システムにおいて、データの重複除外範囲についてハッシュ値の表を保持して、ディスクドライブが電源OFFであっても重複除外処理ができる技術が記載されている。また、特許文献3には、複数のディスクからなるストレージアレイにデータを保持する場合に、仮想テープライブラリ(VTL:Virtual Tape Library)によってデータセット内の同じアンカーポイントとその前後のデルタによって重複データを識別する。そして、重複データをストレージインジケータで置き換えることによって記憶データを圧縮することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−251725号公報
【特許文献2】特開2009−080788号公報
【特許文献3】特表2009−535704号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記従来技術は、いずれもディスクなどからなる個別の記憶媒体内における、重複データを排除する技術である。したがって、記憶媒体内の重複データの一方は残し他方はポインタに置き換えることで自己完結的に解決が可能である。ところが、ネットワークを介して多くのコンピュータや周辺機器などが接続されたコンピュータシステムにおいては、記憶媒体間やコンピュータ間、コンピュータと記憶媒体間での重複データを削除することも求められる。
【0005】
たとえば、それぞれ各ユーザ個人で使用するクライアントPCのデータは、ユーザ自らの意思で自由に管理して上記従来技術を適用すれば重複データの排除は可能である。しかしながら、コンピュータシステムを構成する全サーバ、全クライアントPCが含むディスク全体を対象にすれば、複数の重複したデータが存在する可能性が極めて高くなる。なぜなら、コンピュータシステムにおいて複数のクライアントPCで情報の共有をするには、WEB上やファイルサーバ上に共有ファイルをアップデートする必要があり、また、それぞれのクライアントPCが同一ファイルをダウンロードするためである。また、各クライアントPCには重複データが無く1つデータであったとしても、二度と使用する必要がないファイルを削除し忘れたりすると、システム内には重複データとして残ってしまうことになる。さらに、ユーザ意識の問題による支給PCの私物化なども原因となる。かかる問題点の解決には、個別の装置内における重複データの排除とは異なる新たな工夫が求められる。
【0006】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明に係る装置は、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする。
【0008】
上記目的を達成するため、本発明に係る方法は、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする。
【0009】
上記目的を達成するため、本発明に係るプログラムは、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする。
【0010】
上記目的を達成するため、本発明に係るシステムは、
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする。
【0011】
上記目的を達成するため、本発明に係る方法は、
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする。
【発明の効果】
【0012】
本発明によれば、複数のコンピュータが接続する情報処理システムにおける重複データの排除と保持データの集中管理とにより、リソースを有効利用できる。
【図面の簡単な説明】
【0013】
【図1】本発明の第1実施形態に係る情報処理装置の構成を示すブロック図である。
【図2】本発明の第2実施形態に係る情報処理システムの構成を示すブロック図である。
【図3】本発明の第2実施形態に係る情報処理システムにおける各装置の機能構成の概略とその動作手順を示すブロック図である。
【図4】本発明の第2実施形態に係る重複検索サーバのハードウェア構成を示すブロック図である。
【図5A】本発明の第2実施形態に係るショートカットデータの構成を示す図である。
【図5B】本発明の第2実施形態に係るバックアップDBとデータ参照DBとの構成を示す図である。
【図6】本発明の第2実施形態に係る重複検索サーバの処理手順を示すフローチャートである。
【図7】本発明の第2実施形態に係るバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。
【図8】本発明の第2実施形態に係る重複データの判断処理を含む処理手順を示すフローチャートである。
【図9】本発明の第2実施形態に係る重複データ有りの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。
【図10】本発明の第2実施形態に係る重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理を含む処理手順を示すフローチャートである。
【図11】本発明の第2実施形態に係る重複データ無しの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。
【図12】本発明の第2実施形態に係る処理済みでないバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。
【図13】本発明の第2実施形態に係る後処理を含む処理手順を示すフローチャートである。
【図14】本発明の第2実施形態に係るクライアントPCのハードウェア構成を示すブロック図である。
【図15】本発明の第2実施形態に係るショートカットテーブルの構成を示す図である。
【図16】本発明の第2実施形態に係るクライアントPCの処理手順を示すフローチャートである。
【図17】本発明の第2実施形態による具体例の処理における起動前起点での各部データを示す図である。
【図18】本発明の第2実施形態による具体例の処理における初期化時点(S701)での各部データを示す図である。
【図19】本発明の第2実施形態による具体例の処理におけるバックアップデータ数の検出時点(S707)での各部データを示す図である。
【図20】本発明の第2実施形態による具体例の処理における1番目のバックアップデータの重複データ有無判断中(S809の判定)の各部データを示す図である。
【図21】本発明の第2実施形態による具体例の処理における重複データ無しの場合のデータ参照サーバ書込準備時(S1007)の各部データを示す図である。
【図22】本発明の第2実施形態による具体例の処理における重複データ無しの場合のデータ参照サーバ書込時(S1105)及びショートカットパス設定時(S1109)の各部データを示す図である。
【図23】本発明の第2実施形態による具体例の処理における1回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【図24】本発明の第2実施形態による具体例の処理における2番目のバックアップデータの重複データ有りの判断時(S809)及びショートカットパス設定時(S911)の各部データを示す図である。
【図25】本発明の第2実施形態による具体例の処理における2回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【図26】本発明の第2実施形態による具体例の処理における重複データ処理の終了時点(S1307/S1309)での各部データを示す図である。
【発明を実施するための形態】
【0014】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
【0015】
[第1実施形態]
本発明の第1実施形態としての情報処理装置100について、図1を用いて説明する。 図1に示すように、情報処理装置100は、検索部120と、記憶部130と、パス設定部140と、削除部150と、を含む。検索部120は、処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持部110内に有るか否かを検索する。記憶部130は、同一のデータファイルBを含むフォルダがデータ保持部110内に無い場合は、データファイルBを含むフォルダYYをデータ保持部110に記憶する。
【0016】
パス設定部140は、データファイルAを保持する全ての情報処理装置160、180のフォルダAA,CCに対して、当該フォルダ内のショートカットファイルA,Cからデータ保持部110内のデータファイルAへのパス190を設定する。また、パス設定部140は、データファイルBを保持する情報処理装置170のフォルダBBに対して、当該フォルダ内のショートカットファイルBからデータ保持部110内のデータファイルBへのパス190を設定する。削除部150は、情報処理装置160,170のフォルダAA,CCが保持するデータファイルAを全て削除する。また、削除部150は、情報処理装置170のフォルダBBが保持するデータファイルBを削除する。
【0017】
本実施形態によれば、複数のコンピュータが接続する情報処理システムにおける重複データの排除と保持データの集中管理とにより、リソースを有効利用できる。
【0018】
[第2実施形態]
本発明の第2実施形態によれば、重複検索サーバに導入した処理を管理機端末PCから実行することにより、自動的に全クライアントPC上のデータが、データ参照サーバ上の、同一ハッシュ値のデータが保管されたフォルダへのショートカットファイルに置き換えられ、削除される。データ参照サーバに同一ハッシュ値のデータがない場合は、データが新規にデータ参照サーバに追加され、そのデータへのパスがデータベースに追加される。
【0019】
上記、本実施形態による重複検索サーバの処理手順は、次のような手順である。まず、全クライアントPCのデータを重複検索サーバへ統合バックアップして、全データのそれぞれのハッシュ値を算出してデータベースに書き込む。次に、そのバックアップデータベースを参照した対象データのハッシュ値と、現在までの一意なデータが統合保管されているデータ参照サーバを一覧できるデータ参照データベースに保持された対象データのハッシュ値とを1つ1つ比較する。そして、バックアップデータベースの対象データが重複データであるか非重複データであるかの比較をする。比較の結果、対象バックアップデータが非重複データの場合は、データ参照サーバ上に新たに対象バックアップデータを複製して、データ参照データベースに新データの情報を追加する。対象バックアップデータが重複データの場合は、データ参照サーバへのデータ複製は行わない。この状態で、対象バックアップデータが非重複データであっても重複データであっても、データ参照サーバ上にデータが存在することになる。最後に、クライアントPC上の対象バックアップデータが保管されたフォルダに、データ参照サーバ上の同一データファイルへのショートカットを作成して、クライアントPC上の対象バックアップデータを削除する。本実施形態の処理手順によって、情報処理システム全体の重複ファイルを排除することができ、かつ、システムに接続する全てのクライアントPC上のデータをサーバに一括してマイグレーションし、システム全体としてディスクなどの記憶媒体の有効活用を実現することができる。
【0020】
なお、本実施形態では、情報処理システム内のバックアップデータファイルの重複を無くす例を代表して説明するが、いかなるデータファイルあるいはデータの一部の重複を無くすためにも容易に適用できる。さらに、データはプログラムであってもよく、本実施形態のデータはクライアントPCが処理する全てのデジタルデータを含む概念である。
【0021】
《本実施形態の情報処理システムの構成》
図2は、本実施形態に係る情報処理システム200の構成を示すブロック図である。
【0022】
図2を参照すると、本実施形態の情報処理システム200は、クライアントPC・N100〜N10XとクライアントサーバN11Xとを含むクライアント装置を有する。なお、上記クライアントPC・N100〜N10Xには、デスクトップコンピュータN100〜N10Kや携帯端末N10MやノートパソコンN10N〜N10Xを含んでよい。情報処理システム200は、重複検索サーバN200と、データ参照サーバN300と、管理端末PC・N400とを有する。クライアントPC・N100〜N10Xと、重複検索サーバN200と、データ参照サーバN300と、管理端末PC・N400とは、ネットワークN500を介して、互いに接続される。接続は有線であっても無線であってもよい。
【0023】
なお、管理端末PC・N400は、重複検索サーバN200に直接接続されてよい(図2に破線で示す)。また、データ参照サーバN300は、本情報処理システムが参照するただ1つのデータを保持するため、図2のように並列構造であるのが望ましい。
【0024】
(情報処理システムにおける各装置の機能構成とその動作手順の概略)
図3は、情報処理システム200における各装置の機能構成の概略とその動作手順を示すブロック図である。なお、図3には、重複検索サーバN200を中心に機能構成部とそれらのデータ及び信号の接続と、動作手順のステップ番号を示している(ステップ番号は、図7〜図13のステップ番号に対応する)。動作手順の詳細な処理は図7〜図13に従って後述するので、ここでは機能構成部の機能と動作を主に説明する。
【0025】
クライアントPC・N100〜N10Xに内蔵されるフォルダは、バックアップデータ元フォルダF110〜F11Xである。
【0026】
重複検索サーバN200に内蔵される処理部は、中央処理部SW10と、バックアップ制御部SW20と、比較計算部SW30と、データ作成部SW40とである。なお、本実施形態においては、これら処理部は重複検索サーバN200のCPUが各処理モジュールプログラムを実行することにより実現され、各処理部間の信号伝達は各処理モジュールプログラム間の引き数により実現される。しかしながら、処理部の一部あるいは全部がそれぞれのCPUを有していて、各処理部間の信号伝達はコンピュータ通信により行なわれてもよい。
【0027】
また、重複検索サーバN200に内蔵されるデータベースは、重複検索サーバN200が処理するクライアントPCのバックアップデータ元フォルダを管理するバックアップDB・D10と、データ参照サーバのデータ参照先フォルダを管理するデータ参照DB・D20とである。また、重複検索サーバN200に内蔵されるレジスタは、バックアップDB・D10を管理するためのBUID指数レジスタR10及びBUID合計レジスタR20と、データ参照DB・D20を管理するためのFDID指数レジスタR30及びFDID合計レジスタR40とである。また、重複検索サーバN200に内蔵されるフォルダは、クライアントPCから転送されたバックアップデータを格納する格納先フォルダF210〜F21Xである。また、重複検索サーバN200に内蔵されるカウンタは、処理するバックアップデータ数を示すカウンタC10である。
【0028】
データ参照サーバN300に内蔵されるフォルダは、参照先のバックアップデータを保持するデータ参照先フォルダF310〜F310である。
【0029】
本実施形態で処理される対象データは、バックアップデータF10〜F1Xと、ショートカットファイルF30〜F3Xとである。バックアップデータF10〜F1Xは、データ参照サーバのデータ参照フォルダに保持され、クライアントPCのバックアップ元フォルダや格納先フォルダからは削除される。そのため、図3では削除されるバックアップデータは破線で示されている。クライアントPCのバックアップ元フォルダのバックアップデータF10〜F1Xは削除されて、ショートカットファイルF30〜F3Xに置き換えられる。
【0030】
各機能構成部の概要動作をさらに詳細に説明する。
【0031】
クライアントPC・N100〜N10Xは各クライアントPCであり、本情報処理システムのデータ排除対象である。重複検索サーバN200は本情報処理システムの処理サーバであり、データの処理を行うサーバである。データ参照サーバN300は全非重複データの格納先サーバであり、クライアントPCに保管されるショートカットファイルのデータ参照先サーバである。管理端末PC・N400は、本情報処理システムを起動させる端末であり、重複検索サーバの中央処理部SW10を起動させる端末である。
【0032】
クライアントPC・N100〜N10Xのバックアップデータ元フォルダF110〜F11Xは、クライアントPC上のバックアップデータを保存しているフォルダである。バックアップDBに当フォルダへのパス情報を書き込む
重複検索サーバN200の中央処理部SW10は管理端末PC・N400からの起動命令から起動する処理部で、主な機能として各処理部への起動を中心に行う司令塔の役割を持つ処理部である。また、処理終了時の管理端末PC・N400への処理終了伝達も行う。バックアップ制御部SW20は中央処理部SW10からの起動命令により起動する処理部で、主な機能として全クライアントPCのバックアップの役割を持つ処理部である。比較計算部SW30は中央処理部SW10からの起動命令により起動する処理部で、主な機能としてバックアップDBとデータ参照サーバDBとのデータ比較や、各レジスタ値のデータ比較の役割を持つ処理部である。データ作成部SW40は中央処理部SW10からの起動命令により起動する処理部で、主な機能としてデータおよびフォルダの生成や削除の役割や、ショートカットファイルの作成の役割を持つ処理部である。
【0033】
バックアップDB・D10は、バックアップ制御部SW20からのバックアップ命令によりデータごとに昇順のIDを与えた、クライアントPCのフォルダへのパスを保持するパス保持部であるバックアップデータのデータベースである。バックアップDB・D10が取得する項目は、バックアップIDと、バックアップIDに対応付けられたファイル名、バックアップ格納先フォルダパス、ハッシュ値、バックアップ元クライアントフォルダパスとの5つである(図5B参照)。
【0034】
データ参照DB・D20は、データ作成部SW40からの非重複データの作成命令によりデータごとに昇順のIDを与えた、データ参照サーバのフォルダへのパスを蓄積するパス蓄積部であり、データ参照サーバN300内のデータを管理するデータベースである。取得する項目は、フォルダIDと、フォルダIDに対応付けられたファイル名、データ参照フォルダパス、ハッシュ値との4つである(図5B参照)。
【0035】
BUID指数レジスタR10は、バックアップDBの主キーとなるID値を示すレジスタである。BUID合計レジスタR20は、バックアップDBのデータ数の合計値を示すレジスタである。バックアップ制御部SW20により生成されたカウンタ数をそのまま反映する。FDID指数レジスタR30は、データ参照DBの主キーとなるID値を示すレジスタである。FDID合計レジスタR40は、データ参照DBのデータ数の合計値を示すレジスタである。
【0036】
格納先フォルダF210〜F21Xは、バックアップ制御部SW20による全クライアントPCのバックアップを一時保存しているフォルダである。格納先フォルダF210〜F21Xに基づき、バックアップ制御部SW20はバックアップDBに当フォルダへのパス情報を書き込む。
【0037】
データ参照先フォルダF310〜F31Xは、データ参照サーバN300上に保管されるデータの保管先で、クライアントPCがデータを参照する先のフォルダである。
【0038】
重複検索サーバN200の稼働中、データ作成部SW40は、対象バックアップデータが非重複データであった場合、データ参照サーバN300に新規のデータ参照フォルダを作成する。バックアップデータF10〜F1Xは、元々クライアントPC上に保管されていたデータである。また、バックアップ制御部SW20によりバックアップされる対象のデータでもある。また、データ作成部SW40によりデータを削除されるデータ、かつ、データ参照先フォルダへ保管されるデータでもある。
【0039】
ショートカットS10は、クライアントPCのバックアップ元フォルダから、対象バックアップデータが格納されたデータ参照先フォルダを参照するショートカットファイルである。このショートカットS10は、対象のバックアップデータが格納されたデータ参照先フォルダへのショートカットとしてデータ作成部SW40が作成し、通知されたものである。
【0040】
カウンタC10は、バックアップ制御部SW20からバックアップ命令により作成されるバックアップDBのID数をカウントするカウンタである。カウンタは、そのままバックアップ制御部SW20によりBUID合計レジスタ値に反映される。
【0041】
《本実施形態に係る重複検索サーバのハードウェア構成》
図4は、本実施形態に係る重複検索サーバN200のハードウェア構成を示すブロック図である。
【0042】
図4で、CPU410は演算制御用のプロセッサであり、プログラムを実行することで図3の各機能構成部を実現する。ROM420は、初期データ及びプログラムなどの固定データ及びプログラムを記憶する。通信制御部430は、ネットワークを介してクライアントPC・N100〜N10X、データ参照サーバN300及び管理端末PC・N400と通信する。通信は無線でも有線でもよい。
【0043】
RAM440は、CPU410が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM440には、本実施形態の実現に必要なデータを記憶する領域が確保されている。441は、BUID指数レジスタである。442は、BUID合計レジスタである。443は、FDID指数レジスタである。444は、FDID合計レジスタである。445は、カウンタでありバックアップDB・D10のカウンタC10として機能する。446は、重複検索サーバN200が各バックアップデータに対応して作成するショートカットデータである(図5A参照)。
【0044】
ストレージ450は、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータ又はプログラムが記憶されている。451は、一時的にバックアップデータを格納する格納先フォルダである。452は、バックアップDBである(図5B参照)。453は、データ参照DBである(図5B参照)。ストレージ450には、以下のプログラムが格納される。454は、全体の処理を実行させる重複ファイル検索プログラムであり、図3の中央処理部SW10の処理に対応する(図6参照)。455は、クライアントPCのバックアップデータを制御するバックアップ制御モジュールであり、図3のバックアップ制御部SW20の処理に対応する。456は、重複ファイル検索プログラム454の分岐処理においてレジスタ内容やカウンタ値を比較する比較形成モジュールであり、図3の比較計算部SW30の処理に対応する。457は、データ参照サーバへのバックアップデータの記憶やショートカットの作成を行なうデータ作成モジュールであり、図3のデータ作成部SW40の処理に対応する。
【0045】
なお、図4には、本実施形態に必須なデータやプログラムのみが示されており、OSなどの汎用のデータやプログラムは図示されていない。
【0046】
(ショートカットデータの構成)
図5Aは、重複検索サーバN200のデータ作成部SW40が作成するショートカットデータ446の構成を示す図である。
【0047】
ショートカットデータ446には、クライアントPCのバックアップ元クライアントフォルダへのバックアップ元クライアントフォルダパス511に対応付けられて、次のデータが記憶される。そのデータは、ファイル名512と、データ参照サーバN300のデータ参照先フォルダパス513と、ファイル内のバックアップデータのハッシュ値514とである。
【0048】
(バックアップDBとデータ参照DBとの構成)
図5Bは、重複検索サーバN200のバックアップDB452とデータ参照DB453の構成を示す図である。
【0049】
バックアップDB452には、バックアップID521に対応付けられて、次のデータが記憶される。そのデータは、ファイル名522と、重複検索サーバN200の格納先フォルダへのバックアップ格納先フォルダパス523と、ファイル内のバックアップデータのハッシュ値524と、バックアップ元クライアントフォルダパス525とである。
【0050】
データ参照DB453には、データ参照先フォルダのフォルダID531に対応付けられて、次のデータが記憶される。そのデータは、ファイル名532と、データ参照サーバN300のデータ参照先フォルダへのデータ格納先フォルダパス533と、ファイル内のバックアップデータのハッシュ値524とである。
【0051】
《本実施形態に係る重複検索サーバの処理手順》
図6は、本実施形態に係る重複検索サーバN200の処理手順を示すフローチャートである。このフローチャートは、CPU410によってRAM440を使用しながら実行されて、図3の重複検索サーバN200の各処理部の機能が実現される。また、各処理部がCPUを有する場合には、各ステップは各処理部の処理を含み、処理部間の情報伝達はコンピュータ間通信で実現される。従って、図6のフローチャートは中央処理部SW10の処理手順に対応するものである、なお、図6の丸数字は、図7〜図13の丸数字に対応する。
【0052】
図6のフローチャートは管理端末PCからの起動指示によりスタートする。まず、ステップS610において、重複検索サーバN200の初期化を行なう(図7参照)。次に、ステップS620において、クライアントPCから重複検索サーバN200の格納先フォルダに複写した新しいバックアップデータの有無を判断する(図8参照)。バックアップデータが無ければ、ステップS690の管理端末PC・N400への報告をして処理を終了する。
【0053】
一方、バックアップデータが有ればステップS630に進んで、そのバックアップデータの重複データがデータ参照サーバN300に有るか否かを判定する(図9参照)。重複データがデータ参照サーバN300に有ると判別されればステップS640に進んで、データ参照サーバN300のデータ参照先フォルダのバックアップデータへのショートカットを作成する。そして、クライアントPCのバックアップデータ元フォルダにショートカットを設定し、元のバックアップデータは削除する(図9参照)。一方、重複データがデータ参照サーバN300に無いと判別されればステップS650に進んで、格納先フォルダに一時格納されているバックアップデータをデータ参照サーバN300のデータ参照先フォルダに記憶する(図10参照)。そして、ステップS660において、ステップS650で記憶したデータ参照サーバN300のデータ参照先フォルダのバックアップデータへのショートカットを作成する。そして、クライアントPCのバックアップデータ元フォルダにショートカットを設定し、元のバックアップデータは削除する(図11参照)。
【0054】
ステップS640あるいはS660で、クライアントPCのバックアップデータをショートカットに置き換えた後、ステップS670において、全てのバックアップデータを処理したか否かを判断する(図12参照)。まだ処理していないバックアップデータが残っていればステップS630に戻って、次のバックアップデータの処理を繰り返す。全てのバックアップデータを処理していればステップS680に進んで、後処理をした後、ステップS690において管理端末PCに処理終了を通知して、重複検索サーバN200の処理を終了する。
【0055】
以下、図7〜図13に図6の各ステップを更に詳細に示したフローチャートを示す。なお、図7〜図13のフローチャートにおいては、中央処理部SW10により各処理部が起動されるように記載されている。しかし、上述の如く、図4の構成であれば引き数を持って各モジュールを起動するものであり、複数CPUで構成されていれば各処理部へのコンピュータ通信により起動することになる。
【0056】
(バックアップデータ有無の判断処理)
図7は、バックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。図7は、管理端末機PC・N400からの起動からバックアップ制御部SW20によるバックアップ処理の終了までを示す。管理機端末PC・N400が中央処理部SW10を起動して、図7の処理が開始する。
【0057】
まず、ステップS701において、中央処理部SW10は、BUID指数レジスタR10とFDID指数レジスタR30の値を初期化する。すなわち、BUID指数レジスタR10=1とし、FDID指数レジスタR30=1とする。次に、ステップS703において、中央処理部SW10はバックアップ制御部SW20を起動する。
【0058】
次に、ステップS705において、バックアップ制御部SW20は、全クライアントPCデータの統合バックアップを開始する。ここで、格納先としては、格納先フォルダF210〜F21Xを指定する。次に、ステップS707において、バックアップ制御部SW20は、バックアップのデータベースであるバックアップDB・D10に、ステップS705におけるバックアップデータを反映する。なお、ステップS705でデータをバックアップする度にバックアップ数をカウントするカウンタC10の値を反映する。次に、ステップS709において、バックアップ制御部SW20は、カウンタC10を読み、カウンタC10=0かどうか判定する。すなわち、バックアップデータがないかを判定する。
【0059】
バックアップデータが無ければ図13に進む。一方、バックアップデータがあればステップS711に進んで、バックアップ制御部SW20は、ステップS705、S707が終了した時点でBUID合計レジスタR20とカウンタC10とを読み出す。そして、BUID合計レジスタR20にカウンタC10の値を書き込みレジスタ値を更新する。すなわち、BUID合計レジスタR20=カウンタC10とする。次に、アウテップS713において、バックアップ制御部SW20は処理を終了し、中央処理部SW10にバックアップ終了の伝達をする。
【0060】
(重複データの判断処理)
図8は、重複データの判断処理を含む処理手順を示すフローチャートである。図8は、比較計算部SW30による重複データ検査及び終了までを示す。
【0061】
まず、ステップS801において、中央処理部SW10は、ステップS713においてバックアップ制御部SW20の終了伝達を受け取った時点で、自動的に比較計算部SW30を起動する。また、ステップS1209において比較計算部SW30のまだ重複排除検索が必要なバックアップデータが存在することの伝達を受け取った時点で、再自動的に比較計算部SW30を起動する。
【0062】
次に、ステップS803において、比較計算部SW30は、FDID指数レジスタR30とFDID合計レジスタR40を読込み、FDID指数レジスタR30の値がFDID合計レジスタR40の値より大きい値かを比較する(FDID指数レジスタR30>FDID合計レジスタR40)。すなわち、対象バックアップデータはデータ参照DB内データと全て比較したか、を判定する。FDID指数レジスタR30>FDID合計レジスタR40の場合はステップS811に進んで、比較計算部SW30は処理を終了して、中央処理部SW10に比較系差結果として「非重複」データであることを伝達する。
【0063】
一方、FDID指数レジスタR30≦FDID合計レジスタR40の場合はステップS805に進み、BUID指数レジスタR10とFDID指数レジスタR30とを読み込む。次に、ステップS807において、ステップS805で読み込んだBUID指数レジスタR10とFDID指数レジスタR30とをそれぞれのデータベースのID値としたハッシュ値を比較する。すなわち、バックアップDB・D10におけるバックアップIDがBUID指数レジスタ値のハッシュ値=データ参照DB・D20におけるフォルダIDがFDID指数レジスタ値のハッシュ値を比較する。その結果から、対象データは既にデータ参照サーバに存在するかを判断する。ハッシュ値比較で一致すればステップS813に進んで、比較計算部SW30は処理を終了し、中央処理部SW10に比較計算結果として、「重複」データであることを伝達する。
【0064】
一方、ハッシュ値比較で一致しなければステップS809に進んで、比較計算部SW30は、FDID指数レジスタR30の値に+1をした値を書き込む(FDID指数レジスタR30=FDID指数レジスタR30+1)。次に、ステップS803に戻って、比較計算部SW30は、再び、FDID指数レジスタR30とFDID合計レジスタR40を読込み、FDID指数レジスタR30の値がFDID合計レジスタR40の値より大きい値かを比較する(FDID指数レジスタR30>FDID合計レジスタR40)。
【0065】
(重複データ有りの場合のクライアントPC用のショートカット作成処理)
図9は、重複データ有りの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。図8での重複データ検査の結果、対象データが重複データであった場合の処理方法を示す。
【0066】
ステップS901において、中央処理部SW10は、ステップS813の比較計算部SW30の「対象ファイルが重複データ」である伝達を受け取った時点で、自動的にデータ作成部SW40を起動する。次に、ステップS903において、データ作成部SW40は、FDID指数レジスタR30を読み込む。次に、ステップS905において、データ作成部SW40は、データ参照DB・D20を読み込む。次に、ステップS907において、データ作成部SW40は、BUID指数レジスタR10を読み込む。次に、ステップS909において、データ作成部SW40は、バックアップDB・D10を読み込む。次に、ステップS911において、データ作成部SW40は、ステップS909で読み込んだバックアップDB・D10のバックアップID列の内、ステップS907で読み込んだBUID指数レジスタR10の値の行のバックアップ元クライアントフォルダパスを参照する。そして、対象のバックアップ元クライアントパス上に、ステップS905で読み込んだデータ参照DB・D20のフォルダID列の内、ステップS903で読み込んだFDID指数レジスタR30の値の行のデータ参照先フォルダパスへのショートカットS10を新規作成する。
【0067】
次に、ステップS913において、データ作成部SW40は、ステップS909で読み込んだバックアップDB・D10のバックアップID列の内、ステップS907で読み込んだBUID指数レジスタR10の行の値のファイル名とバックアップ元クライアントフォルダパスとを参照する。そして、対象のバックアップ元クライアントパス上の同一ファイル名のファイルを削除する。次に、ステップS916において、データ作成部SW40は、データ作成部SW40を終了し、中央処理部SW10にデータ作成終了を伝達する。
【0068】
(重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理)
図10は、重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理を含む処理手順を示すフローチャートである。図10は、図8での重複データ検査の結果、対象データが非重複データであった場合の処理方法の内、データ参照サーバへのバックアップデータ記憶処理を示す。
【0069】
まず、ステップS1001において、中央処理部SW10は、ステップS811の比較計算部SW30の「対象ファイルが非重複データ」である伝達を受け取った時点で、自動的にデータ作成部SW40を起動する。次に、ステップS1003において、データ作成部SW40は、FDID指数レジスタR30を読み込む。次に、ステップS1005において、データ作成部SW40は、データ参照サーバN300のDドライブ上にバックアップ参照先フォルダF31Xを新規作成する。なお、フォルダ名は、ステップS1003で読み込んだFDID指数レジスタR30の値にする。
【0070】
次に、ステップS1007において、データ作成部SW40は、FDID合計レジスタR40の値に+1をした値を書き込む(FDID合計レジスタR40=FDID合計レジスタR40+1)。次に、ステップS1009において、データ作成部SW40は、データ参照DB・D20を読み込み、データベースの最後行に、ステップS1003で読み込んだFDID指数レジスタR30の値がフォルダIDの値となるべく行を追加する。この時点で、データ参照DB・D20の最終行には、フォルダIDとデータ参照先フォルダパスの列とを書き込む。
【0071】
次に、ステップS1011において、データ作成部SW40は、BUID指数レジスタR10を読み込む。次に、ステップS1013において、データ作成部SW40は、バックアップDB・D10を読み込む。次に、ステップS1015において、データ作成部SW40は、対象のバックアップデータF10を読み込む。すなわち、ステップS1013で読み込んだバックアップDB・D10のバックアップIDの値が、ステップS1011で読み込んだBUID指数レジスタR10の値である行の、バックアップ格納先フォルダパスを参照し、対象のバックアップデータを読み込む。
【0072】
(重複データ無しの場合のクライアントPC用のショートカット作成処理)
図11は、重複データ無しの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。図11は、図8での重複データ検査の結果、対象データが非重複データであった場合の処理方法の内、図10に続くクライアントPC用のショートカット作成処理を示す。
【0073】
まず、ステップS1101において、データ作成部SW40は、データ参照DB・D20を読み込む。次に、ステップS1103において、データ作成部SW40は、ステップS1005で作成したデータ参照サーバ上の新規フォルダへ、ステップS1015で読み込んだバックアップデータF10を複製する。すなわち、ステップS1101で読み込んだデータ参照DB・D20のバックアップID列が、ステップS1003で読み込んだFDID指数レジスタR30の行のデータ参照先フォルダパスを参照する。そして、対象のパス先へ、ステップS1015で読み込んだバックアップデータF10を複製する。
【0074】
次に、ステップS1105において、データ作成部SW40は、ステップS1009で書き込んだデータ参照DB・D20のフォルダIDの値がFDID指数レジスタR30である空白列のファイル名とハッシュ値とに、ステップS1013で読み込んだバックアップDB・D10のステップS1011で読み込んだバックアップIDの値がBUID指数レジスタR10の行のファイル名とハッシュ値とを書き込む。すなわち、この時点で、ステップS1009で空白であったデータ参照DBの最終行のファイル名とハッシュ値とが書き込まれる。
【0075】
次に、ステップS1107において、データ作成部SW40は、ステップS1013で読み込んだバックアップDB・D10のバックアップID列が、ステップS1011で読み込んだBUID指数レジスタR10の値の行のバックアップ元クライアントフォルダパスの列を参照する。また、対象のバックアップ元クライアントパス上に、ステップS1101で読み込んだデータ参照DB・D20のフォルダID列が、ステップS1011で読み込んだFDID指数レジスタR30の値の行の、データ参照先フォルダパスの列を参照する。そして、対象のデータ参照先フォルダパスへのショートカットS10を新規作成する。すなわち、対象バックアップデータのクライアントパス元へデータ複製したデータ参照先へのショートカットファイルを作成する。
【0076】
次に、ステップS1109において、データ作成部SW40は、ステップS1013で読み込んだバックアップDB・D10のバックアップID列が、ステップS1011で読み込んだBUID指数レジスタR10の値の行の、バックアップ元クライアントフォルダパスの列を参照する。そして、対象のバックアップ元クライアントパス上の対象バックアップデータと同一の対象バックアップデータF10を削除する。この時点で、クライアントPCには、対象バックアップデータは削除され、変わりに非重複データの格納先であるデータ参照サーバへのショートカットに置き換えられる。次に、ステップS1111において、データ作成部SW40は処理を終了し、中央処理部SW10にバックアップ終了を伝達する。
【0077】
(処理済みでないバックアップデータ有無の判断処理)
図12は、処理済みでないバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。図12は、対象データの比較を全て行って終了するか継続するかの判定処理を示す。
【0078】
まず、ステップS1201において、中央処理部SW10は、BUID指数レジスタR10を読み込み、BUID指数レジスタR10の値に+1をした値を書き込む(BUID指数レジスタR10=BUID指数レジスタR10+1)。次に、ステップS1203において、中央処理部SW10は、FDID指数レジスタR30を読み込み、FDID指数レジスタR30の値を初期化する。すなわち、FDID指数レジスタR30=1とする。次に、ステップS1205において、中央処理部SW10は、比較計算部SW30を起動する。
【0079】
次に、ステップS1207において、比較計算部SW30は、BUID指数レジスタR10とBUID合計レジスタR20とを読み込み、BUID指数レジスタR10の値がBUID合計レジスタR20の値より大きい値か比較する(BUID指数レジスタR10>BUID合計レジスタR20)。すなわち、全バックアップデータを全て処理したかの判断である。BUID指数レジスタR10≦BUID合計レジスタR20の場合はステップS1209に進んで、比較計算部SW30は処理を終了し、中央処理部SW10にまだ重複排除検索が必要なバックアップデータが存在することを伝達して、ステップS801に戻る。すなわち、次のバックアップデータの処理へ進む。一方、BUID指数レジスタR10>BUID合計レジスタR20の場合はステップS1211に進んで、比較計算部SW30は処理を終了し、中央処理部SW10に重複排除検索が必要なバックアップデータが存在しないことを伝達して、ステップS1301に進む。
【0080】
(後処理)
図13は、後処理を含む処理手順を示すフローチャートである。図13は、後処理としての最終的な初期化処理を示す。
【0081】
まず、ステップS1301において、中央処理部SW10は、ステップS1211の比較計算部SW30の「必要なバックアップデータが存在しない」という伝達を受け取った時点で、自動的にバックアップ制御部SW20を起動する。
【0082】
次に、ステップS1303において、バックアップ制御部SW20は、バックアップDB・D10のカウンタC10を読み込む。次に、ステップS1305において、バックアップ制御部SW20は、ステップS1303で読み込んだバックアップDB・D10とカウンタC10との情報から、バックアップ格納先フォルダ内の全バックアップデータを消去する。次に、ステップS1307において、バックアップ制御部SW20は、ステップS1303で読み込んだバックアップDB・D10の2行目以降(項目以外)のデータを消去し、カウンタC10を初期化する(カウンタC10=0)。次に、ステップS1309において、バックアップ制御部SW20は、ステップS1305、S1307が終了した時点で、BUID合計レジスタR20の値を初期化する(BUID合計レジスタR20=1)。次に、ステップS1311において、バックアップ制御部SW20は、中央処理部SW10に初期化の終了を伝達する。
【0083】
次に、ステップS1313において、中央処理部SW10は、ステップS1311のバックアップ制御部SW20の「初期化の終了」の伝達を受け取った時点で、自動的に重複検索サーバN200の処理を終了し、管理端末PC・N400へ終了を通知して表示させる。
【0084】
《本実施形態に係るクライアントPCのハードウェア構成》
図14は、本実施形態に係るクライアントPCのハードウェア構成を示すブロック図である。
【0085】
図14で、CPU1410は演算制御用のプロセッサであり、プログラムを実行することで図2Bの各機能構成部を実現する。ROM1420は、初期データ及びプログラムなどの固定データ及びプログラムを記憶する。通信制御部1430は、ネットワークを介して重複検索サーバN200及びデータ参照サーバN300と通信する。通信は無線でも有線でもよい。
【0086】
RAM1440は、CPU1410が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM1440には、本実施形態の実現に必要なデータを記憶する領域が確保されている。1441は、本クライアントPCが処理する処理データである。1442は、重複検索サーバN200から設定されたショートカットデータである(図4参照)。
【0087】
ストレージ1450は、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータ又はプログラムが記憶されている。1451は、データ参照サーバN300のデータを参照するための、重複検索サーバN200から設定されたショートカットデータを保持するショートカットテーブルである(図15参照)。1452は、ショートカットデータの設定が完了すれば削除される、元のバックアップデータである。ストレージ1450には、以下のプログラムが格納される。1453は、処理データ1441を使って全体の処理を実行させるデータ処理プログラムである(図16参照)。1454は、データ処理プログラム1453に含まれ、本実施形態により作成されたショートカットデータによりデータ参照サーバN300のデータファイルを参照するファイルアクセスモジュールである。
【0088】
入力インタフェース1460は、ユーザの指示あるいは機器からのデータ入力のためのインタフェースであり、たとえば、キーボード1461や、ユーザの指示などを入力するポインティングデバイス1462が接続されている。一方、出力インタフェース1470は、外部にデータを出力するためのインタフェースであり、たとえば、表示部1471が接続されている。
【0089】
なお、図14には、本実施形態に必須なデータやプログラムのみが示されており、OSなどの汎用のデータやプログラムは図示されていない。
【0090】
(ショートカットテーブルの構成)
図15は、本実施形態に係るショートカットテーブル1451の構成を示す図である。
【0091】
ショートカットテーブル1451には、クライアントPCのバックアップ元クライアントフォルダ1501に対応付けられて、バックアップ元クライアントフォルダ1501に含まれるファイル名1502が記憶される。そして、ファイル名1502に対応付けられて、次のデータが記憶される。そのデータは、データ参照サーバN300のデータ参照先フォルダパス1503と、ファイル内のバックアップデータのハッシュ値1504とである。
【0092】
《本実施形態に係るクライアントPCの処理手順》
図16は、本実施形態に係るクライアントPC・N100〜N10Xの処理手順を示すフローチャートである。このフローチャートは、CPU1410によってRAM1440を使用しながら実行されて、図14のクライアントPC・N100〜N10Xの各処理部の機能が実現される。
【0093】
まず、ステップS1610において、重複検索サーバN200からの重複データの検索であるか否かが判定される。重複データの検索であればステップS1612に進んで、フォルダ中のデータファイルを重複検索サーバN200の格納策フォルダに送信する。
【0094】
また、ステップS1620においては、重複検索サーバN200からのショートカットパスの設定であるかを判定する。ショートカットパスの設定であればステップS1622に進んで、ショートカットテーブル1451を更新する。次に、ステップS1624において、ショートカットパスがショートカットテーブル1451に記録されたデータファイルを、フォルダから削除する。
【0095】
また、ステップS1630においては、フォルダ内のデータファイルへのアクセスであるかを判定する。データファイルへのアクセスであればステップS1632に進んで、ショートカットテーブル1451に記録されたショートカットパスに従い、データ参照サーバN300のデータ参照フォルダをアクセスして、データを取得する。
【0096】
《本実施形態による具体例の処理》
以下、簡単な具体例に従って、本実施形態の図から〜図13の処理を説明する。
【0097】
(起動前起点での各部データ)
図17は、本実施形態による具体例の処理における起動前起点での各部データ1700を示す図である。
【0098】
図17の総データ一覧は、クライアントPCの新たなファイルが2つ(ハッシュ値が“AAAAAAAAAAAAAAAA”の“a”と“CCCCCCCCCCCCCCCC”“c”)であり、それぞれ“提案フォルダ”と“構築フォルダ”に含まれていること示す。また、レジスタ値は初期化前のデータであり、FDID合計レジスタR40の“4”のみがデータ参照サーバDB・D20に4つのファイルが登録されていることを示している。また、バッックアップDB・D10には、何も登録されていない。また、データ参照DB・D20には、今までデータ参照サーバN300に記憶された4つのファイル(“b”、“c”、“d”、“e”)が、データ参照サーバN300のデータ参照先フォルダパスと共に登録されている。また、バックアップDB・D10のカウンタC10は“0”である。
【0099】
(初期化時点での各部データ)
図18は、初期化時点(S701)での各部データ1800を示す図である。
【0100】
図7のステップS701における初期化を終えた時点のレジスタ値である。BUID指数レジスタR10=1、FDID指数レジスタR30=1である。
【0101】
(バックアップデータ数の検出時点での各部データ)
図19は、バックアップデータ数の検出時点(S707)での各部データ1900を示す図である。
【0102】
図7のステップS707におけるバックアップDB・D10の設定時のデータである。バックアップDB・D10には、図17の総データ一覧のファイル“a”と“c”とが複製されている。そして、バックアップDB・D10のカウンタC10は“2”に設定される。この状態が、図7のステップS708の分岐で判定される。本具体例では、カウンタC10は“2”なのでステップS709の判定では“NO”となり、ステップS711に進む。
【0103】
(1番目のバックアップデータの重複データ有無判断中の各部データ)
図20は、1番目のバックアップデータの重複データ有無判断中(S809の判定)の各部データ2000を示す図である。
【0104】
図20の左上は、図7のステップS711でカウンタC10の“2”をBUID合計レジスタR20に設定したレジスタ値を示している。図20の残りの5つのレジスタ値は、最初のファイル“a”についてデータ参照サーバDB・D20に同じファイルが重複してあるかのファイルIDの順の判定時の、レジスタ値である。本具体例では、データ参照サーバDB・D20に同じファイル“a”は無いので、図8のステップS809でFDID指数レジスタR30が順にカウントアップされる。
【0105】
図20の左下のように、4番目のファイル“e”との比較が終わってFDID指数レジスタR30が“5”になり、図8のステップS803の判定で“YES”と判定し、ステップS811に進む。ファイル“a”がデータ参照サーバDB・D20に無く、データ参照サーバN300のデータ参照先フォルダに記憶されていないことが判明する。
【0106】
(重複データ無しの場合のデータ参照サーバ書込準備時の各部データ)
図21は、重複データ無しの場合のデータ参照サーバ書込準備時(S1007、S1009)の各部データ2100を示す図である。
【0107】
図21のレジスタ値の内、FDID合計レジスタR40は、図10のステップS1007で、データ参照サーバN300に記憶されてないファイル“a”をデータ参照サーバDB・D20に加えるために、カウントアップされる。そして、ステップS1009において、データ参照サーバDB・D20の5番目に新たなファイルを追加するための行が、データ参照先フォルダパスと共に準備される。
【0108】
(重複データ無しの場合のデータ参照サーバ書込時及びショートカットパス設定時の各部データ)
図22は、重複データ無しの場合のデータ参照サーバ書込時(S1103、S1105)及びショートカットパス設定時(S1109)の各部データ2200を示す図である。
【0109】
図11のステップS1103において、ファイル“a”をデータ参照先フォルダパスのデータ参照先フォルダに記憶する。その後、図22のデータ参照サーバDB・D20に示すように、図11のステップS1105において、5番目の行にファイル“a”とそのハッシュ値が挿入される。そして、図11のステップS1107において、バックアップDB・D10およびデータ参照サーバDB・D20のファイル“a”の情報からショートカットが作成される。作成されたデータ参照先フォルダに記憶されたファイル“a”へのショートカットパスは、図11のステップS1109において、対応するクライアントPCの“提案フォルダ”のファイル“a”に置き換えられる。
【0110】
(1回目の処理済み判定時の各部データ)
図23は、1回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【0111】
1番目のファイル“a”の処理が終了し、図23のように、図12のステップS1201においてBUID指数レジスタR10を“2”として、2番目のファイル“c”が重複データであるかの判定の準備を行なう。次に、ステップS1203において、FDID指数レジスタR30を“1”に初期化して、ファイル“c”を5つのファイルが登録されているデータ参照サーバDB・D20の最初からの比較の準備をする。図12のステップS1207の判定では、BUID指数レジスタR10=BUID合計レジスタR20(NO)なので、再びステップS801に戻って、ファイル“c”がデータ参照サーバDB・D20に既に登録されているかの判定を始める。
【0112】
(2番目のバックアップデータの重複データ有りの判断時及びショートカットパス設定時の各部データ)
図24は、2番目のバックアップデータの重複データ有りの判断時(S809)及びショートカットパス設定時(S911)の各部データを示す図である。
【0113】
ファイル“c”がデータ参照サーバDB・D20に既に登録されているかの判定で、最初の行のファイルは“b”なので図8のステップS809でFDID指数レジスタR30が“2”となる。データ参照サーバDB・D20に既に登録されている2番目のファイルは“c”でハッシュ値が一致するので、図8のステップS807で“YES”と判別されてステップS813に進む。そして、図9のステップS911において、2つ目のファイル“c”のショートカットが作成される。
【0114】
(2回目の処理済み判定時の各部データ)
図25は、2回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【0115】
2番目のファイル“c”の処理が終了し、図25のように、図12のステップS1201においてBUID指数レジスタR10を“3”とする。次に、ステップS1203において、FDID指数レジスタR30を“1”に初期化して、3番目のファイルがあれば5つのファイルが登録されているデータ参照サーバDB・D20の最初からの比較の準備をする。図12のステップS1207の判定では、BUID指数レジスタR10>BUID合計レジスタR20(YES)なのでもう処理してないバックアップデータは無く、ステップS1211に進んで、終了処理に向かう。
【0116】
(重複データ処理の終了時点での各部データ)
図26は、重複データ処理の終了時点(S1307/S1309)での各部データを示す図である。
【0117】
図13のステップS1307で初期化されて、バックアップDB・D10は空となり、カウンタC10は“0”となる。そして、ステップS1309においてはBUID合計レジスタR20もバックアップDB・D10の最初の行を指すように初期化されて、重複検索サーバN200の処理が終了する。
【0118】
本具体例では、ファイル“a”と“c”との2つが処理され、まずファイル“a”はデータ参照サーバN300に無いので、データ参照サーバN300のデータ参照先フォルダに記憶されて、それへのショートカットパスがクライアントPCの提案フォルダに設定された。次にファイル“c”はデータ参照サーバN300に既に有ったので、データ参照サーバN300のデータ参照先フォルダに記憶せず、既に記憶されたファイル“c”へのショートカットパスがクライアントPCの提案フォルダに設定された。
【0119】
[他の実施形態]
以上、本発明の実施形態について詳述したが、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステム又は装置も、本発明の範疇に含まれる。
【0120】
また、本発明は、複数の機器から構成されるシステムに適用されても良いし、単体の装置に適用されても良い。さらに、本発明は、実施形態の機能を実現する制御プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされる制御プログラム、あるいはその制御プログラムを格納した媒体、その制御プログラムをダウンロードさせるWWW(World Wide Web)サーバも、本発明の範疇に含まれる。
【0121】
[実施形態の他の表現]
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0122】
(付記1)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理装置。
(付記2)
前記検索手段は、当該情報処理装置に接続される全ての情報処理装置がフォルダ内に保持するデータファイルを前記処理対象とするデータファイルとして、前記データ保持手段内に有るか否かを検索し、
前記パス設定手段は、前記処理対象とするデータファイルと同一のデータファイルを含む異なる情報処理装置の異なるフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定することを特徴とする付記1に記載の情報処理装置。
(付記3)
当該情報処理装置に接続される全ての情報処理装置がフォルダ内に新たに保持したデータファイルを読み込んで、前記接続される情報処理装置のフォルダへのパスに対応付けて格納する格納手段をさらに備え、
前記記憶手段は、前記格納手段に格納されたデータファイルを読み出して、前記データ保持手段に新たに作成されたフォルダへのパスに対応付けて前記読み出したデータファイルを前記データ保持手段の前記新たに作成されたフォルダに記憶し、
前記パス設定手段は、前記接続される情報処理装置のフォルダへのパスと前記データ保持手段に新たに作成されたフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする付記1又は2に記載の情報処理装置。
(付記4)
前記パス設定手段は、前記検索手段が前記処理対象とするデータファイルと同一のデータファイルを含むフォルダが前記データ保持手段内に有るとした場合に、前記接続される情報処理装置のフォルダへのパスと既に作成されている前記データ保持手段のフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする付記3に記載の情報処理装置。
(付記5)
前記パス設定手段は、
前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するまでの間、前記接続される情報処理装置のフォルダへのパスを保持するパス保持手段と、
前記データ保持手段のフォルダへのパスを蓄積するパス蓄積手段と、
を備えることを特徴とする付記3又は4に記載の情報処理装置。
(付記6)
フォルダが前記処理対象とするデータファイルと同一のデータファイルを含むか否かは、各データファイルのハッシュ値の比較に基づいて判断することを特徴とする付記1乃至5のいずれか1項に記載の情報処理装置。
(付記7)
前記データファイルはバックアップデータファイルであり、前記フォルダは前記バックアップデータファイルを保持するフォルダであることを特徴とする付記1乃至6のいずれか1項に記載の情報処理装置。
(付記8)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする情報処理装置の制御方法。
(付記9)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
(付記10)
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理システム。
(付記11)
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする重複ファイル排除方法。
【技術分野】
【0001】
本発明は、情報処理システムにおいて重複ファイルを排除する技術に関する。
【背景技術】
【0002】
上記技術分野において、特許文献1では、記憶装置ユニット(HDU)内における重複データをハッシュコードの比較により検出して、重複データに対しては、一方を破棄する処理やリンクに置き換える処理、重複しないデータのみのコピー処理などを行なうことが記載されている。また、特許文献2では、複数のディスクドライブからなる記憶システムにおいて、データの重複除外範囲についてハッシュ値の表を保持して、ディスクドライブが電源OFFであっても重複除外処理ができる技術が記載されている。また、特許文献3には、複数のディスクからなるストレージアレイにデータを保持する場合に、仮想テープライブラリ(VTL:Virtual Tape Library)によってデータセット内の同じアンカーポイントとその前後のデルタによって重複データを識別する。そして、重複データをストレージインジケータで置き換えることによって記憶データを圧縮することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−251725号公報
【特許文献2】特開2009−080788号公報
【特許文献3】特表2009−535704号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記従来技術は、いずれもディスクなどからなる個別の記憶媒体内における、重複データを排除する技術である。したがって、記憶媒体内の重複データの一方は残し他方はポインタに置き換えることで自己完結的に解決が可能である。ところが、ネットワークを介して多くのコンピュータや周辺機器などが接続されたコンピュータシステムにおいては、記憶媒体間やコンピュータ間、コンピュータと記憶媒体間での重複データを削除することも求められる。
【0005】
たとえば、それぞれ各ユーザ個人で使用するクライアントPCのデータは、ユーザ自らの意思で自由に管理して上記従来技術を適用すれば重複データの排除は可能である。しかしながら、コンピュータシステムを構成する全サーバ、全クライアントPCが含むディスク全体を対象にすれば、複数の重複したデータが存在する可能性が極めて高くなる。なぜなら、コンピュータシステムにおいて複数のクライアントPCで情報の共有をするには、WEB上やファイルサーバ上に共有ファイルをアップデートする必要があり、また、それぞれのクライアントPCが同一ファイルをダウンロードするためである。また、各クライアントPCには重複データが無く1つデータであったとしても、二度と使用する必要がないファイルを削除し忘れたりすると、システム内には重複データとして残ってしまうことになる。さらに、ユーザ意識の問題による支給PCの私物化なども原因となる。かかる問題点の解決には、個別の装置内における重複データの排除とは異なる新たな工夫が求められる。
【0006】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明に係る装置は、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする。
【0008】
上記目的を達成するため、本発明に係る方法は、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする。
【0009】
上記目的を達成するため、本発明に係るプログラムは、
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする。
【0010】
上記目的を達成するため、本発明に係るシステムは、
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする。
【0011】
上記目的を達成するため、本発明に係る方法は、
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする。
【発明の効果】
【0012】
本発明によれば、複数のコンピュータが接続する情報処理システムにおける重複データの排除と保持データの集中管理とにより、リソースを有効利用できる。
【図面の簡単な説明】
【0013】
【図1】本発明の第1実施形態に係る情報処理装置の構成を示すブロック図である。
【図2】本発明の第2実施形態に係る情報処理システムの構成を示すブロック図である。
【図3】本発明の第2実施形態に係る情報処理システムにおける各装置の機能構成の概略とその動作手順を示すブロック図である。
【図4】本発明の第2実施形態に係る重複検索サーバのハードウェア構成を示すブロック図である。
【図5A】本発明の第2実施形態に係るショートカットデータの構成を示す図である。
【図5B】本発明の第2実施形態に係るバックアップDBとデータ参照DBとの構成を示す図である。
【図6】本発明の第2実施形態に係る重複検索サーバの処理手順を示すフローチャートである。
【図7】本発明の第2実施形態に係るバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。
【図8】本発明の第2実施形態に係る重複データの判断処理を含む処理手順を示すフローチャートである。
【図9】本発明の第2実施形態に係る重複データ有りの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。
【図10】本発明の第2実施形態に係る重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理を含む処理手順を示すフローチャートである。
【図11】本発明の第2実施形態に係る重複データ無しの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。
【図12】本発明の第2実施形態に係る処理済みでないバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。
【図13】本発明の第2実施形態に係る後処理を含む処理手順を示すフローチャートである。
【図14】本発明の第2実施形態に係るクライアントPCのハードウェア構成を示すブロック図である。
【図15】本発明の第2実施形態に係るショートカットテーブルの構成を示す図である。
【図16】本発明の第2実施形態に係るクライアントPCの処理手順を示すフローチャートである。
【図17】本発明の第2実施形態による具体例の処理における起動前起点での各部データを示す図である。
【図18】本発明の第2実施形態による具体例の処理における初期化時点(S701)での各部データを示す図である。
【図19】本発明の第2実施形態による具体例の処理におけるバックアップデータ数の検出時点(S707)での各部データを示す図である。
【図20】本発明の第2実施形態による具体例の処理における1番目のバックアップデータの重複データ有無判断中(S809の判定)の各部データを示す図である。
【図21】本発明の第2実施形態による具体例の処理における重複データ無しの場合のデータ参照サーバ書込準備時(S1007)の各部データを示す図である。
【図22】本発明の第2実施形態による具体例の処理における重複データ無しの場合のデータ参照サーバ書込時(S1105)及びショートカットパス設定時(S1109)の各部データを示す図である。
【図23】本発明の第2実施形態による具体例の処理における1回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【図24】本発明の第2実施形態による具体例の処理における2番目のバックアップデータの重複データ有りの判断時(S809)及びショートカットパス設定時(S911)の各部データを示す図である。
【図25】本発明の第2実施形態による具体例の処理における2回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【図26】本発明の第2実施形態による具体例の処理における重複データ処理の終了時点(S1307/S1309)での各部データを示す図である。
【発明を実施するための形態】
【0014】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
【0015】
[第1実施形態]
本発明の第1実施形態としての情報処理装置100について、図1を用いて説明する。 図1に示すように、情報処理装置100は、検索部120と、記憶部130と、パス設定部140と、削除部150と、を含む。検索部120は、処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持部110内に有るか否かを検索する。記憶部130は、同一のデータファイルBを含むフォルダがデータ保持部110内に無い場合は、データファイルBを含むフォルダYYをデータ保持部110に記憶する。
【0016】
パス設定部140は、データファイルAを保持する全ての情報処理装置160、180のフォルダAA,CCに対して、当該フォルダ内のショートカットファイルA,Cからデータ保持部110内のデータファイルAへのパス190を設定する。また、パス設定部140は、データファイルBを保持する情報処理装置170のフォルダBBに対して、当該フォルダ内のショートカットファイルBからデータ保持部110内のデータファイルBへのパス190を設定する。削除部150は、情報処理装置160,170のフォルダAA,CCが保持するデータファイルAを全て削除する。また、削除部150は、情報処理装置170のフォルダBBが保持するデータファイルBを削除する。
【0017】
本実施形態によれば、複数のコンピュータが接続する情報処理システムにおける重複データの排除と保持データの集中管理とにより、リソースを有効利用できる。
【0018】
[第2実施形態]
本発明の第2実施形態によれば、重複検索サーバに導入した処理を管理機端末PCから実行することにより、自動的に全クライアントPC上のデータが、データ参照サーバ上の、同一ハッシュ値のデータが保管されたフォルダへのショートカットファイルに置き換えられ、削除される。データ参照サーバに同一ハッシュ値のデータがない場合は、データが新規にデータ参照サーバに追加され、そのデータへのパスがデータベースに追加される。
【0019】
上記、本実施形態による重複検索サーバの処理手順は、次のような手順である。まず、全クライアントPCのデータを重複検索サーバへ統合バックアップして、全データのそれぞれのハッシュ値を算出してデータベースに書き込む。次に、そのバックアップデータベースを参照した対象データのハッシュ値と、現在までの一意なデータが統合保管されているデータ参照サーバを一覧できるデータ参照データベースに保持された対象データのハッシュ値とを1つ1つ比較する。そして、バックアップデータベースの対象データが重複データであるか非重複データであるかの比較をする。比較の結果、対象バックアップデータが非重複データの場合は、データ参照サーバ上に新たに対象バックアップデータを複製して、データ参照データベースに新データの情報を追加する。対象バックアップデータが重複データの場合は、データ参照サーバへのデータ複製は行わない。この状態で、対象バックアップデータが非重複データであっても重複データであっても、データ参照サーバ上にデータが存在することになる。最後に、クライアントPC上の対象バックアップデータが保管されたフォルダに、データ参照サーバ上の同一データファイルへのショートカットを作成して、クライアントPC上の対象バックアップデータを削除する。本実施形態の処理手順によって、情報処理システム全体の重複ファイルを排除することができ、かつ、システムに接続する全てのクライアントPC上のデータをサーバに一括してマイグレーションし、システム全体としてディスクなどの記憶媒体の有効活用を実現することができる。
【0020】
なお、本実施形態では、情報処理システム内のバックアップデータファイルの重複を無くす例を代表して説明するが、いかなるデータファイルあるいはデータの一部の重複を無くすためにも容易に適用できる。さらに、データはプログラムであってもよく、本実施形態のデータはクライアントPCが処理する全てのデジタルデータを含む概念である。
【0021】
《本実施形態の情報処理システムの構成》
図2は、本実施形態に係る情報処理システム200の構成を示すブロック図である。
【0022】
図2を参照すると、本実施形態の情報処理システム200は、クライアントPC・N100〜N10XとクライアントサーバN11Xとを含むクライアント装置を有する。なお、上記クライアントPC・N100〜N10Xには、デスクトップコンピュータN100〜N10Kや携帯端末N10MやノートパソコンN10N〜N10Xを含んでよい。情報処理システム200は、重複検索サーバN200と、データ参照サーバN300と、管理端末PC・N400とを有する。クライアントPC・N100〜N10Xと、重複検索サーバN200と、データ参照サーバN300と、管理端末PC・N400とは、ネットワークN500を介して、互いに接続される。接続は有線であっても無線であってもよい。
【0023】
なお、管理端末PC・N400は、重複検索サーバN200に直接接続されてよい(図2に破線で示す)。また、データ参照サーバN300は、本情報処理システムが参照するただ1つのデータを保持するため、図2のように並列構造であるのが望ましい。
【0024】
(情報処理システムにおける各装置の機能構成とその動作手順の概略)
図3は、情報処理システム200における各装置の機能構成の概略とその動作手順を示すブロック図である。なお、図3には、重複検索サーバN200を中心に機能構成部とそれらのデータ及び信号の接続と、動作手順のステップ番号を示している(ステップ番号は、図7〜図13のステップ番号に対応する)。動作手順の詳細な処理は図7〜図13に従って後述するので、ここでは機能構成部の機能と動作を主に説明する。
【0025】
クライアントPC・N100〜N10Xに内蔵されるフォルダは、バックアップデータ元フォルダF110〜F11Xである。
【0026】
重複検索サーバN200に内蔵される処理部は、中央処理部SW10と、バックアップ制御部SW20と、比較計算部SW30と、データ作成部SW40とである。なお、本実施形態においては、これら処理部は重複検索サーバN200のCPUが各処理モジュールプログラムを実行することにより実現され、各処理部間の信号伝達は各処理モジュールプログラム間の引き数により実現される。しかしながら、処理部の一部あるいは全部がそれぞれのCPUを有していて、各処理部間の信号伝達はコンピュータ通信により行なわれてもよい。
【0027】
また、重複検索サーバN200に内蔵されるデータベースは、重複検索サーバN200が処理するクライアントPCのバックアップデータ元フォルダを管理するバックアップDB・D10と、データ参照サーバのデータ参照先フォルダを管理するデータ参照DB・D20とである。また、重複検索サーバN200に内蔵されるレジスタは、バックアップDB・D10を管理するためのBUID指数レジスタR10及びBUID合計レジスタR20と、データ参照DB・D20を管理するためのFDID指数レジスタR30及びFDID合計レジスタR40とである。また、重複検索サーバN200に内蔵されるフォルダは、クライアントPCから転送されたバックアップデータを格納する格納先フォルダF210〜F21Xである。また、重複検索サーバN200に内蔵されるカウンタは、処理するバックアップデータ数を示すカウンタC10である。
【0028】
データ参照サーバN300に内蔵されるフォルダは、参照先のバックアップデータを保持するデータ参照先フォルダF310〜F310である。
【0029】
本実施形態で処理される対象データは、バックアップデータF10〜F1Xと、ショートカットファイルF30〜F3Xとである。バックアップデータF10〜F1Xは、データ参照サーバのデータ参照フォルダに保持され、クライアントPCのバックアップ元フォルダや格納先フォルダからは削除される。そのため、図3では削除されるバックアップデータは破線で示されている。クライアントPCのバックアップ元フォルダのバックアップデータF10〜F1Xは削除されて、ショートカットファイルF30〜F3Xに置き換えられる。
【0030】
各機能構成部の概要動作をさらに詳細に説明する。
【0031】
クライアントPC・N100〜N10Xは各クライアントPCであり、本情報処理システムのデータ排除対象である。重複検索サーバN200は本情報処理システムの処理サーバであり、データの処理を行うサーバである。データ参照サーバN300は全非重複データの格納先サーバであり、クライアントPCに保管されるショートカットファイルのデータ参照先サーバである。管理端末PC・N400は、本情報処理システムを起動させる端末であり、重複検索サーバの中央処理部SW10を起動させる端末である。
【0032】
クライアントPC・N100〜N10Xのバックアップデータ元フォルダF110〜F11Xは、クライアントPC上のバックアップデータを保存しているフォルダである。バックアップDBに当フォルダへのパス情報を書き込む
重複検索サーバN200の中央処理部SW10は管理端末PC・N400からの起動命令から起動する処理部で、主な機能として各処理部への起動を中心に行う司令塔の役割を持つ処理部である。また、処理終了時の管理端末PC・N400への処理終了伝達も行う。バックアップ制御部SW20は中央処理部SW10からの起動命令により起動する処理部で、主な機能として全クライアントPCのバックアップの役割を持つ処理部である。比較計算部SW30は中央処理部SW10からの起動命令により起動する処理部で、主な機能としてバックアップDBとデータ参照サーバDBとのデータ比較や、各レジスタ値のデータ比較の役割を持つ処理部である。データ作成部SW40は中央処理部SW10からの起動命令により起動する処理部で、主な機能としてデータおよびフォルダの生成や削除の役割や、ショートカットファイルの作成の役割を持つ処理部である。
【0033】
バックアップDB・D10は、バックアップ制御部SW20からのバックアップ命令によりデータごとに昇順のIDを与えた、クライアントPCのフォルダへのパスを保持するパス保持部であるバックアップデータのデータベースである。バックアップDB・D10が取得する項目は、バックアップIDと、バックアップIDに対応付けられたファイル名、バックアップ格納先フォルダパス、ハッシュ値、バックアップ元クライアントフォルダパスとの5つである(図5B参照)。
【0034】
データ参照DB・D20は、データ作成部SW40からの非重複データの作成命令によりデータごとに昇順のIDを与えた、データ参照サーバのフォルダへのパスを蓄積するパス蓄積部であり、データ参照サーバN300内のデータを管理するデータベースである。取得する項目は、フォルダIDと、フォルダIDに対応付けられたファイル名、データ参照フォルダパス、ハッシュ値との4つである(図5B参照)。
【0035】
BUID指数レジスタR10は、バックアップDBの主キーとなるID値を示すレジスタである。BUID合計レジスタR20は、バックアップDBのデータ数の合計値を示すレジスタである。バックアップ制御部SW20により生成されたカウンタ数をそのまま反映する。FDID指数レジスタR30は、データ参照DBの主キーとなるID値を示すレジスタである。FDID合計レジスタR40は、データ参照DBのデータ数の合計値を示すレジスタである。
【0036】
格納先フォルダF210〜F21Xは、バックアップ制御部SW20による全クライアントPCのバックアップを一時保存しているフォルダである。格納先フォルダF210〜F21Xに基づき、バックアップ制御部SW20はバックアップDBに当フォルダへのパス情報を書き込む。
【0037】
データ参照先フォルダF310〜F31Xは、データ参照サーバN300上に保管されるデータの保管先で、クライアントPCがデータを参照する先のフォルダである。
【0038】
重複検索サーバN200の稼働中、データ作成部SW40は、対象バックアップデータが非重複データであった場合、データ参照サーバN300に新規のデータ参照フォルダを作成する。バックアップデータF10〜F1Xは、元々クライアントPC上に保管されていたデータである。また、バックアップ制御部SW20によりバックアップされる対象のデータでもある。また、データ作成部SW40によりデータを削除されるデータ、かつ、データ参照先フォルダへ保管されるデータでもある。
【0039】
ショートカットS10は、クライアントPCのバックアップ元フォルダから、対象バックアップデータが格納されたデータ参照先フォルダを参照するショートカットファイルである。このショートカットS10は、対象のバックアップデータが格納されたデータ参照先フォルダへのショートカットとしてデータ作成部SW40が作成し、通知されたものである。
【0040】
カウンタC10は、バックアップ制御部SW20からバックアップ命令により作成されるバックアップDBのID数をカウントするカウンタである。カウンタは、そのままバックアップ制御部SW20によりBUID合計レジスタ値に反映される。
【0041】
《本実施形態に係る重複検索サーバのハードウェア構成》
図4は、本実施形態に係る重複検索サーバN200のハードウェア構成を示すブロック図である。
【0042】
図4で、CPU410は演算制御用のプロセッサであり、プログラムを実行することで図3の各機能構成部を実現する。ROM420は、初期データ及びプログラムなどの固定データ及びプログラムを記憶する。通信制御部430は、ネットワークを介してクライアントPC・N100〜N10X、データ参照サーバN300及び管理端末PC・N400と通信する。通信は無線でも有線でもよい。
【0043】
RAM440は、CPU410が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM440には、本実施形態の実現に必要なデータを記憶する領域が確保されている。441は、BUID指数レジスタである。442は、BUID合計レジスタである。443は、FDID指数レジスタである。444は、FDID合計レジスタである。445は、カウンタでありバックアップDB・D10のカウンタC10として機能する。446は、重複検索サーバN200が各バックアップデータに対応して作成するショートカットデータである(図5A参照)。
【0044】
ストレージ450は、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータ又はプログラムが記憶されている。451は、一時的にバックアップデータを格納する格納先フォルダである。452は、バックアップDBである(図5B参照)。453は、データ参照DBである(図5B参照)。ストレージ450には、以下のプログラムが格納される。454は、全体の処理を実行させる重複ファイル検索プログラムであり、図3の中央処理部SW10の処理に対応する(図6参照)。455は、クライアントPCのバックアップデータを制御するバックアップ制御モジュールであり、図3のバックアップ制御部SW20の処理に対応する。456は、重複ファイル検索プログラム454の分岐処理においてレジスタ内容やカウンタ値を比較する比較形成モジュールであり、図3の比較計算部SW30の処理に対応する。457は、データ参照サーバへのバックアップデータの記憶やショートカットの作成を行なうデータ作成モジュールであり、図3のデータ作成部SW40の処理に対応する。
【0045】
なお、図4には、本実施形態に必須なデータやプログラムのみが示されており、OSなどの汎用のデータやプログラムは図示されていない。
【0046】
(ショートカットデータの構成)
図5Aは、重複検索サーバN200のデータ作成部SW40が作成するショートカットデータ446の構成を示す図である。
【0047】
ショートカットデータ446には、クライアントPCのバックアップ元クライアントフォルダへのバックアップ元クライアントフォルダパス511に対応付けられて、次のデータが記憶される。そのデータは、ファイル名512と、データ参照サーバN300のデータ参照先フォルダパス513と、ファイル内のバックアップデータのハッシュ値514とである。
【0048】
(バックアップDBとデータ参照DBとの構成)
図5Bは、重複検索サーバN200のバックアップDB452とデータ参照DB453の構成を示す図である。
【0049】
バックアップDB452には、バックアップID521に対応付けられて、次のデータが記憶される。そのデータは、ファイル名522と、重複検索サーバN200の格納先フォルダへのバックアップ格納先フォルダパス523と、ファイル内のバックアップデータのハッシュ値524と、バックアップ元クライアントフォルダパス525とである。
【0050】
データ参照DB453には、データ参照先フォルダのフォルダID531に対応付けられて、次のデータが記憶される。そのデータは、ファイル名532と、データ参照サーバN300のデータ参照先フォルダへのデータ格納先フォルダパス533と、ファイル内のバックアップデータのハッシュ値524とである。
【0051】
《本実施形態に係る重複検索サーバの処理手順》
図6は、本実施形態に係る重複検索サーバN200の処理手順を示すフローチャートである。このフローチャートは、CPU410によってRAM440を使用しながら実行されて、図3の重複検索サーバN200の各処理部の機能が実現される。また、各処理部がCPUを有する場合には、各ステップは各処理部の処理を含み、処理部間の情報伝達はコンピュータ間通信で実現される。従って、図6のフローチャートは中央処理部SW10の処理手順に対応するものである、なお、図6の丸数字は、図7〜図13の丸数字に対応する。
【0052】
図6のフローチャートは管理端末PCからの起動指示によりスタートする。まず、ステップS610において、重複検索サーバN200の初期化を行なう(図7参照)。次に、ステップS620において、クライアントPCから重複検索サーバN200の格納先フォルダに複写した新しいバックアップデータの有無を判断する(図8参照)。バックアップデータが無ければ、ステップS690の管理端末PC・N400への報告をして処理を終了する。
【0053】
一方、バックアップデータが有ればステップS630に進んで、そのバックアップデータの重複データがデータ参照サーバN300に有るか否かを判定する(図9参照)。重複データがデータ参照サーバN300に有ると判別されればステップS640に進んで、データ参照サーバN300のデータ参照先フォルダのバックアップデータへのショートカットを作成する。そして、クライアントPCのバックアップデータ元フォルダにショートカットを設定し、元のバックアップデータは削除する(図9参照)。一方、重複データがデータ参照サーバN300に無いと判別されればステップS650に進んで、格納先フォルダに一時格納されているバックアップデータをデータ参照サーバN300のデータ参照先フォルダに記憶する(図10参照)。そして、ステップS660において、ステップS650で記憶したデータ参照サーバN300のデータ参照先フォルダのバックアップデータへのショートカットを作成する。そして、クライアントPCのバックアップデータ元フォルダにショートカットを設定し、元のバックアップデータは削除する(図11参照)。
【0054】
ステップS640あるいはS660で、クライアントPCのバックアップデータをショートカットに置き換えた後、ステップS670において、全てのバックアップデータを処理したか否かを判断する(図12参照)。まだ処理していないバックアップデータが残っていればステップS630に戻って、次のバックアップデータの処理を繰り返す。全てのバックアップデータを処理していればステップS680に進んで、後処理をした後、ステップS690において管理端末PCに処理終了を通知して、重複検索サーバN200の処理を終了する。
【0055】
以下、図7〜図13に図6の各ステップを更に詳細に示したフローチャートを示す。なお、図7〜図13のフローチャートにおいては、中央処理部SW10により各処理部が起動されるように記載されている。しかし、上述の如く、図4の構成であれば引き数を持って各モジュールを起動するものであり、複数CPUで構成されていれば各処理部へのコンピュータ通信により起動することになる。
【0056】
(バックアップデータ有無の判断処理)
図7は、バックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。図7は、管理端末機PC・N400からの起動からバックアップ制御部SW20によるバックアップ処理の終了までを示す。管理機端末PC・N400が中央処理部SW10を起動して、図7の処理が開始する。
【0057】
まず、ステップS701において、中央処理部SW10は、BUID指数レジスタR10とFDID指数レジスタR30の値を初期化する。すなわち、BUID指数レジスタR10=1とし、FDID指数レジスタR30=1とする。次に、ステップS703において、中央処理部SW10はバックアップ制御部SW20を起動する。
【0058】
次に、ステップS705において、バックアップ制御部SW20は、全クライアントPCデータの統合バックアップを開始する。ここで、格納先としては、格納先フォルダF210〜F21Xを指定する。次に、ステップS707において、バックアップ制御部SW20は、バックアップのデータベースであるバックアップDB・D10に、ステップS705におけるバックアップデータを反映する。なお、ステップS705でデータをバックアップする度にバックアップ数をカウントするカウンタC10の値を反映する。次に、ステップS709において、バックアップ制御部SW20は、カウンタC10を読み、カウンタC10=0かどうか判定する。すなわち、バックアップデータがないかを判定する。
【0059】
バックアップデータが無ければ図13に進む。一方、バックアップデータがあればステップS711に進んで、バックアップ制御部SW20は、ステップS705、S707が終了した時点でBUID合計レジスタR20とカウンタC10とを読み出す。そして、BUID合計レジスタR20にカウンタC10の値を書き込みレジスタ値を更新する。すなわち、BUID合計レジスタR20=カウンタC10とする。次に、アウテップS713において、バックアップ制御部SW20は処理を終了し、中央処理部SW10にバックアップ終了の伝達をする。
【0060】
(重複データの判断処理)
図8は、重複データの判断処理を含む処理手順を示すフローチャートである。図8は、比較計算部SW30による重複データ検査及び終了までを示す。
【0061】
まず、ステップS801において、中央処理部SW10は、ステップS713においてバックアップ制御部SW20の終了伝達を受け取った時点で、自動的に比較計算部SW30を起動する。また、ステップS1209において比較計算部SW30のまだ重複排除検索が必要なバックアップデータが存在することの伝達を受け取った時点で、再自動的に比較計算部SW30を起動する。
【0062】
次に、ステップS803において、比較計算部SW30は、FDID指数レジスタR30とFDID合計レジスタR40を読込み、FDID指数レジスタR30の値がFDID合計レジスタR40の値より大きい値かを比較する(FDID指数レジスタR30>FDID合計レジスタR40)。すなわち、対象バックアップデータはデータ参照DB内データと全て比較したか、を判定する。FDID指数レジスタR30>FDID合計レジスタR40の場合はステップS811に進んで、比較計算部SW30は処理を終了して、中央処理部SW10に比較系差結果として「非重複」データであることを伝達する。
【0063】
一方、FDID指数レジスタR30≦FDID合計レジスタR40の場合はステップS805に進み、BUID指数レジスタR10とFDID指数レジスタR30とを読み込む。次に、ステップS807において、ステップS805で読み込んだBUID指数レジスタR10とFDID指数レジスタR30とをそれぞれのデータベースのID値としたハッシュ値を比較する。すなわち、バックアップDB・D10におけるバックアップIDがBUID指数レジスタ値のハッシュ値=データ参照DB・D20におけるフォルダIDがFDID指数レジスタ値のハッシュ値を比較する。その結果から、対象データは既にデータ参照サーバに存在するかを判断する。ハッシュ値比較で一致すればステップS813に進んで、比較計算部SW30は処理を終了し、中央処理部SW10に比較計算結果として、「重複」データであることを伝達する。
【0064】
一方、ハッシュ値比較で一致しなければステップS809に進んで、比較計算部SW30は、FDID指数レジスタR30の値に+1をした値を書き込む(FDID指数レジスタR30=FDID指数レジスタR30+1)。次に、ステップS803に戻って、比較計算部SW30は、再び、FDID指数レジスタR30とFDID合計レジスタR40を読込み、FDID指数レジスタR30の値がFDID合計レジスタR40の値より大きい値かを比較する(FDID指数レジスタR30>FDID合計レジスタR40)。
【0065】
(重複データ有りの場合のクライアントPC用のショートカット作成処理)
図9は、重複データ有りの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。図8での重複データ検査の結果、対象データが重複データであった場合の処理方法を示す。
【0066】
ステップS901において、中央処理部SW10は、ステップS813の比較計算部SW30の「対象ファイルが重複データ」である伝達を受け取った時点で、自動的にデータ作成部SW40を起動する。次に、ステップS903において、データ作成部SW40は、FDID指数レジスタR30を読み込む。次に、ステップS905において、データ作成部SW40は、データ参照DB・D20を読み込む。次に、ステップS907において、データ作成部SW40は、BUID指数レジスタR10を読み込む。次に、ステップS909において、データ作成部SW40は、バックアップDB・D10を読み込む。次に、ステップS911において、データ作成部SW40は、ステップS909で読み込んだバックアップDB・D10のバックアップID列の内、ステップS907で読み込んだBUID指数レジスタR10の値の行のバックアップ元クライアントフォルダパスを参照する。そして、対象のバックアップ元クライアントパス上に、ステップS905で読み込んだデータ参照DB・D20のフォルダID列の内、ステップS903で読み込んだFDID指数レジスタR30の値の行のデータ参照先フォルダパスへのショートカットS10を新規作成する。
【0067】
次に、ステップS913において、データ作成部SW40は、ステップS909で読み込んだバックアップDB・D10のバックアップID列の内、ステップS907で読み込んだBUID指数レジスタR10の行の値のファイル名とバックアップ元クライアントフォルダパスとを参照する。そして、対象のバックアップ元クライアントパス上の同一ファイル名のファイルを削除する。次に、ステップS916において、データ作成部SW40は、データ作成部SW40を終了し、中央処理部SW10にデータ作成終了を伝達する。
【0068】
(重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理)
図10は、重複データ無しの場合のデータ参照サーバへのバックアップデータ記憶処理を含む処理手順を示すフローチャートである。図10は、図8での重複データ検査の結果、対象データが非重複データであった場合の処理方法の内、データ参照サーバへのバックアップデータ記憶処理を示す。
【0069】
まず、ステップS1001において、中央処理部SW10は、ステップS811の比較計算部SW30の「対象ファイルが非重複データ」である伝達を受け取った時点で、自動的にデータ作成部SW40を起動する。次に、ステップS1003において、データ作成部SW40は、FDID指数レジスタR30を読み込む。次に、ステップS1005において、データ作成部SW40は、データ参照サーバN300のDドライブ上にバックアップ参照先フォルダF31Xを新規作成する。なお、フォルダ名は、ステップS1003で読み込んだFDID指数レジスタR30の値にする。
【0070】
次に、ステップS1007において、データ作成部SW40は、FDID合計レジスタR40の値に+1をした値を書き込む(FDID合計レジスタR40=FDID合計レジスタR40+1)。次に、ステップS1009において、データ作成部SW40は、データ参照DB・D20を読み込み、データベースの最後行に、ステップS1003で読み込んだFDID指数レジスタR30の値がフォルダIDの値となるべく行を追加する。この時点で、データ参照DB・D20の最終行には、フォルダIDとデータ参照先フォルダパスの列とを書き込む。
【0071】
次に、ステップS1011において、データ作成部SW40は、BUID指数レジスタR10を読み込む。次に、ステップS1013において、データ作成部SW40は、バックアップDB・D10を読み込む。次に、ステップS1015において、データ作成部SW40は、対象のバックアップデータF10を読み込む。すなわち、ステップS1013で読み込んだバックアップDB・D10のバックアップIDの値が、ステップS1011で読み込んだBUID指数レジスタR10の値である行の、バックアップ格納先フォルダパスを参照し、対象のバックアップデータを読み込む。
【0072】
(重複データ無しの場合のクライアントPC用のショートカット作成処理)
図11は、重複データ無しの場合のクライアントPC用のショートカット作成処理を含む処理手順を示すフローチャートである。図11は、図8での重複データ検査の結果、対象データが非重複データであった場合の処理方法の内、図10に続くクライアントPC用のショートカット作成処理を示す。
【0073】
まず、ステップS1101において、データ作成部SW40は、データ参照DB・D20を読み込む。次に、ステップS1103において、データ作成部SW40は、ステップS1005で作成したデータ参照サーバ上の新規フォルダへ、ステップS1015で読み込んだバックアップデータF10を複製する。すなわち、ステップS1101で読み込んだデータ参照DB・D20のバックアップID列が、ステップS1003で読み込んだFDID指数レジスタR30の行のデータ参照先フォルダパスを参照する。そして、対象のパス先へ、ステップS1015で読み込んだバックアップデータF10を複製する。
【0074】
次に、ステップS1105において、データ作成部SW40は、ステップS1009で書き込んだデータ参照DB・D20のフォルダIDの値がFDID指数レジスタR30である空白列のファイル名とハッシュ値とに、ステップS1013で読み込んだバックアップDB・D10のステップS1011で読み込んだバックアップIDの値がBUID指数レジスタR10の行のファイル名とハッシュ値とを書き込む。すなわち、この時点で、ステップS1009で空白であったデータ参照DBの最終行のファイル名とハッシュ値とが書き込まれる。
【0075】
次に、ステップS1107において、データ作成部SW40は、ステップS1013で読み込んだバックアップDB・D10のバックアップID列が、ステップS1011で読み込んだBUID指数レジスタR10の値の行のバックアップ元クライアントフォルダパスの列を参照する。また、対象のバックアップ元クライアントパス上に、ステップS1101で読み込んだデータ参照DB・D20のフォルダID列が、ステップS1011で読み込んだFDID指数レジスタR30の値の行の、データ参照先フォルダパスの列を参照する。そして、対象のデータ参照先フォルダパスへのショートカットS10を新規作成する。すなわち、対象バックアップデータのクライアントパス元へデータ複製したデータ参照先へのショートカットファイルを作成する。
【0076】
次に、ステップS1109において、データ作成部SW40は、ステップS1013で読み込んだバックアップDB・D10のバックアップID列が、ステップS1011で読み込んだBUID指数レジスタR10の値の行の、バックアップ元クライアントフォルダパスの列を参照する。そして、対象のバックアップ元クライアントパス上の対象バックアップデータと同一の対象バックアップデータF10を削除する。この時点で、クライアントPCには、対象バックアップデータは削除され、変わりに非重複データの格納先であるデータ参照サーバへのショートカットに置き換えられる。次に、ステップS1111において、データ作成部SW40は処理を終了し、中央処理部SW10にバックアップ終了を伝達する。
【0077】
(処理済みでないバックアップデータ有無の判断処理)
図12は、処理済みでないバックアップデータ有無の判断処理を含む処理手順を示すフローチャートである。図12は、対象データの比較を全て行って終了するか継続するかの判定処理を示す。
【0078】
まず、ステップS1201において、中央処理部SW10は、BUID指数レジスタR10を読み込み、BUID指数レジスタR10の値に+1をした値を書き込む(BUID指数レジスタR10=BUID指数レジスタR10+1)。次に、ステップS1203において、中央処理部SW10は、FDID指数レジスタR30を読み込み、FDID指数レジスタR30の値を初期化する。すなわち、FDID指数レジスタR30=1とする。次に、ステップS1205において、中央処理部SW10は、比較計算部SW30を起動する。
【0079】
次に、ステップS1207において、比較計算部SW30は、BUID指数レジスタR10とBUID合計レジスタR20とを読み込み、BUID指数レジスタR10の値がBUID合計レジスタR20の値より大きい値か比較する(BUID指数レジスタR10>BUID合計レジスタR20)。すなわち、全バックアップデータを全て処理したかの判断である。BUID指数レジスタR10≦BUID合計レジスタR20の場合はステップS1209に進んで、比較計算部SW30は処理を終了し、中央処理部SW10にまだ重複排除検索が必要なバックアップデータが存在することを伝達して、ステップS801に戻る。すなわち、次のバックアップデータの処理へ進む。一方、BUID指数レジスタR10>BUID合計レジスタR20の場合はステップS1211に進んで、比較計算部SW30は処理を終了し、中央処理部SW10に重複排除検索が必要なバックアップデータが存在しないことを伝達して、ステップS1301に進む。
【0080】
(後処理)
図13は、後処理を含む処理手順を示すフローチャートである。図13は、後処理としての最終的な初期化処理を示す。
【0081】
まず、ステップS1301において、中央処理部SW10は、ステップS1211の比較計算部SW30の「必要なバックアップデータが存在しない」という伝達を受け取った時点で、自動的にバックアップ制御部SW20を起動する。
【0082】
次に、ステップS1303において、バックアップ制御部SW20は、バックアップDB・D10のカウンタC10を読み込む。次に、ステップS1305において、バックアップ制御部SW20は、ステップS1303で読み込んだバックアップDB・D10とカウンタC10との情報から、バックアップ格納先フォルダ内の全バックアップデータを消去する。次に、ステップS1307において、バックアップ制御部SW20は、ステップS1303で読み込んだバックアップDB・D10の2行目以降(項目以外)のデータを消去し、カウンタC10を初期化する(カウンタC10=0)。次に、ステップS1309において、バックアップ制御部SW20は、ステップS1305、S1307が終了した時点で、BUID合計レジスタR20の値を初期化する(BUID合計レジスタR20=1)。次に、ステップS1311において、バックアップ制御部SW20は、中央処理部SW10に初期化の終了を伝達する。
【0083】
次に、ステップS1313において、中央処理部SW10は、ステップS1311のバックアップ制御部SW20の「初期化の終了」の伝達を受け取った時点で、自動的に重複検索サーバN200の処理を終了し、管理端末PC・N400へ終了を通知して表示させる。
【0084】
《本実施形態に係るクライアントPCのハードウェア構成》
図14は、本実施形態に係るクライアントPCのハードウェア構成を示すブロック図である。
【0085】
図14で、CPU1410は演算制御用のプロセッサであり、プログラムを実行することで図2Bの各機能構成部を実現する。ROM1420は、初期データ及びプログラムなどの固定データ及びプログラムを記憶する。通信制御部1430は、ネットワークを介して重複検索サーバN200及びデータ参照サーバN300と通信する。通信は無線でも有線でもよい。
【0086】
RAM1440は、CPU1410が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM1440には、本実施形態の実現に必要なデータを記憶する領域が確保されている。1441は、本クライアントPCが処理する処理データである。1442は、重複検索サーバN200から設定されたショートカットデータである(図4参照)。
【0087】
ストレージ1450は、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータ又はプログラムが記憶されている。1451は、データ参照サーバN300のデータを参照するための、重複検索サーバN200から設定されたショートカットデータを保持するショートカットテーブルである(図15参照)。1452は、ショートカットデータの設定が完了すれば削除される、元のバックアップデータである。ストレージ1450には、以下のプログラムが格納される。1453は、処理データ1441を使って全体の処理を実行させるデータ処理プログラムである(図16参照)。1454は、データ処理プログラム1453に含まれ、本実施形態により作成されたショートカットデータによりデータ参照サーバN300のデータファイルを参照するファイルアクセスモジュールである。
【0088】
入力インタフェース1460は、ユーザの指示あるいは機器からのデータ入力のためのインタフェースであり、たとえば、キーボード1461や、ユーザの指示などを入力するポインティングデバイス1462が接続されている。一方、出力インタフェース1470は、外部にデータを出力するためのインタフェースであり、たとえば、表示部1471が接続されている。
【0089】
なお、図14には、本実施形態に必須なデータやプログラムのみが示されており、OSなどの汎用のデータやプログラムは図示されていない。
【0090】
(ショートカットテーブルの構成)
図15は、本実施形態に係るショートカットテーブル1451の構成を示す図である。
【0091】
ショートカットテーブル1451には、クライアントPCのバックアップ元クライアントフォルダ1501に対応付けられて、バックアップ元クライアントフォルダ1501に含まれるファイル名1502が記憶される。そして、ファイル名1502に対応付けられて、次のデータが記憶される。そのデータは、データ参照サーバN300のデータ参照先フォルダパス1503と、ファイル内のバックアップデータのハッシュ値1504とである。
【0092】
《本実施形態に係るクライアントPCの処理手順》
図16は、本実施形態に係るクライアントPC・N100〜N10Xの処理手順を示すフローチャートである。このフローチャートは、CPU1410によってRAM1440を使用しながら実行されて、図14のクライアントPC・N100〜N10Xの各処理部の機能が実現される。
【0093】
まず、ステップS1610において、重複検索サーバN200からの重複データの検索であるか否かが判定される。重複データの検索であればステップS1612に進んで、フォルダ中のデータファイルを重複検索サーバN200の格納策フォルダに送信する。
【0094】
また、ステップS1620においては、重複検索サーバN200からのショートカットパスの設定であるかを判定する。ショートカットパスの設定であればステップS1622に進んで、ショートカットテーブル1451を更新する。次に、ステップS1624において、ショートカットパスがショートカットテーブル1451に記録されたデータファイルを、フォルダから削除する。
【0095】
また、ステップS1630においては、フォルダ内のデータファイルへのアクセスであるかを判定する。データファイルへのアクセスであればステップS1632に進んで、ショートカットテーブル1451に記録されたショートカットパスに従い、データ参照サーバN300のデータ参照フォルダをアクセスして、データを取得する。
【0096】
《本実施形態による具体例の処理》
以下、簡単な具体例に従って、本実施形態の図から〜図13の処理を説明する。
【0097】
(起動前起点での各部データ)
図17は、本実施形態による具体例の処理における起動前起点での各部データ1700を示す図である。
【0098】
図17の総データ一覧は、クライアントPCの新たなファイルが2つ(ハッシュ値が“AAAAAAAAAAAAAAAA”の“a”と“CCCCCCCCCCCCCCCC”“c”)であり、それぞれ“提案フォルダ”と“構築フォルダ”に含まれていること示す。また、レジスタ値は初期化前のデータであり、FDID合計レジスタR40の“4”のみがデータ参照サーバDB・D20に4つのファイルが登録されていることを示している。また、バッックアップDB・D10には、何も登録されていない。また、データ参照DB・D20には、今までデータ参照サーバN300に記憶された4つのファイル(“b”、“c”、“d”、“e”)が、データ参照サーバN300のデータ参照先フォルダパスと共に登録されている。また、バックアップDB・D10のカウンタC10は“0”である。
【0099】
(初期化時点での各部データ)
図18は、初期化時点(S701)での各部データ1800を示す図である。
【0100】
図7のステップS701における初期化を終えた時点のレジスタ値である。BUID指数レジスタR10=1、FDID指数レジスタR30=1である。
【0101】
(バックアップデータ数の検出時点での各部データ)
図19は、バックアップデータ数の検出時点(S707)での各部データ1900を示す図である。
【0102】
図7のステップS707におけるバックアップDB・D10の設定時のデータである。バックアップDB・D10には、図17の総データ一覧のファイル“a”と“c”とが複製されている。そして、バックアップDB・D10のカウンタC10は“2”に設定される。この状態が、図7のステップS708の分岐で判定される。本具体例では、カウンタC10は“2”なのでステップS709の判定では“NO”となり、ステップS711に進む。
【0103】
(1番目のバックアップデータの重複データ有無判断中の各部データ)
図20は、1番目のバックアップデータの重複データ有無判断中(S809の判定)の各部データ2000を示す図である。
【0104】
図20の左上は、図7のステップS711でカウンタC10の“2”をBUID合計レジスタR20に設定したレジスタ値を示している。図20の残りの5つのレジスタ値は、最初のファイル“a”についてデータ参照サーバDB・D20に同じファイルが重複してあるかのファイルIDの順の判定時の、レジスタ値である。本具体例では、データ参照サーバDB・D20に同じファイル“a”は無いので、図8のステップS809でFDID指数レジスタR30が順にカウントアップされる。
【0105】
図20の左下のように、4番目のファイル“e”との比較が終わってFDID指数レジスタR30が“5”になり、図8のステップS803の判定で“YES”と判定し、ステップS811に進む。ファイル“a”がデータ参照サーバDB・D20に無く、データ参照サーバN300のデータ参照先フォルダに記憶されていないことが判明する。
【0106】
(重複データ無しの場合のデータ参照サーバ書込準備時の各部データ)
図21は、重複データ無しの場合のデータ参照サーバ書込準備時(S1007、S1009)の各部データ2100を示す図である。
【0107】
図21のレジスタ値の内、FDID合計レジスタR40は、図10のステップS1007で、データ参照サーバN300に記憶されてないファイル“a”をデータ参照サーバDB・D20に加えるために、カウントアップされる。そして、ステップS1009において、データ参照サーバDB・D20の5番目に新たなファイルを追加するための行が、データ参照先フォルダパスと共に準備される。
【0108】
(重複データ無しの場合のデータ参照サーバ書込時及びショートカットパス設定時の各部データ)
図22は、重複データ無しの場合のデータ参照サーバ書込時(S1103、S1105)及びショートカットパス設定時(S1109)の各部データ2200を示す図である。
【0109】
図11のステップS1103において、ファイル“a”をデータ参照先フォルダパスのデータ参照先フォルダに記憶する。その後、図22のデータ参照サーバDB・D20に示すように、図11のステップS1105において、5番目の行にファイル“a”とそのハッシュ値が挿入される。そして、図11のステップS1107において、バックアップDB・D10およびデータ参照サーバDB・D20のファイル“a”の情報からショートカットが作成される。作成されたデータ参照先フォルダに記憶されたファイル“a”へのショートカットパスは、図11のステップS1109において、対応するクライアントPCの“提案フォルダ”のファイル“a”に置き換えられる。
【0110】
(1回目の処理済み判定時の各部データ)
図23は、1回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【0111】
1番目のファイル“a”の処理が終了し、図23のように、図12のステップS1201においてBUID指数レジスタR10を“2”として、2番目のファイル“c”が重複データであるかの判定の準備を行なう。次に、ステップS1203において、FDID指数レジスタR30を“1”に初期化して、ファイル“c”を5つのファイルが登録されているデータ参照サーバDB・D20の最初からの比較の準備をする。図12のステップS1207の判定では、BUID指数レジスタR10=BUID合計レジスタR20(NO)なので、再びステップS801に戻って、ファイル“c”がデータ参照サーバDB・D20に既に登録されているかの判定を始める。
【0112】
(2番目のバックアップデータの重複データ有りの判断時及びショートカットパス設定時の各部データ)
図24は、2番目のバックアップデータの重複データ有りの判断時(S809)及びショートカットパス設定時(S911)の各部データを示す図である。
【0113】
ファイル“c”がデータ参照サーバDB・D20に既に登録されているかの判定で、最初の行のファイルは“b”なので図8のステップS809でFDID指数レジスタR30が“2”となる。データ参照サーバDB・D20に既に登録されている2番目のファイルは“c”でハッシュ値が一致するので、図8のステップS807で“YES”と判別されてステップS813に進む。そして、図9のステップS911において、2つ目のファイル“c”のショートカットが作成される。
【0114】
(2回目の処理済み判定時の各部データ)
図25は、2回目の処理済み判定時(S1201/S1203)の各部データを示す図である。
【0115】
2番目のファイル“c”の処理が終了し、図25のように、図12のステップS1201においてBUID指数レジスタR10を“3”とする。次に、ステップS1203において、FDID指数レジスタR30を“1”に初期化して、3番目のファイルがあれば5つのファイルが登録されているデータ参照サーバDB・D20の最初からの比較の準備をする。図12のステップS1207の判定では、BUID指数レジスタR10>BUID合計レジスタR20(YES)なのでもう処理してないバックアップデータは無く、ステップS1211に進んで、終了処理に向かう。
【0116】
(重複データ処理の終了時点での各部データ)
図26は、重複データ処理の終了時点(S1307/S1309)での各部データを示す図である。
【0117】
図13のステップS1307で初期化されて、バックアップDB・D10は空となり、カウンタC10は“0”となる。そして、ステップS1309においてはBUID合計レジスタR20もバックアップDB・D10の最初の行を指すように初期化されて、重複検索サーバN200の処理が終了する。
【0118】
本具体例では、ファイル“a”と“c”との2つが処理され、まずファイル“a”はデータ参照サーバN300に無いので、データ参照サーバN300のデータ参照先フォルダに記憶されて、それへのショートカットパスがクライアントPCの提案フォルダに設定された。次にファイル“c”はデータ参照サーバN300に既に有ったので、データ参照サーバN300のデータ参照先フォルダに記憶せず、既に記憶されたファイル“c”へのショートカットパスがクライアントPCの提案フォルダに設定された。
【0119】
[他の実施形態]
以上、本発明の実施形態について詳述したが、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステム又は装置も、本発明の範疇に含まれる。
【0120】
また、本発明は、複数の機器から構成されるシステムに適用されても良いし、単体の装置に適用されても良い。さらに、本発明は、実施形態の機能を実現する制御プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされる制御プログラム、あるいはその制御プログラムを格納した媒体、その制御プログラムをダウンロードさせるWWW(World Wide Web)サーバも、本発明の範疇に含まれる。
【0121】
[実施形態の他の表現]
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0122】
(付記1)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理装置。
(付記2)
前記検索手段は、当該情報処理装置に接続される全ての情報処理装置がフォルダ内に保持するデータファイルを前記処理対象とするデータファイルとして、前記データ保持手段内に有るか否かを検索し、
前記パス設定手段は、前記処理対象とするデータファイルと同一のデータファイルを含む異なる情報処理装置の異なるフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定することを特徴とする付記1に記載の情報処理装置。
(付記3)
当該情報処理装置に接続される全ての情報処理装置がフォルダ内に新たに保持したデータファイルを読み込んで、前記接続される情報処理装置のフォルダへのパスに対応付けて格納する格納手段をさらに備え、
前記記憶手段は、前記格納手段に格納されたデータファイルを読み出して、前記データ保持手段に新たに作成されたフォルダへのパスに対応付けて前記読み出したデータファイルを前記データ保持手段の前記新たに作成されたフォルダに記憶し、
前記パス設定手段は、前記接続される情報処理装置のフォルダへのパスと前記データ保持手段に新たに作成されたフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする付記1又は2に記載の情報処理装置。
(付記4)
前記パス設定手段は、前記検索手段が前記処理対象とするデータファイルと同一のデータファイルを含むフォルダが前記データ保持手段内に有るとした場合に、前記接続される情報処理装置のフォルダへのパスと既に作成されている前記データ保持手段のフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする付記3に記載の情報処理装置。
(付記5)
前記パス設定手段は、
前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するまでの間、前記接続される情報処理装置のフォルダへのパスを保持するパス保持手段と、
前記データ保持手段のフォルダへのパスを蓄積するパス蓄積手段と、
を備えることを特徴とする付記3又は4に記載の情報処理装置。
(付記6)
フォルダが前記処理対象とするデータファイルと同一のデータファイルを含むか否かは、各データファイルのハッシュ値の比較に基づいて判断することを特徴とする付記1乃至5のいずれか1項に記載の情報処理装置。
(付記7)
前記データファイルはバックアップデータファイルであり、前記フォルダは前記バックアップデータファイルを保持するフォルダであることを特徴とする付記1乃至6のいずれか1項に記載の情報処理装置。
(付記8)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする情報処理装置の制御方法。
(付記9)
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
(付記10)
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理システム。
(付記11)
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする重複ファイル排除方法。
【特許請求の範囲】
【請求項1】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記検索手段は、当該情報処理装置に接続される全ての情報処理装置がフォルダ内に保持するデータファイルを前記処理対象とするデータファイルとして、前記データ保持手段内に有るか否かを検索し、
前記パス設定手段は、前記処理対象とするデータファイルと同一のデータファイルを含む異なる情報処理装置の異なるフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
当該情報処理装置に接続される全ての情報処理装置がフォルダ内に新たに保持したデータファイルを読み込んで、前記接続される情報処理装置のフォルダへのパスに対応付けて格納する格納手段をさらに備え、
前記記憶手段は、前記格納手段に格納されたデータファイルを読み出して、前記データ保持手段に新たに作成されたフォルダへのパスに対応付けて前記読み出したデータファイルを前記データ保持手段の前記新たに作成されたフォルダに記憶し、
前記パス設定手段は、前記接続される情報処理装置のフォルダへのパスと前記データ保持手段に新たに作成されたフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記パス設定手段は、前記検索手段が前記処理対象とするデータファイルと同一のデータファイルを含むフォルダが前記データ保持手段内に有るとした場合に、前記接続される情報処理装置のフォルダへのパスと既に作成されている前記データ保持手段のフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記パス設定手段は、
前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するまでの間、前記接続される情報処理装置のフォルダへのパスを保持するパス保持手段と、
前記データ保持手段のフォルダへのパスを蓄積するパス蓄積手段と、
を備えることを特徴とする請求項3又は4に記載の情報処理装置。
【請求項6】
前記データファイルはバックアップデータファイルであり、前記フォルダは前記バックアップデータファイルを保持するフォルダであることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
【請求項7】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項8】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
【請求項9】
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理システム。
【請求項10】
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする重複ファイル排除方法。
【請求項1】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索手段と、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶手段と、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定手段と、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記検索手段は、当該情報処理装置に接続される全ての情報処理装置がフォルダ内に保持するデータファイルを前記処理対象とするデータファイルとして、前記データ保持手段内に有るか否かを検索し、
前記パス設定手段は、前記処理対象とするデータファイルと同一のデータファイルを含む異なる情報処理装置の異なるフォルダに対して、当該フォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
当該情報処理装置に接続される全ての情報処理装置がフォルダ内に新たに保持したデータファイルを読み込んで、前記接続される情報処理装置のフォルダへのパスに対応付けて格納する格納手段をさらに備え、
前記記憶手段は、前記格納手段に格納されたデータファイルを読み出して、前記データ保持手段に新たに作成されたフォルダへのパスに対応付けて前記読み出したデータファイルを前記データ保持手段の前記新たに作成されたフォルダに記憶し、
前記パス設定手段は、前記接続される情報処理装置のフォルダへのパスと前記データ保持手段に新たに作成されたフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記パス設定手段は、前記検索手段が前記処理対象とするデータファイルと同一のデータファイルを含むフォルダが前記データ保持手段内に有るとした場合に、前記接続される情報処理装置のフォルダへのパスと既に作成されている前記データ保持手段のフォルダへのパスとから、前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定し、前記格納手段に格納されたデータファイルを全て削除することを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記パス設定手段は、
前記情報処理装置のフォルダ内のショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するまでの間、前記接続される情報処理装置のフォルダへのパスを保持するパス保持手段と、
前記データ保持手段のフォルダへのパスを蓄積するパス蓄積手段と、
を備えることを特徴とする請求項3又は4に記載の情報処理装置。
【請求項6】
前記データファイルはバックアップデータファイルであり、前記フォルダは前記バックアップデータファイルを保持するフォルダであることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
【請求項7】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項8】
処理対象とするデータファイルと同一のデータファイルを含むフォルダが、データを保持するデータ保持手段内に有るか否かを検索する検索ステップと、
同一のデータファイルを含むフォルダが前記データ保持手段内に無い場合は、前記データファイルを含むフォルダを前記データ保持手段に記憶する記憶ステップと、
前記データファイルを保持する全ての情報処理装置のフォルダに対して、当該フォルダのショートカットファイルから前記データ保持手段内の前記データファイルへのパスを設定するパス設定ステップと、
前記情報処理装置のフォルダが保持する前記データファイルを全て削除する削除ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
【請求項9】
複数のクライアントが生成した異なるフォルダに同じデータファイルを保持することが可能な情報処理システムであって、
前記同じデータファイルを1つのフォルダに保持する保持手段と、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持手段に保持した前記1つのフォルダへのパスを設定するパス設定手段と、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除手段と、
を備えることを特徴とする情報処理システム。
【請求項10】
複数のクライアントが生成した異なるフォルダに同じのデータファイルを保持することが可能な情報処理システムにおける重複ファイル排除方法であって、
前記同じデータファイルを1つのフォルダに保持する保持ステップと、
前記複数のクライアントが生成した前記同じデータファイルを保持する全ての異なるフォルダ内のショートカットファイルから、前記保持ステップにおいて保持した前記1つのフォルダへのパスを設定するパス設定ステップと、
前記全ての異なるフォルダが保持する前記同じデータファイルを全て削除する削除ステップと、
を含むことを特徴とする重複ファイル排除方法。
【図1】
【図2】
【図3】
【図4】
【図5A】
【図5B】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図2】
【図3】
【図4】
【図5A】
【図5B】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【公開番号】特開2012−181796(P2012−181796A)
【公開日】平成24年9月20日(2012.9.20)
【国際特許分類】
【出願番号】特願2011−45934(P2011−45934)
【出願日】平成23年3月3日(2011.3.3)
【出願人】(000232140)NECフィールディング株式会社 (373)
【Fターム(参考)】
【公開日】平成24年9月20日(2012.9.20)
【国際特許分類】
【出願日】平成23年3月3日(2011.3.3)
【出願人】(000232140)NECフィールディング株式会社 (373)
【Fターム(参考)】
[ Back to top ]