JP3899795B2 - ファイル管理システムおよび方法 - Google Patents

ファイル管理システムおよび方法 Download PDF

Info

Publication number
JP3899795B2
JP3899795B2 JP2000287523A JP2000287523A JP3899795B2 JP 3899795 B2 JP3899795 B2 JP 3899795B2 JP 2000287523 A JP2000287523 A JP 2000287523A JP 2000287523 A JP2000287523 A JP 2000287523A JP 3899795 B2 JP3899795 B2 JP 3899795B2
Authority
JP
Japan
Prior art keywords
file
registered
management
name
hash table
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.)
Expired - Fee Related
Application number
JP2000287523A
Other languages
English (en)
Other versions
JP2002099454A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2000287523A priority Critical patent/JP3899795B2/ja
Priority to US09/960,548 priority patent/US8856139B2/en
Publication of JP2002099454A publication Critical patent/JP2002099454A/ja
Application granted granted Critical
Publication of JP3899795B2 publication Critical patent/JP3899795B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ファイルを管理するファイル管理システムに関し、特にコンピュータプログラムを構成するファイルのように各ファイルの呼び出しの間に相関関係のあるファイルを保持管理するシステムにおいて、同名であるが内容の異なるファイルを共に保持するとともに登録者が異なるが内容の等しいファイルを単一のファイルとして扱うことを可能とするファイル管理システムおよび方法に関する。
【0002】
【従来の技術】
一般的なファイルを保持管理するファイル管理システムは、一般的にファイル名で個々のファイルを管理する。
【0003】
ファイル名のみでファイルを管理する場合、同名のファイルを複数保持することはできない。
【0004】
そこで、従来のファイル管理システムでは階層構造を持つディレクトリを作成し、それぞれのディレクトリにファイルを置くことで同名のファイルを保持することを可能にしている。
【0005】
具体例として、図12を示す。ファイル0801とファイル0802の2つのファイルはそれぞれの内容は異なるが、ともにtokkyo.txtという等しいファイル名が与えられている。ファイル名だけで管理するのでは、この2つのファイルを別のファイルとして管理することはできない。
【0006】
そこで、図13に示すように、/Text/Network/、/Text/Filesystem/ という2つのディレクトリを作成し、この2つのディレクトリにそれぞれのファイルを収める。これにより、2つのtokkyo.txtという名前のファイルを同時に管理することができる。
【0007】
或いは、ディレクトリ名を含めてファイル名とする、つまり、図12の例の場合、/Text/Network/tokkyo.txtをファイル名とするならば、/Text/Network/tokkyo.txtという複数の異なるファイルを持つことができないため、一般的なファイルシステムでも同名ファイルを同時に保持することは不可能と言える。
【0008】
また、この問題を解決する技術として、特開平8−339321で提案されている技術がある。この技術は、ファイルをファイル名ではなく、管理IDで管理する。また、ユーザ名、ファイル名、バージョン番号等から管理IDを対応させる表を作成し、ファイルを呼び出す時はこれらの情報を示すことで望むファイルを得ることができる。この方法により、ファイル名が同一でもユーザ名、バージョン番号等が異なれば別々に保持することが可能になる。
【0009】
この技術の実施形態は、図14に示すように、管理サーバ1010と、記憶装置1020と、ファイル要求入力装置1001と、ファイル入力装置1002と、ファイル出力装置1003とからなる。記憶装置1020は、ファイルを記憶しておくファイルDB1022とファイル管理情報を保持しておく管理DB1021とからなる。ファイルはそれぞれ異なる管理IDを持ちファイルDB1022に記憶されている。管理DB1021には、図15に示すように、タイプ、ユーザ名、ファイル名、バージョン等の値と管理IDの対応関係が記録されている。
【0010】
ファイルの要求者は、これらの条件、つまりタイプ、ユーザ名、ファイル名、バージョンをファイル要求入力装置1001に入力する。管理DB検索部1011は管理DB1021を検索し、要求された条件に対応する管理IDを求める。ファイル検索部1013は得られた管理IDに対応するファイルをファイルDB1022より求める。ファイル出力装置1003は得られたファイルをファイルの要求者に対して送る。
【0011】
ファイルの登録時は、まず、登録者がファイル入力装置1002に登録するファイルを入力する。ファイル検索部1013は他のファイルによって利用されていない管理IDを作成し、登録するファイルのタイプ、ユーザ名、ファイル名、バージョンと作成した管理IDが対応する。ファイル登録削除部1014はファイルをファイルDB1022に登録する。管理DB変更部1012はファイルのタイプ、ユーザ名、ファイル名、バージョンと管理IDの対応を管理DB1021に登録する。
【0012】
このようなファイル管理システムをコンピュータプログラムを構成するファイルを保持するのに用いることができる。コンピュータプログラムを構成するファイルを集中的に管理し、複数のコンピュータプログラムの実行者によって共有することにより、コンピュータプログラムのバージョン等の管理を容易にする。また、必要なときのみファイルをコンピュータプログラムを実行する装置に送ることによって、コンピュータプログラムの実行装置におけるリソースの節約等が可能になる。
【0013】
一般的に、コンピュータプログラムは複数のファイルからなっており、各ファイルはそれぞれ異なる機能を提供する。異なるコンピュータプログラムを構成するファイルの中にはファイル名は等しいが、内容の異なるファイルが存在する可能性がある。一般的なファイル管理システムを用いる時、このような可能性がある場合は、コンピュータプログラム毎、もしくはユーザ毎に異なるディレクトリを与えることによって、それぞれのファイル名の等しいファイルを同時に保持することが可能にする。また、特開平8−339321の技術を用いることによって、ユーザ、コンピュータプログラム、バージョン等が異なる同名ファイルを別のファイルとして扱うことが可能になるので、同名ファイルがある場合でも問題なく動作する。
【0014】
さらに、既存の技術として特許第2864932号がある。
【0015】
この技術は、ファイル登録時に登録するファイルが新たに作成されたのものである場合、もしくは、編集されたものである場合には、新たな識別番号を自動的にファイルに付与し、ファイルの呼び出し時にも呼び出し側に等しい識別番号を持つファイルが存在する場合は呼び出しを中止する制御を行うものである。
【0016】
この技術では、ファイル名及び識別番号によってファイルを区別しているが、同一内容のファイルは同一の識別番号を保持していることを前提にしている。
【0017】
この技術によって、同一内容の複数のファイルを記憶することや、呼び出すことを防ぐとともに、異なる内容でファイルを区別することが可能になる。新たにファイルを作成した場合、ファイルに変更を加えた場合は新たな識別番号が与えられる。
【0018】
【発明が解決しようとする課題】
例えば、コンピュータプログラムのファイルの場合、図2に示すような構成をとることがある。図2の例の場合、コンピュータプログラムA0210は登録者Aが登録しコンピュータプログラムB0211は登録者Bが登録した異なるコンピュータプログラムである。同名であるが内容の異なるfileA0212とfileA0214はそれぞれ別のファイルとして保持する必要がある。一方、共に共通して用いるファイルであるfileB0213はコンピュータプログラムA0210とコンピュータプログラムB0211 でそれぞれに保持するのではなく、同一のファイルとして共有のファイルを1つ保持することが必要である。
【0019】
しかしながら、上述の従来の技術では、以下の問題点がある。
【0020】
すなわち、複数の異なる利用者によって共有されるファイル記憶装置において、同一のファイル名を持つが内容の異なるファイルを別のファイルとして管理するとともに複数の登録者によって登録されたファイルの中に内容の等しいファイルがあれば別のファイルとして扱わない(単一のファイルとして扱う)ことが不可能だということである。
【0021】
特開平8−339321の技術では、ファイル名およびそのバージョンをユニークな管理IDに基づいて管理することにより、登録する際のファイル名が既に登録されているファイル名と同一の場合でも、そのファイルの登録が可能であり、同名のファイルについては別のファイルとして保持することができる。しかし、管理ID毎にファイルを管理するので、ファイル名が等しく内容も等しいファイルであっても別のファイルとして管理されて同じ内容のファイルが複数個登録されてしまい、複数の利用者で共通するプログラムファイル等について単一のファイルとして扱うことが不可能であるという問題点がある
また、特許第2864932号の技術では、ファイル毎に異なる識別番号を付与してファイルを管理するが、同一識別番号のものは登録できない或いは識別子が異なれば同一内容の複数のファイルを単一のファイルとして管理できないという問題点がある。
【0022】
本発明の目的は、上記の問題点を解決し、同名のファイルであるが内容の異なるファイルの管理を可能にするとともに内容の等しいファイルが複数の登録者によって登録された場合それらのファイルを単一のファイルとして管理するファイル管理システムおよび方法を提供することにある。
【0024】
【課題を解決するための手段】
本願第の発明のファイル管理システムは、ファイルを管理するファイル管理システムであって、登録するファイルと登録するファイル名と登録するファイル識別子とを入力してデータ処理装置に送出するファイル入力装置と、ファイル取り出しを要求するファイルのファイル名とファイル識別子を入力してデータ処理装置に送出するファイル要求入力装置と、ファイル名とファイル識別子と個々のファイルを一意に特定する管理IDとの対応関係を記録した対応表および管理IDとファイルとを記録したファイル記憶部を含むファイル記憶装置と、前記ファイル要求入力装置に入力されたファイル名とファイル識別子とを受け取り前記対応表を検索し、対応する管理IDの有無の判断をし、あるならその管理IDを検索する対応表検索手段,前記対応表検索手段により検索された管理IDでファイル記憶部に登録されているファイルを検索し、検索したファイルをファイル出力装置に送出し、また、新規管理ID取得要求にたいして登録するファイルのために既に登録されているファイルの管理IDと重複しない新たな管理IDを生成するファイル検索手段,前記ファイル入力装置に入力されたファイルを受け取り、登録するファイルの内容と前記ファイル記憶部に登録されているファイルの内容とを比較し、同一内容のファイルの有無を判断し、同一内容のファイルがあるならば、その管理IDを出力するファイル内容比較手段,前記ファイル入力装置に入力されたファイルとそのファイル名とファイル識別子とを受け取り、前記ファイル内容比較手段により登録するファイルの内容と内容の等しいファイルが前記ファイル記憶部に登録されていると判断された場合に、前記ファイル入力装置に入力された前記登録するファイル名と前記登録するファイル識別子と前記ファイル内容比較手段により出力された前記内容の等しいファイルの管理IDとを前記対応表に登録し、前記ファイル内容比較手段により同一内容のファイルが登録されていないと判断された場合に、前記登録するファイル名と前記登録するファイル識別子と前記ファイル検索手段により生成された新たな管理IDとを前記対応表に登録する対応表変更手段,前記登録するファイルと内容の等しいファイルが前記ファイル記憶部に登録されていない場合に、ファイル検索手段が作成した新たな管理IDと前記登録するファイルとを前記ファイル記憶部に登録するファイル登録削除手段,を含むデータ処理装置と、前記ファイル要求入力装置が要求したファイル名およびファイル識別子に対応するファイルを前記データ処理装置から渡され前記ファイル要求入力装置に送出するファイル出力装置と、を備えて成ることを特徴とする。
【0025】
本願第の発明のファイル管理システムは、ファイルを管理するファイル管理システムであって、登録するファイルと登録するファイル名と登録するファイル識別子とを入力してデータ処理装置に送出するファイル入力装置と、ファイル取り出しを要求するファイルのファイル名とファイル識別子を入力してデータ処理装置に送出するファイル要求入力装置と、ファイル名とファイル識別子と個々のファイルを一意に特定する管理IDとの対応関係を記録した対応表および管理IDとファイルとを記録したファイル記憶部を含むファイル記憶装置と、前記ファイル要求入力装置に入力されたファイル名とファイル識別子とを受け取り前記対応表を検索し、対応する管理IDの有無の判断をし、あるならその管理IDを検索する対応表検索手段,前記対応表検索手段により検索された管理IDでファイル記憶部に登録されているファイルを検索し、検索したファイルをファイル出力装置に送出し、また、新規管理ID取得要求にたいして既に登録されているファイルの管理IDと重複しない新たな管理IDを生成するファイル検索手段,前記ファイル入力装置に入力されたファイルを受け取り、登録するファイルの内容と前記ファイル記憶部に登録されているファイルの内容とを比較し、同一内容のファイルの有無を判断し、同一内容のファイルがあるならば、その管理IDを出力するファイル内容比較手段,前記ファイル入力装置に入力されたファイルとそのファイル名とファイル識別子とを受け取り、前記ファイル入力装置に入力された前記登録するファイル名と前記登録するファイル識別子と前記ファイル検索手段により生成された新たな管理IDとを前記対応表に登録し、その後、前記ファイル内容比較手段が同一内容のファイルがあると判断した場合、前記登録されたファイル名とファイル識別子と前記新たな管理IDとを対応表から削除し、前記登録されたファイル名とファイル識別子と前記ファイル内容比較手段が出力する前記同一内容のファイルの管理IDとを前記対応表に登録する対応表変更手段,前記ファイル入力装置に対してファイルとファイル名とファイル識別子が入力されたときに、前記ファイル検索手段が作成した新たな管理IDと前記登録するファイルとをファイル記憶部に登録し、前記ファイル内容比較手段が同一内容のファイルがあると判断した時、前記新たな管理IDとそれに対応する前記新たに登録されたファイルとを削除するファイル登録削除手段,を含むデータ処理装置と、前記ファイル要求入力装置が要求したファイル名およびファイル識別子に対応するファイルを前記データ処理装置から渡され前記ファイル要求入力装置に送出するファイル出力装置と、を備えて成ることを特徴とする。
【0026】
本願第の発明のファイル管理システムは、第または第の発明において前記ファイル記憶装置に、ファイルのハッシュ値と管理IDとの対応関係を記録したハッシュ表を含み、前記データ処理装置に、前記登録するファイルのハッシュ値で前記ハッシュ表を検索するハッシュ表検索手段,および内容の等しいファイルが前記ファイル記憶部に登録されていない場合に前記登録するファイルのハッシュ値と前記新たな管理IDとを前記ハッシュ表に登録するハッシュ表変更手段を含み、前記ファイル内容比較手段は,前記ハッシュ表検索手段で検索した結果一致したものの管理IDに対応するファイルについて登録するファイルとファイルの内容を比較する、ことを特徴とする。
【0027】
本願第の発明のファイル管理システムは、第の発明において前記ハッシュ表は、ファイル名毎に存在し、前記対応表検索手段は、登録するファイルのファイル名と同名のファイルが存在するか否か前記対応表を検索して調べ、前記ハッシュ表検索手段は、同名のファイルが前記対応表に登録されていない場合は前記ハッシュ表の検索結果は存在しなかったとし、同名のファイルが前記対応表に登録されていれる場合は前記ファイル名に対応する前記ハッシュ表を前記登録するファイルのハッシュ値をキーとして検索する、ことを特徴とする。
【0028】
本願第の発明のファイル管理システムは、第の発明において前記ハッシュ表は、全てのファイル名に対して1つ存在する、ことを特徴とする。
【0030】
本願第の発明のファイル管理方法は、ファイル入力装置とデータ処理装置と記憶装置とを備え前記記憶装置に対応表とハッシュ表とファイル記憶部とを含むファイル管理システムにおいてファイルを管理するファイル管理方法であって、前記ファイル入力装置は入力された登録するファイルとファイル名とファイル識別子とを前記データ処理装置に送出し前記データ処理装置のハッシュ表検索手段は登録するファイルのハッシュ値をキーにしてファイルのハッシュ値と個々のファイルを一意に特定する管理IDとの対応関係を記録した前記ハッシュ表を検索し、前記ハッシュ表を検索した結果管理IDが得られた場合には、前記データ処理装置のファイル内容比較手段はその管理IDに対応するファイルを前記ファイル記憶部から検索して取り出し登録するファイルとファイルの内容を比較し、前記取り出したファイルの内容が登録するファイルの内容と等しい場合には、前記データ処理装置の対応表変更手段は登録するファイル名と登録するファイル識別子と前記取り出したファイルの管理IDとを前記対応表に登録し、前記ハッシュ表検索手段は前記ハッシュ表を検索し、前記ハッシュ表の検索で一致しない場合あるいは前記ハッシュ表の検索で一致したが内容の等しいファイルが存在しない場合には、前記データ処理装置のファイル検索手段は既に登録されているファイルの管理IDと重複しない新たな管理IDを生成し前記データ処理装置のファイル登録削除手段は前記新たな管理IDと登録するファイルとを前記ファイル記憶部に登録し、前記データ処理装置のハッシュ表変更手段は登録するファイルのハッシュ値をキーにして前記新たな管理IDを前記ハッシュ表に登録し、前記対応表変更手段は登録するファイル名と登録するファイル識別子と前記新たな管理IDとを前記対応表に登録する、ことを特徴とする。
【0031】
本願第の発明のファイル管理方法は、ファイル入力装置とデータ処理装置と記憶装置とを備え前記記憶装置に対応表とハッシュ表とファイル記憶部とを含むファイル管理システムにおいてファイルを管理するファイル管理方法であって、前記ファイル入力装置は入力された登録するファイルとファイル名とファイル識別子とを前記データ処理装置に送出し前記データ処理装置のファイル検索手段は既に登録されているファイルの管理IDと重複しない新たな管理IDを生成し前記データ処理装置のファイル登録削除手段は前記新たな管理IDと登録するファイルとを前記ファイル記憶部に登録し、前記データ処理装置の対応表変更手段は登録するファイル名と登録するファイル識別子と前記新たな管理IDとを前記対応表に登録し、前記データ処理装置のハッシュ表検索手段は登録するファイルのハッシュ値をキーにしてファイルのハッシュ値と個々のファイルを一意に特定する管理IDとの対応関係を記録した前記ハッシュ表を検索し、前記ハッシュ表を検索した結果管理IDが得られた場合には、前記データ処理装置のファイル内容比較手段はその管理IDに対応するファイルを前記ファイル記憶部から検索して取り出し登録するファイルとファイルの内容を比較し、前記取り出したファイルの内容が登録するファイルの内容と等しい場合には、前記対応表変更手段は前記対応表に登録した前記新たな管理IDを前記取り出したファイルの管理IDに変更し、前記ファイル登録削除手段は前記ファイル記憶部に登録した前記新たな管理IDと登録するファイルとをファイル記憶部から削除し、前記ハッシュ表検索手段は前記ハッシュ表を検索し、前記ハッシュ表の検索で一致しない場合あるいは前記ハッシュ表の検索で一致したが内容の等しいファイルが存在しない場合には、前記データ処理装置のハッシュ表変更手段は登録するファイルのハッシュ値をキーにして前記新たな管理IDを前記ハッシュ表に登録する、ことを特徴とする。
【0032】
本願第の発明のファイル管理方法は、第または第の発明において前記ハッシュ表は、ファイル名毎に存在し、前記データ処理装置の対応表検索手段は登録するファイルのファイル名と同名のファイルが存在するか否か前記対応表を検索して調べ、前記ハッシュ表検索手段は同名のファイルが前記対応表に登録されていなければ検索結果は存在しなかったとし、同名のファイルが前記対応表に登録されていれば前記ファイル名に対応する前記ハッシュ表を前記登録するファイルのハッシュ値をキーとして検索する、ことを特徴とする。
【0033】
本願第の発明のファイル管理方法は、第または第の発明において前記ハッシュ表は、全てのファイル名に対して1つ存在する、ことを特徴とする。
【0035】
【発明の実施の形態】
本発明のファイル管理システム第1の実施の形態について、図面を用いて説明する。
【0036】
図1は、本発明の第1の実施の形態のブロック図である。
【0037】
図3は、対応表の例を示す図である。
【0038】
図4は、ハッシュ表の例を示す図である。
【0039】
図8は、ファイル記憶部の例を示す図である。
【0040】
本発明の第1の実施の形態は、図1に示すように、ファイル要求入力装置0101とファイル入力装置0102という2種類の入力装置、これらの入力を処理するデータ処理装置0110、ファイルやファイルの情報を保持するための表を保持するための記憶装置0120、さらにファイル要求に答えてファイルを送り出すためのファイル出力装置0103を持つ。
【0041】
一般的な形態として、ファイル要求入力装置0101、ファイル入力装置0102、ファイル出力装置0103、データ処理装置0110は通信機能を備えてネットワークで接続され、ファイルの登録者やファイルの要求者はネットワークを介して本発明のファイル管理システムに対する入力、出力を行なう。
【0042】
ファイル要求入力装置0101は、ファイルの要求者が使用する装置である。ファイル要求者は、データ処理装置0110に要求するファイルのファイル名と要求者に与えられたファイル識別子をファイル要求入力装置0101に入力する。
【0043】
ファイル入力装置0102は、登録するファイルと登録するファイルのファイル名と登録するファイルに対応づけされるファイル識別子とをファイルの登録者が入力する装置である。入力されたファイルとファイル名とファイル識別子とはデータ処理装置0110に送出される。
【0044】
ファイル出力装置0103は、要求に従ったファイルを要求者に対して出力する。
【0045】
データ処理装置0110は、対応表0121に対する対応表検索部0111と対応表変更部0112,ハッシュ表0122に対するハッシュ表検索部0113とハッシュ表変更部0114,並びにファイル記憶部0123に対するファイル検索部0115とファイル登録削除部0116とファイル内容比較部0117からなる。
【0046】
記憶装置0120は、対応表0121とハッシュ表0122とファイル記憶部0123とからなる。
【0047】
対応表0121は、ファイル名とファイル識別子とそれに対応するファイルの管理IDとを記録した表である。図3に示した例では、ファイル名が”fileA”であるファイルは3個登録されている。それぞれ”usr001.prog01”、”usr001.prog02”、”usr002.prog01”というファイル識別子で登録されており、それぞれ”A-1”、”A-2”、”A-1”という管理IDと対応している。ここで、ファイル識別子が”usr001.prog01”であるファイルと”usr001.prog02”であるファイルは管理IDが異なるので、ファイル名は等しいが内容が異なるファイルであると認識される。また、ファイル識別子が”usr001.prog01”であるファイルと”usr002.prog01”であるファイルの管理IDは等しいので、これらのファイルは内容が等しいとみなし単一のファイルとして扱われる。
【0048】
対応表検索部0111は、ファイル名及びファイル識別子から、それらに対応する管理IDを対応表0121から求める機能を提供する。また、ファイル名のみを指定して検索することもできる。
【0049】
対応表変更部0112は、新たなファイル名,ファイル識別子および管理IDの対応関係を対応表0121に登録する、もしくは既に登録されている対応関係を変更または削除する機能を提供する。
【0050】
ハッシュ表0122は、各ファイル名毎に存在し、ファイル自身(ファイル実体)のバイト配列からある長さの数値(ハッシュ値)を計算し、この値(ハッシュ値)をキー値とし、そのキー値とそのファイルに対応する管理IDを記録した表である。
【0051】
ハッシュ表の具体的な例を図4に示す。図4(a)を参照すると、ファイル名が”fileA” であるファイルに関して、ファイル0401と、ファイル0402と、ファイル0403と3つのファイルが登録されている。ファイル0401はFuncAの内容を、ファイル0402はFuncBの内容を、ファイル0403はFuncCの内容を持ち、それぞれ中身が異なっている。ファイルの内容が異なるので、それぞれは異なる管理IDを持っている。これらのファイルからファイル名がfileA のハッシュ表0122を作成すると、図4(b)のようになる。図4(b)の例では、ファイル0402とファイル0403から求めたハッシュ表0122のキー値が同じ値になっている。この場合、ハッシュ表検索部0113により、ファイル0402あるいはファイル0403どちらのファイルのハッシュ値でハッシュ表0122を検索しても”A-2”と”A-3”の両方の管理IDが得られる。このように、ハッシュ表0122を検索して得られた管理IDを持つファイルは、検索に用いたファイルとまったく同じものであるとは限らない。しかし、内容の同じファイルから計算されるキー値(ハッシュ値)は必ず同じであるので、既に登録されているファイルの中に内容の同じファイルがあるのならば、ハッシュ表0122を検索した結果得られる管理IDを持つファイルの中に必ず内容の同じファイルがあると言える。つまり、ハッシュ表0122をファイルのハッシュ値で引くと、そのファイルと内容の等しい可能性のあるファイルが得られる。ハッシュ表0122を用いることによって、すべての同名ファイルとの内容比較を行なう必要がなくなるので、ファイルの内容比較に必要となる時間を大幅に短縮できる。
【0052】
ハッシュ表検索部0113は、ファイルから計算したハッシュ値をキー値としてハッシュ表0122を検索しキー値に対応する管理IDを得る機能を提供する。
【0053】
ハッシュ表変更部0114は、ファイルと管理IDを与えられると、ファイルからハッシュ表のキー値(ハッシュ値)を計算しそのキー値と与えられた管理IDの対応関係をハッシュ表0122に登録する。また、与えられた管理IDをハッシュ表から削除する機能も提供する。
【0054】
ファイル記憶部0123は、ファイル自身(ファイル実体)を管理IDを用いて記憶する機能を提供する。
【0055】
ファイル検索部0115は、ファイル記憶部0123を検索して、与えられた管理IDに対応するファイルを検索する機能を提供する。また、登録されるファイルのために、新たな管理IDを作成する機能も提供する。さらに、検索したファイルをファイル出力装置0103に送出する機能も提供する。
【0056】
ファイル登録削除部0116は、ファイルと管理IDが与えられると、そのファイルを与えられた管理IDでファイル記憶部0123に登録する、もしくは与えられた管理IDで登録されてるファイルをファイル記憶部0123から削除する機能を提供する。ファイル記憶部0123の例を図8に示す。
【0057】
ファイル内容比較部0117は、登録するファイルの内容とファイル記憶部0123に登録されているファイルの内容とを比較する。
【0058】
本実施の形態のファイル管理システムは、ファイルを管理ID及びファイル識別子により管理する。
【0059】
管理IDとは、ファイル記憶部0123に保存されたファイルを特定するためのID(識別子)である。ここでは、各ファイルに与える管理IDを特定しないが、例えば”ファイル名+通し番号”のようにして、ファイル記憶部0123に保持されているすべてのファイルそれぞれに異なる管理IDを与える。
【0060】
ファイル識別子は、ファイルの登録者や要求者等を識別するための値である。ファイル識別子が異なれば、ファイル名が等しくても内容が異なれば別のファイルとして扱うことができる。ファイル識別子は異なる登録者間で必ず異なるものになる必要がある。さらに、ひとつの登録者であっても、例えば複数のコンピュータプログラムを構成するファイルを登録する場合、ファイル識別子を異なるものにすることで、そのコンピュータプログラムが同名で内容の異なるファイルを持っていても別のファイルとして扱うことが可能になる。そこで、ひとつの登録者が複数のファイル識別子を持つことが可能である必要がある。ここでファイル識別子を具体的には定めないが、例としては登録者@コンピュータプログラムのような形が考えられる。このようにする意味は、登録者をあらわす部分はあらかじめ登録者間で一意になるよう定め、コンピュータプログラムの部分に関しては登録者が自由に扱えるということである。また、自動的に利用されていない新たな識別子を割り当てる装置を利用することで利用者間、コンピュータプログラム間で異なる識別子を利用することが可能である。
【0061】
本発明の第1の実施の形態の動作について、図面を参照して説明する。
【0062】
最初に、図1および図5を用いて、新たにファイルを登録する場合の動作について説明する。
【0063】
図5は、ファイル登録時の動作を示すフローチャート図である。
【0064】
図5を参照すると、まず、ファイルの登録者によって、ファイル及びそのファイルを呼び出す時に用いるファイル識別子がファイル入力装置0102に入力される(ステップ0501)。
【0065】
この新しく登録するファイルのファイル名を対応表検索部0111を用いて対応表0121から検索する(ステップ0502)。これにより、既に同名のファイルが存在しているか調べることができる。
【0066】
もし、同名ファイルが既に登録されているならば(ステップ0503)、そのファイルと新たに登録するファイルの内容が等しいか異なるかを調べる。
【0067】
ハッシュ表検索部0113は新たに登録するファイル名に対応するハッシュ表0122をファイルのハッシュ値を用いて検索する(ステップ0504)。検索した結果、一致したキー値が得られなければ、新たに登録するファイルと内容の等しい同名のファイルは存在しないということである。
【0068】
もし、検索した結果、一致したキー値が得られれば(ステップ0505)、そのキー値に対応する管理IDのファイルは新たに登録するファイルと内容の等しいファイルである可能性があるため、次にファイルの内容を比較する。ファイル検索部0115は、ステップ0504にて検索された一致したキー値に対応する管理IDを持つファイルをファイル記憶部0123から検索し取り出す。ファイル内容比較部0117は、取り出されたファイル全てと新たに登録するファイルを比較する(ステップ506)。
【0069】
もし、内容の等しいファイルがあるならば(ステップ0507)、そのファイルと新しく登録するファイルを単一のファイルとして扱うために、新たに登録するファイルを記憶装置0120に登録する事はせず、与えられたファイル識別子に対応するファイルはステップ0506で得られたファイル (つまり、新たに登録するファイルと内容の等しい既に登録されているファイル) とする。そして、与えられたファイル識別子に対応する管理IDは既に登録されている内容の等しいファイルの管理IDとする(ステップ0511)。
【0070】
ステップ0503で同名のファイルが無かった場合,ステップ0505で一致しなかった場合,或いはステップ0507で内容の等しいファイルが存在しなかった場合には、新たに登録するファイルをファイル記憶部0123に新たなファイルとして登録する必要がある。まず、ファイル検索部0115がファイル記憶部0123を調べ、他のファイルに使われていない新たな管理IDを得る。その新たな管理IDを新たに登録するファイルの管理IDとし、また与えられたファイル識別子に対応する管理IDとする(ステップ0508)。
【0071】
ファイル登録削除部0116は、この管理IDで新たに登録するファイルをファイル記憶部0123に登録する(ステップ0509)。
【0072】
また、ハッシュ表変更部0114は、新たに登録するファイルのハッシュ値をキーにして管理IDをハッシュ表0122に登録する(ステップ0510)。
【0073】
ステップ0511,或いはステップ0510の後、対応表変更部0112は、登録するファイル識別子とそれぞれステップ0511,或いは0508で関連付けられた管理IDとの対応を対応表0121に登録する(ステップ0512)。
【0074】
続いて、図1および図6を用いて、ファイルを要求する場合の動作について説明する。
【0075】
図6は、ファイル要求時の動作を示すフローチャート図である。
【0076】
図6を参照すると、まず、ファイルの要求者から要求するファイル名及び要求者に割り当てられたファイル識別子をファイル要求入力装置0101に入力する (ステップ0601)。
【0077】
対応表検索部0111は、対応表0121から入力されたファイル名およびファイル識別子に対応する管理IDを検索する(ステップ0602)。
【0078】
もし、対応する管理IDが得られなかった場合は、ファイルが登録されていないことを示すエラーを、ファイルの代わりにファイル出力装置0103に出力する (ステップ0604)。
【0079】
対応する管理IDが得られた場合は、ファイル検索部0115が得られた管理IDに対応するファイルをファイル記憶部0123から取り出す(ステップ0605)。
【0080】
得られたファイルを入力されたファイル名を持つファイルとしてファイル出力装置0103に出力する(ステップ0606)。ファイル出力装置0103はファイルの要求者の元にファイルを送り出す。
【0081】
利用の形態の例として、要求者はファイル識別子をひとつだけ与えられるというものがあげられる。登録者はひとつの要求者が利用するファイル全てを同じファイル識別子で登録する。例えば、コンピュータプログラムを構成するファイルを登録する場合はひとつのコンピュータプログラムを構成する全てのファイルをひとつのファイル識別子で登録する。これにより、このコンピュータプログラムを実行する者つまりコンピュータプログラムのファイルの要求者は、このひとつのファイル識別子をファイル要求のたびに示すことでコンピュータプログラムを構成するファイル全てを得ることができる。
【0082】
次に、具体的な例を用いて、第1の実施の形態のデータ処理装置0110と記憶装置0120の動作を、より詳細に説明する。
【0083】
最初に、図5および図9を参照して、ファイル登録時の動作を説明する。
【0084】
図9は、ファイル登録時の動作の具体例を説明する図である。
【0085】
この例においては、図2におけるコンピュータプログラムA0210を構成するファイルfileA0212、fileB0213、fileC0215がファイル識別子”usr001.prog01”で既に登録されているものとする。このときの対応表,ハッシュ表,及びファイル記憶部の状態を図9(b)に示す。
【0086】
ここで、図2に示すコンピュータプログラムB0211を構成するファイルfileA0214、fileB0213、fileD0216をファイル識別子”usr002.prog01”で登録する(図9(a)参照)。
【0087】
まず、ファイル入力装置0102に登録するファイルであるfileA0214、fileB0213、fileD0216とファイル識別子”usr002.prog01”を入力する(ステップ0501)。
【0088】
対応表検索部0111はそれぞれfileA0214、fileB0213、fileD0216 と同名のファイルが既に登録されているか調べる(ステップ0502)。この場合、fileD0216 については同名ファイルはない。同名ファイルが既に登録されているfileA0214、fileB0213については、その同名ファイルの中に内容の等しいファイルが存在するかを調べる。
【0089】
ハッシュ表検索部0113はファイルfileA0214、fileB0213のハッシュ値をキーにしてハッシュ表を検索する(ステップ0504)。
【0090】
fileA0214は内容の等しいファイルは検索されないが、fileB0213については管理ID”fileB-1”のファイルが検索される(ステップ0505)。
【0091】
ハッシュ表で検索されただけでは、本当に内容が等しいのか、ファイルから計算されるハッシュ表のキー値が偶然等しいものになったのか区別がつかない。そこで、ファイル検索部0115は管理ID”fileB-1” をもつファイルをファイル記憶部0123から取り出す。ファイル内容比較部0117はこの取り出されたファイルと登録されるファイルfileB0213との内容を比較する(ステップ0506)。
【0092】
ここでは、この2つのファイルは内容の等しいファイルである。従って、ファイル名”fileB”、且つファイル識別子”usr002.prog01”のファイルは管理IDが”fileB-1”となる(ステップ0511)。
【0093】
内容の等しいファイルの登録されていないfileA0214とfileD0216についてはファイルを新たに登録する必要がある。
【0094】
まず、ファイル検索部0115が他のファイルが用いていない新たな管理IDを作成する(ステップ0508)。ここでは、fileA0214には”fileA-2”、fileD0216 には”fileD-1”が割り当てられる。
【0095】
次に、ファイル登録削除部0116がファイルfileA0214、fileD0216をファイル記憶部にそれぞれ管理ID”fileA-2”、”fileD-1”で登録する(ステップ0509)。結果として、ファイル記憶部には1207、1208の列が加わることになる。
【0096】
次に、ハッシュ表変更部0114がハッシュ表にファイルfileA0214、fileD0216と管理ID”fileA-2”、”fileD-1”との対応を登録する(ステップ0510)。結果として、ハッシュ表には1209、1210の列が加わる。
【0097】
最後に、対応表変更部0112はファイルfileA0214、fileB0213、fileD0216 に与えられた管理IDと、登録時に与えられたファイル識別子”usr002.prog01” との対応を対応表に登録する(ステップ0512)。結果として、対応表には1211、1212、1213の列が加わることになる。
【0098】
最終的に登録が終了した時の対応表,ハッシュ表およびファイル記憶部の状態は、図9(c)に示すとおりである。
【0099】
続いて 、図6および図9を参照して、ファイル要求時の動作を説明する。
【0100】
ファイル要求時は、ファイル名とファイル識別子をファイル要求入力装置0101に入力する(ステップ0601)。
【0101】
例えば、図9の結果を例にすると、ファイル名”fileA”、ファイル識別子”usr001.prog01”でファイルを要求すると、対応表検索部0111は対応表1204を検索し(ステップ0602)、対応する管理ID”fileA-1”を返す。
【0102】
ファイル検索部0115は管理ID”fileA-1”をファイル記憶部1206から検索し(ステップ0605)、得られたファイルfileA0212をファイル出力装置0103から出力する(ステップ0606)。
【0103】
次に、本発明の第2の実施の形態について説明する。
【0104】
ファイルの内容を比較する処理は比較的時間がかかることが予想される。そこで新たに登録したファイルと内容が等しいファイルの有無を調査している間にでも、その登録中のファイルの要求があった場合、すぐにファイルを送り出すことができるシステムであることが望ましい。
【0105】
第2の実施の形態は、新たに登録したファイルと内容が等しいファイルの有無を調査している間にでも、その登録中のファイルの要求があった場合、すぐにファイルを送り出すことが可能な点で、第1の実施の形態と異なる。
【0106】
第2の実施の形態における新たにファイルを登録する場合の動作について、図1および図7を用いて、説明する。
【0107】
図7は、第2の実施の形態におけるファイル登録時の動作を示すフローチャート図である。
【0108】
図7を参照すると、ステップ0701は、図5のステップ0501と等しい。
【0109】
ファイル検索部0115がファイル記憶部0123を調べ、他のファイルの使用していない新たな管理IDを得る。この新たな管理IDを登録するファイルの管理IDとし、また登録するファイル識別子に対応する管理IDとする(ステップ0702)。
【0110】
ファイル登録削除部0116は、この管理IDで登録するファイルをファイル記憶部0123に登録する(ステップ0703)。
【0111】
対応表変更部0112は、登録するファイル識別子とこの管理IDとの対応を対応表0121に登録する(ステップ0704)。つまり、図5のステップ0508、0509、0512と等しい操作を行なう。
【0112】
この時点で、登録するファイルの要求が起きた場合、このファイルを送り出すことが可能になる。
【0113】
次に、登録するファイルと内容の等しいファイルの有無を調べ、あるならば共有する操作を行なう。すなわち、ステップ0705からステップ0710までの操作は図5のステップ0502からステップ0507までと等しい。ただし、ステップ0706において同名ファイルが無かった場合,ステップ0708においてハッシュ表参照の結果ファイルが得られなかった場合,或いはステップ0710において内容の等しいファイルが存在しなかった場合、図5のステップ0510と同様の操作を行ないファイルのハッシュ値をキーにハッシュ表にステップ0702で得た管理IDを登録しファイルの登録を完了する(ステップ0711)。
【0114】
ステップ0710にて内容の等しいファイルが存在した場合は、図5のステップ0511〜ステップ0512と同様の操作を行ない、与えられたファイル識別子に対応する管理IDは既に登録されている内容の等しいファイルの管理IDとし(ステップ0712)、ステップ0704で登録した管理IDを既に登録されている内容の等しいファイルの管理IDで変更する(ステップ0713)。
【0115】
この後、ファイル登録削除部0116はステップ0703でファイル記憶部0123に登録したファイル及び管理IDを削除する(ステップ0714)。
【0116】
次に、図7および図10を用いて、第2の実施の形態の具体例をより詳細に説明する。登録前の記憶装置0120の状態を図9(b)に示し、新たに登録するファイルとして、第1の実施例の具体例の説明で用いた図9の例(図9(a))を使用する。
【0117】
図10は、ファイル登録時の動作の具体例を説明する図である。
【0118】
ファイルが入力されたら、まず、新たな管理IDを得てファイルを登録する。ここでは、それぞれ管理IDとしてfileA0214には”fileA-2”、fileB0213 には”fileB-2”、fileD0216には”fileD-1”を与える(ステップ0702)。
【0119】
ファイル登録削除部0116はそれぞれのファイルをここで得た管理IDでファイル記憶部に登録する(ステップ0703)。結果として、ファイル記憶部に1301、1302、1303の列が加わる(図10(c)参照)。
【0120】
次に、対応表変更部0112はファイル名”fileA”、”fileB”、”fileD” とファイル識別子”usr002.prog01”の組み合わせと管理ID”fileA-2”、”fileB-2”、”fileD-1”の対応を対応表に登録する(ステップ0704)。結果として、対応表に1304、1305、1306の列が加わる(図10(a)参照)。
【0121】
ここからは、第1の実施の形態と同じように処理を進める。ただし、同名ファイルのないfileD0216 および登録されているファイルの中に同じ内容のファイルがないfileA0214 に関しては、既にステップ0702〜ステップ0704で対応表およびファイル記憶部に登録した内容を書きかえる必要がないので、ハッシュ表変更部0114がハッシュ表にファイルfileA0214のハッシュ値と管理ID”fileA-2”の対応ならびにファイルfileD0216のハッシュ値と管理ID”filed-1”の対応を登録する(ステップ0711)。結果として、ハッシュ表に1307、1308の列が新たに加わる(図10(b)参照)。
【0122】
ステップ0710にて内容の等しいファイルfileB(管理ID”fileB-1”)が存在するfileB0213 については、既に登録されている内容の等しいファイルの管理IDを与えられたファイル識別子に対応する管理IDとし(ステップ0712)、ステップ0704で対応表に登録したファイル名”fileB”でファイル識別子”usr002.prog01”の管理ID”fileB-2”を”fileB-1”に書き替える(ステップ0712)。この後、ファイル登録削除部0116はステップ0703でファイル記憶部0123に登録した管理ID”fileB-2”のファイルfileBを削除する(ステップ0714)。
【0123】
そして、最終的な結果は、第1の実施形態で説明した具体例の結果である図9(c)の対応表、ハッシュ表、ファイル記憶部と等しくなる。
【0124】
更に、本発明の第3の実施の形態について、説明する。
【0125】
第1および第2の実施の形態においては、内容の等しいファイルはファイル名もまた等しいとしてきた。しかし、ファイル名が等しくなくとも内容は等しいファイルも存在し得る。これらについても単一のファイルとして扱えることが望ましい。
【0126】
第3の実施の形態は、ファイル名が等しくなくとも内容が等しいファイルを単一のファイルとして扱える点で、第1および第2の実施の形態と異なる。
【0127】
第3の実施の形態の構成は、図1と同様である。
【0128】
ただし、名前の異なるファイルについても内容が等しければ単一のファイルとして扱うようにするために、ハッシュ表0122は、ファイル名毎に分かれておらず、全てのファイル名に対し1つ存在することになる(図11参照)。
【0129】
ファイルの登録については図5、図7とは異なる。図5、図7ではファイル識別子、ファイル入力後同名のファイルの有無を検索しているが、本実施の形態ではファイル名はファイル内容が等しいか否かの判定には用いないので図5におけるステップ0502〜0503の同名ファイルの有無の調査を行わず、ステップ0501のファイル識別子、ファイル入力後ステップ0504の同内容のファイルの有無の調査、つまり、ファイルのハッシュ値をキー値とするハッシュ表の検索を行う。ステップ0504以後の処理は図5と等しい。また、図7においても、ステップ0705〜0706の同名ファイルの有無の調査は行わず、ステップ0704で管理IDとファイル名、ファイル識別子の対応を対応表に記録した後、ステップ0707の同内容のファイルの有無の調査、つまり、ファイルのハッシュ値をキー値とするハッシュ表の検索を行う。ステップ0707以後の処理は図7と等しい。なお、ファイルの要求の動作については図6と同様の手順で行なう。
【0130】
【発明の効果】
本発明の効果は、複数のファイル登録者や要求者によって共有されるファイル管理システムにおいて、同名のファイルの管理を容易かつ効率的に行なうことが可能になることである。その結果、ファイルの登録者は他の登録者との間で名前が等しくなることを避ける必要が無くなり、かつファイル管理システムはリソースの無駄を避けられる。
【0131】
その理由は、ファイル名が等しいファイルであっても内容の異なるファイルであれば別のファイルとして管理する手段を設け、また内容が等しいファイルであれば登録者が異なっても単一のファイルとして扱いファイル記憶部のリソースを共有する手段を設けたからである。
【図面の簡単な説明】
【図1】本発明の実施の形態のブロック図
【図2】複数のコンピュータプログラム間でのファイル名の衝突とファイルの共有を説明する図
【図3】対応表の例を示す図
【図4】ハッシュ表の例を示す図
【図5】ファイル登録時の動作を示すフローチャート図
【図6】ファイル要求時の動作を示すフローチャート図
【図7】ファイル登録時の動作を示すフローチャート図
【図8】ファイル記憶部の例を示す図
【図9】ファイル登録時の動作の具体例(a)登録するファイル(b)登録前(c)登録後を説明する図
【図10】ファイル登録時の動作の具体例(a)対応表(b)ハッシュ表(c)ファイル記憶部を説明する図
【図11】ハッシュ表の例を示す図
【図12】従来技術である一般的なファイルシステムにおけるファイルの管理方式の具体例を示す図
【図13】従来技術である一般的なファイルシステムにおけるディレクトリ構造の具体例を示す図
【図14】従来技術である特開平8−339321における実施形態のブロック図
【図15】従来技術である特開平8−339321における管理DBのデータ保存形式の具体例を示す図
【符号の説明】
0101 ファイル要求入力装置
0102 ファイル入力装置
0103 ファイル出力装置
0110 データ処理装置
0111 対応表検索部
0112 対応表変更部
0113 ハッシュ表検索部
0114 ハッシュ表変更部
0115 ファイル検索部
0116 ファイル登録削除部
0117 ファイル内容比較部
0120 記憶装置
0121 対応表
0122 ハッシュ表
0123 ファイル記憶部
0210 コンピュータプログラムA
0211 コンピュータプログラムB
0212 fileA
0213 fileB
0214 fileA
0215 fileC
0216 fileD
0401 ファイル
0402 ファイル
0403 ファイル
0801 ファイル
0802 ファイル
1001 ファイル要求入力装置
1002 ファイル入力装置
1003 ファイル出力装置
1010 管理サーバ
1011 管理DB検索部
1012 管理DB変更部
1013 ファイル検索部
1014 ファイル登録削除部
1020 記憶装置
1021 管理DB
1022 ファイルDB

Claims (9)

  1. ファイルを管理するファイル管理システムであって、
    登録するファイルと登録するファイル名と登録するファイル識別子とを入力してデータ処理装置に送出するファイル入力装置と、
    ファイル取り出しを要求するファイルのファイル名とファイル識別子を入力してデータ処理装置に送出するファイル要求入力装置と、
    ファイル名とファイル識別子と個々のファイルを一意に特定する管理IDとの対応関係を記録した対応表および管理IDとファイルとを記録したファイル記憶部を含むファイル記憶装置と、
    前記ファイル要求入力装置に入力されたファイル名とファイル識別子とを受け取り前記対応表を検索し、対応する管理IDの有無の判断をし、あるならその管理IDを検索する対応表検索手段,
    前記対応表検索手段により検索された管理IDでファイル記憶部に登録されているファイルを検索し、検索したファイルをファイル出力装置に送出し、また、新規管理ID取得要求にたいして登録するファイルのために既に登録されているファイルの管理IDと重複しない新たな管理IDを生成するファイル検索手段,
    前記ファイル入力装置に入力されたファイルを受け取り、登録するファイルの内容と前記ファイル記憶部に登録されているファイルの内容とを比較し、同一内容のファイルの有無を判断し、同一内容のファイルがあるならば、その管理IDを出力するファイル内容比較手段,
    前記ファイル入力装置に入力されたファイルとそのファイル名とファイル識別子とを受け取り、前記ファイル内容比較手段により登録するファイルの内容と内容の等しいファイルが前記ファイル記憶部に登録されていると判断された場合に、前記ファイル入力装置に入力された前記登録するファイル名と前記登録するファイル識別子と前記ファイル内容比較手段により出力された前記内容の等しいファイルの管理IDとを前記対応表に登録し、前記ファイル内容比較手段により同一内容のファイルが登録されていないと判断された場合に、前記登録するファイル名と前記登録するファイル識別子と前記ファイル検索手段により生成された新たな管理IDとを前記対応表に登録する対応表変更手段,
    前記登録するファイルと内容の等しいファイルが前記ファイル記憶部に登録されていない場合に、ファイル検索手段が作成した新たな管理IDと前記登録するファイルとを前記ファイル記憶部に登録するファイル登録削除手段,を含むデータ処理装置と、
    前記ファイル要求入力装置が要求したファイル名およびファイル識別子に対応するファイルを前記データ処理装置から渡され前記ファイル要求入力装置に送出するファイル出力装置と、
    を備えて成ることを特徴とするファイル管理システム。
  2. ファイルを管理するファイル管理システムであって、
    登録するファイルと登録するファイル名と登録するファイル識別子とを入力してデータ処理装置に送出するファイル入力装置と、
    ファイル取り出しを要求するファイルのファイル名とファイル識別子を入力してデータ処理装置に送出するファイル要求入力装置と、
    ファイル名とファイル識別子と個々のファイルを一意に特定する管理IDとの対応関係を記録した対応表および管理IDとファイルとを記録したファイル記憶部を含むファイル記憶装置と、
    前記ファイル要求入力装置に入力されたファイル名とファイル識別子とを受け取り前記対応表を検索し、対応する管理IDの有無の判断をし、あるならその管理IDを検索する対応表検索手段,
    前記対応表検索手段により検索された管理IDでファイル記憶部に登録されているファイルを検索し、検索したファイルをファイル出力装置に送出し、また、新規管理ID取得要求にたいして既に登録されているファイルの管理IDと重複しない新たな管理IDを生成するファイル検索手段,
    前記ファイル入力装置に入力されたファイルを受け取り、登録するファイルの内容と前記ファイル記憶部に登録されているファイルの内容とを比較し、同一内容のファイルの有無を判断し、同一内容のファイルがあるならば、その管理IDを出力するファイル内容比較手段,
    前記ファイル入力装置に入力されたファイルとそのファイル名とファイル識別子とを受け取り、前記ファイル入力装置に入力された前記登録するファイル名と前記登録するファイル識別子と前記ファイル検索手段により生成された新たな管理IDとを前記対応表に登録し、その後、前記ファイル内容比較手段が同一内容のファイルがあると判断した場合、前記登録されたファイル名とファイル識別子と前記新たな管理IDとを対応表から削除し、前記登録されたファイル名とファイル識別子と前記ファイル内容比較手段が出力する前記同一内容のファイルの管理IDとを前記対応表に登録する対応表変更手段,
    前記ファイル入力装置に対してファイルとファイル名とファイル識別子が入力されたときに、前記ファイル検索手段が作成した新たな管理IDと前記登録するファイルとをファイル記憶部に登録し、前記ファイル内容比較手段が同一内容のファイルがあると判断した時、前記新たな管理IDとそれに対応する前記新たに登録されたファイルとを削除するファイル登録削除手段,を含むデータ処理装置と、
    前記ファイル要求入力装置が要求したファイル名およびファイル識別子に対応するファイルを前記データ処理装置から渡され前記ファイル要求入力装置に送出するファイル出力装置と、
    を備えて成ることを特徴とするファイル管理システム。
  3. 前記ファイル記憶装置に、
    ファイルのハッシュ値と管理IDとの対応関係を記録したハッシュ表を含み、
    前記データ処理装置に、
    前記登録するファイルのハッシュ値で前記ハッシュ表を検索するハッシュ表検索手段,
    および内容の等しいファイルが前記ファイル記憶部に登録されていない場合に前記登録するファイルのハッシュ値と前記新たな管理IDとを前記ハッシュ表に登録するハッシュ表変更手段を含み、
    前記ファイル内容比較手段は,前記ハッシュ表検索手段で検索した結果一致したものの管理IDに対応するファイルについて登録するファイルとファイルの内容を比較する、
    ことを特徴とする請求項または記載のファイル管理システム。
  4. 前記ハッシュ表は、ファイル名毎に存在し、
    前記対応表検索手段は、登録するファイルのファイル名と同名のファイルが存在するか否か前記対応表を検索して調べ、
    前記ハッシュ表検索手段は、同名のファイルが前記対応表に登録されていない場合は前記ハッシュ表の検索結果は存在しなかったとし、同名のファイルが前記対応表に登録されていれる場合は前記ファイル名に対応する前記ハッシュ表を前記登録するファイルのハッシュ値をキーとして検索する、
    ことを特徴とする請求項記載のファイル管理システム。
  5. 前記ハッシュ表は、全てのファイル名に対して1つ存在する、
    ことを特徴とする請求項記載のファイル管理システム。
  6. ファイル入力装置とデータ処理装置と記憶装置とを備え前記記憶装置に対応表とハッシュ表とファイル記憶部とを含むファイル管理システムにおいてファイルを管理するファイル管理方法であって、
    前記ファイル入力装置は入力された登録するファイルとファイル名とファイル識別子とを前記データ処理装置に送出し
    前記データ処理装置のハッシュ表検索手段は登録するファイルのハッシュ値をキーにしてファイルのハッシュ値と個々のファイルを一意に特定する管理IDとの対応関係を記録した前記ハッシュ表を検索し、
    前記ハッシュ表を検索した結果管理IDが得られた場合には、前記データ処理装置のファイル内容比較手段はその管理IDに対応するファイルを前記ファイル記憶部から検索して取り出し登録するファイルとファイルの内容を比較し、
    前記取り出したファイルの内容が登録するファイルの内容と等しい場合には、前記データ処理装置の対応表変更手段は登録するファイル名と登録するファイル識別子と前記取り出したファイルの管理IDとを前記対応表に登録し、
    前記ハッシュ表検索手段は前記ハッシュ表を検索し、前記ハッシュ表の検索で一致しない場合あるいは前記ハッシュ表の検索で一致したが内容の等しいファイルが存在しない場合には、前記データ処理装置のファイル検索手段は既に登録されているファイルの管理IDと重複しない新たな管理IDを生成し前記データ処理装置のファイル登録削除手段は前記新たな管理IDと登録するファイルとを前記ファイル記憶部に登録し、前記データ処理装置のハッシュ表変更手段は登録するファイルのハッシュ値をキーにして前記新たな管理IDを前記ハッシュ表に登録し、前記対応表変更手段は登録するファイル名と登録するファイル識別子と前記新たな管理IDとを前記対応表に登録する、
    ことを特徴とするファイル管理方法。
  7. ファイル入力装置とデータ処理装置と記憶装置とを備え前記記憶装置に対応表とハッシュ表とファイル記憶部とを含むファイル管理システムにおいてファイルを管理するファイル管理方法であって、
    前記ファイル入力装置は入力された登録するファイルとファイル名とファイル識別子とを前記データ処理装置に送出し
    前記データ処理装置のファイル検索手段は既に登録されているファイルの管理IDと重複しない新たな管理IDを生成し
    前記データ処理装置のファイル登録削除手段は前記新たな管理IDと登録するファイルとを前記ファイル記憶部に登録し、
    前記データ処理装置の対応表変更手段は登録するファイル名と登録するファイル識別子と前記新たな管理IDとを前記対応表に登録し、
    前記データ処理装置のハッシュ表検索手段は登録するファイルのハッシュ値をキーにしてファイルのハッシュ値と個々のファイルを一意に特定する管理IDとの対応関係を記録した前記ハッシュ表を検索し、
    前記ハッシュ表を検索した結果管理IDが得られた場合には、前記データ処理装置のファイル内容比較手段はその管理IDに対応するファイルを前記ファイル記憶部から検索して取り出し登録するファイルとファイルの内容を比較し、
    前記取り出したファイルの内容が登録するファイルの内容と等しい場合には、前記対応表変更手段は前記対応表に登録した前記新たな管理IDを前記取り出したファイルの管理IDに変更し、前記ファイル登録削除手段は前記ファイル記憶部に登録した前記新たな管理IDと登録するファイルとをファイル記憶部から削除し、
    前記ハッシュ表検索手段は前記ハッシュ表を検索し、前記ハッシュ表の検索で一致しない場合あるいは前記ハッシュ表の検索で一致したが内容の等しいファイルが存在しない場合には、前記データ処理装置のハッシュ表変更手段は登録するファイルのハッシュ値をキーにして前記新たな管理IDを前記ハッシュ表に登録する、
    ことを特徴とするファイル管理方法。
  8. 前記ハッシュ表は、ファイル名毎に存在し、
    前記データ処理装置の対応表検索手段は登録するファイルのファイル名と同名のファイルが存在するか否か前記対応表を検索して調べ、
    前記ハッシュ表検索手段は同名のファイルが前記対応表に登録されていなければ検索結果は存在しなかったとし、同名のファイルが前記対応表に登録されていれば前記ファイル名に対応する前記ハッシュ表を前記登録するファイルのハッシュ値をキーとして検索する、
    ことを特徴とする請求項または記載のファイル管理方法。
  9. 前記ハッシュ表は、全てのファイル名に対して1つ存在する、
    ことを特徴とする請求項または記載のファイル管理方法。
JP2000287523A 2000-09-21 2000-09-21 ファイル管理システムおよび方法 Expired - Fee Related JP3899795B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000287523A JP3899795B2 (ja) 2000-09-21 2000-09-21 ファイル管理システムおよび方法
US09/960,548 US8856139B2 (en) 2000-09-21 2001-09-21 File managing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000287523A JP3899795B2 (ja) 2000-09-21 2000-09-21 ファイル管理システムおよび方法

Publications (2)

Publication Number Publication Date
JP2002099454A JP2002099454A (ja) 2002-04-05
JP3899795B2 true JP3899795B2 (ja) 2007-03-28

Family

ID=18771253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000287523A Expired - Fee Related JP3899795B2 (ja) 2000-09-21 2000-09-21 ファイル管理システムおよび方法

Country Status (2)

Country Link
US (1) US8856139B2 (ja)
JP (1) JP3899795B2 (ja)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7380059B2 (en) * 2003-05-16 2008-05-27 Pillar Data Systems, Inc. Methods and systems of cache memory management and snapshot operations
US7124243B2 (en) * 2003-05-16 2006-10-17 Pillar Data Systems, Inc. Methods and systems of cache memory management and snapshot operations
US20060123020A1 (en) * 2004-12-07 2006-06-08 Microsoft Corporation Computer file system allowing ambiguous names
US7873596B2 (en) 2006-05-23 2011-01-18 Microsoft Corporation Extending cluster allocations in an extensible file system
US8321439B2 (en) 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
US8606830B2 (en) 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
GB2425623A (en) * 2005-04-27 2006-11-01 Clearswift Ltd Tracking marked documents
US7716189B1 (en) * 2005-09-23 2010-05-11 Symantec Operating Corporation Method for preserving relationships/dependencies between data in a file system
US7734603B1 (en) * 2006-01-26 2010-06-08 Netapp, Inc. Content addressable storage array element
JP4654963B2 (ja) * 2006-04-11 2011-03-23 日本電気株式会社 情報漏洩防止システム、情報漏洩防止方法、プログラムおよび記録媒体
US7882539B2 (en) * 2006-06-02 2011-02-01 Microsoft Corporation Abstracting security policy from, and transforming to, native representations of access check mechanisms
US7769779B2 (en) * 2006-11-02 2010-08-03 Microsoft Corporation Reverse name mappings in restricted namespace environments
JP2008257444A (ja) 2007-04-04 2008-10-23 Nec Corp 類似ファイル管理装置、その方法及びそのプログラム
JP5144196B2 (ja) * 2007-05-08 2013-02-13 ソフトバンクBb株式会社 分散処理により膨大なコンテンツの検査を行う装置と方法、およびコンテンツの検査結果にもとづいて利用者間の自律的なコンテンツ流通とコンテンツ利用を制御するコンテンツ配信システム
JP5331323B2 (ja) * 2007-09-26 2013-10-30 株式会社日立製作所 ストレージサブシステム及びその制御方法
US8285953B2 (en) 2007-10-24 2012-10-09 Hitachi, Ltd. Storage system group
US9164941B2 (en) 2007-10-24 2015-10-20 Hitachi, Ltd. Storage system group
JP5018403B2 (ja) * 2007-10-31 2012-09-05 日本電気株式会社 バックアップシステム、サーバ装置及びそれらに用いるバックアップ方法並びにそのプログラム
US9262594B2 (en) 2008-01-18 2016-02-16 Microsoft Technology Licensing, Llc Tamper evidence per device protected identity
US10430604B2 (en) * 2008-02-05 2019-10-01 Equifax Inc. Systems and methods for securing data in electronic communications
JP2009237979A (ja) * 2008-03-27 2009-10-15 Hitachi Software Eng Co Ltd 情報処理装置及び方法、並びにプログラム
JP2009301204A (ja) * 2008-06-11 2009-12-24 Hitachi Systems & Services Ltd 文書管理システム
JP5414223B2 (ja) * 2008-09-16 2014-02-12 株式会社日立ソリューションズ インターネットバックアップにおける転送データ管理システム
JP5444728B2 (ja) * 2009-01-26 2014-03-19 日本電気株式会社 ストレージシステム、ストレージシステムにおけるデータ書込方法及びデータ書込プログラム
AU2010322245B2 (en) * 2009-11-18 2014-03-20 American Express Travel Related Services Company, Inc. Metadata driven processing
US20110119189A1 (en) * 2009-11-18 2011-05-19 American Express Travel Related Services Company, Inc. Data processing framework
US20110119178A1 (en) * 2009-11-18 2011-05-19 American Express Travel Related Services Company, Inc. Metadata driven processing
US20110119188A1 (en) * 2009-11-18 2011-05-19 American Express Travel Related Services Company, Inc. Business to business trading network system and method
US8332378B2 (en) * 2009-11-18 2012-12-11 American Express Travel Related Services Company, Inc. File listener system and method
US9373106B1 (en) * 2010-04-26 2016-06-21 Sprint Communications Company L.P. Tracking the download and purchase of digital content
US9383928B2 (en) * 2011-06-13 2016-07-05 Emc Corporation Replication techniques with content addressable storage
CN103778747A (zh) * 2014-01-23 2014-05-07 蚌埠依爱消防电子有限责任公司 一种提高火灾报警控制器启动消防设备速度的方法
CN105574053B (zh) * 2014-11-05 2019-09-06 京微雅格(北京)科技有限公司 Fpga配置文件的压缩方法和装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01303527A (ja) * 1988-05-31 1989-12-07 Hitachi Ltd 共有資源の管理方法
JPH04360246A (ja) 1991-06-06 1992-12-14 Toshiba Corp ファイル圧縮装置
US5440723A (en) * 1993-01-19 1995-08-08 International Business Machines Corporation Automatic immune system for computers and computer networks
JP2864932B2 (ja) 1993-03-11 1999-03-08 ヤマハ株式会社 電子機器
US5734886A (en) * 1994-11-16 1998-03-31 Lucent Technologies Inc. Database dependency resolution method and system for identifying related data files
EP0826181A4 (en) * 1995-04-11 2005-02-09 Kinetech Inc IDENTIFYING DATA IN A DATA PROCESSING SYSTEM
JPH08339321A (ja) 1995-06-13 1996-12-24 Hitachi Ltd ファイル管理システム、及びネットワークシステム
US6199082B1 (en) * 1995-07-17 2001-03-06 Microsoft Corporation Method for delivering separate design and content in a multimedia publishing system
US5732265A (en) * 1995-11-02 1998-03-24 Microsoft Corporation Storage optimizing encoder and method
WO1997029426A1 (fr) * 1996-02-09 1997-08-14 Sony Corporation Processeur d'informations, procede de modification de noms de fichiers, et support d'enregistrement sur lequel un programme de changement de nom de fichier est enregistre
US6546405B2 (en) * 1997-10-23 2003-04-08 Microsoft Corporation Annotating temporally-dimensioned multimedia content
JP3857409B2 (ja) * 1998-03-17 2006-12-13 富士通株式会社 分散処理システム、分散処理方法及び分散処理プログラムを記録したコンピュータ読み取り可能な記録媒体
US6338082B1 (en) * 1999-03-22 2002-01-08 Eric Schneider Method, product, and apparatus for requesting a network resource
US6381691B1 (en) * 1999-08-13 2002-04-30 International Business Machines Corporation Method and apparatus for reordering memory operations along multiple execution paths in a processor
US6353820B1 (en) * 1999-09-29 2002-03-05 Bull Hn Information Systems Inc. Method and system for using dynamically generated code to perform index record retrieval in certain circumstances in a relational database manager
US7117504B2 (en) * 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform

Also Published As

Publication number Publication date
US8856139B2 (en) 2014-10-07
US20020042796A1 (en) 2002-04-11
JP2002099454A (ja) 2002-04-05

Similar Documents

Publication Publication Date Title
JP3899795B2 (ja) ファイル管理システムおよび方法
JP6006267B2 (ja) 索引キーを使用して検索を絞込むシステムおよび方法
JP4416821B2 (ja) ネットワーク上でクライアントからアクセス可能なファイルセットの名前空間を維持する分散ファイル・システム
US6633872B2 (en) Extendible access control for lightweight directory access protocol
JP4671332B2 (ja) ユーザ識別情報を変換するファイルサーバ
US8959062B2 (en) Data storage device with duplicate elimination function and control device for creating search index for the data storage device
KR101143217B1 (ko) 컴퓨터 신원을 관리하는 방법, 시스템 및 장치
JP2002501255A (ja) コンテンツアドレス可能な情報のカプセル化、表現、および転送
US8799321B2 (en) License management apparatus, license management method, and computer readable medium
JP2001306372A (ja) 文書管理方法およびその方法を実施するためのプログラムを記憶した記憶媒体
WO2022057525A1 (zh) 一种数据找回方法、装置、电子设备及存储介质
JP2010282241A (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法、および、プログラム
JP2002049637A (ja) データベース管理方法及び装置並びに記録媒体
CN116070294B (zh) 一种权限管理方法、***、装置、服务器及存储介质
US11151110B2 (en) Identification of records for post-cloning tenant identifier translation
JP2005190221A (ja) キャッシュ制御装置およびその方法ならびにコンピュータプログラム
JP2928725B2 (ja) 分散ディレクトリシステムを実現する情報処理装置及び方法
JP2009187401A (ja) 文書管理システム、文書管理装置、文書管理方法及びプログラム
JP2007193549A (ja) 共有ファイルの部分編集管理方法およびシステム
JP3761911B2 (ja) ファイルサーバおよびファイル管理方法
JPH07271569A (ja) プログラム仕様書作成システム
JP2002251309A (ja) 共有ファイル管理システム
JP5467032B2 (ja) 情報管理システムとそのデータ更新操作方法
KR20070117009A (ko) 불특정 다수가 콘텐츠를 제공하는 콘텐츠 서비스에 있어해쉬와 콘텐츠 인식 기술을 융합한 콘텐츠 식별, 저작권관리, 요금 결제 및 정산 방법
JP2020095434A (ja) 通信装置、通信方法、および通信プログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060912

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061108

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: 20061205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061218

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees