(57)【要約】      （修正有）【課題】ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図り得る、ファイル管理装置、ファイル管理方法及びプログラムを提供する。【解決手段】ファイルシステムにおいてファイルサーバ２０に構築されるファイル管理装置１０は、入力ファイルを分析して、その内容を示すサマリ情報を作成するサマリ情報作成部１１と、入力ファイルのサマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、登録ファイル毎に入力ファイルとの類似度を算出する類似度算出部１２と、類似度が最も高い登録ファイルと入力ファイルとの差分を算出する差分算出部１３と、差分及び類似度が最も高い登録ファイルファイルを特定する類似ファイル情報を、入力ファイルとして登録する登録部１４と、を備えている。【選択図】図２
2019175373.tif 000002
【特許請求の範囲】
【請求項１】
入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマリ情報作成部と、
前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
を備えている、ことを特徴とするファイル管理装置。
【請求項２】
請求項１に記載のファイル管理装置であって、
前記登録部が、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理装置。
【請求項３】
請求項１または２に記載のファイル管理装置であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【請求項４】
請求項１または２に記載のファイル管理装置であって、
前記入力ファイルが、ソースファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【請求項５】
請求項１または２に記載のファイル管理装置であって、
前記入力ファイルが、画像ファイルである場合に、
前記サマリ情報作成部が、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記類似度算出部が、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【請求項６】
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を有する、ことを特徴とするファイル管理方法。
【請求項７】
請求項６に記載のファイル管理方法であって、
前記（ｄ）のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理方法。
【請求項８】
請求項６または７に記載のファイル管理方法であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【請求項９】
請求項６または７に記載のファイル管理方法であって、
前記入力ファイルが、ソースファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【請求項１０】
請求項６または７に記載のファイル管理方法であって、
前記入力ファイルが、画像ファイルである場合に、
前記（ａ）のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【請求項１１】
コンピュータに、
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ス
テップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を実行させる、ことを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムであって、
前記（ｄ）のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするプログラム。
【請求項１３】
請求項１１または１２に記載のプログラムであって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【請求項１４】
請求項１１または１２に記載のプログラムであって、
前記入力ファイルが、ソースファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【請求項１５】
請求項１１または１２に記載のプログラムであって、
前記入力ファイルが、画像ファイルである場合に、
前記（ａ）のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルシステムにおけるデータの管理を行うための、ファイル管理装置、及びファイル管理方法に関し、更には、これらを実現するためのプログラムに関する。
【背景技術】
【０００２】
従来から、コンピュータの分野では、記憶装置に格納されているデータを管理するために、ファイルシステムが導入されている。通常、ファイルシステムは、オペレーティングシステム（ＯＳ：Operating System）によって、その機能の１つとして提供されている。
【０００３】
ところで、コンピュータが出力するデータを全てそのまま記憶装置に格納すると、ファイルシステムにおいてデータサイズが増大化し、記憶装置の記憶容量が不足してしまう可能性がある。このため、例えば、特許文献１は、データの圧縮化を実行可能なファイルシステムを提案している。
【０００４】
具体的には、特許文献１に開示されたファイルシステムは、まず、入力されたデータと、モデルデータとの排他的論理和を算出し、算出した排他的論理和を差分として、更に、差分から非類似度を算出する。また、モデルデータは複数用意されており、非類似度の算出はモデルデータ毎に行われる。そして、特許文献１に開示されたファイルシステムは、算出した非類似度が一定の条件を満たすモデルデータが存在する場合は、差分と、入力されたデータの名称と、該当するモデルデータの名称と、非類似度とを関連付けて格納する。
【０００５】
このように、入力されたデータは、データそのものではなく、モデルデータとの差分を用いた形式で格納されるので、特許文献１に開示されたファイルシステムによれば、格納されるデータは圧縮化され、データサイズの増大化が抑制される。また、特許文献１に開示されたファイルシステムは、非類似度が一定の条件を満たすモデルデータが存在しない場合は、入力されたデータを新たなモデルデータの１つとして、非圧縮で格納する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−６５４２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示されたファイルシステムでは、モデルデータ毎に、論理演算を実行して、当該モデルデータと入力されたデータとの排他的論理和を算出する必要がある。このため、このファイルシステムにおいては、圧縮処理の開始から終了までにかかる時間が長大化し、引いては、データの登録に時間がかかり過ぎてしまう。また、モデルデータの数は、コンピュータが稼働すると増加するため、特許文献１に開示されたファイルシステムでは、圧縮処理にかかる時間の短縮化は困難である。
【０００８】
本発明の目的の一例は、上記問題を解消し、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図り得る、ファイル管理装置、ファイル管理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の一側面におけるファイル管理装置は、
入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマ
リ情報作成部と、
前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
を備えている、ことを特徴とする。
【００１０】
また、上記目的を達成するため、本発明の一側面におけるファイル管理方法は、
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を有する、ことを特徴とする。
【００１１】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を実行させる、ことを特徴とする。
【発明の効果】
【００１２】
以上のように、本発明によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施の形態におけるファイル管理装置の概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態におけるファイル管理装置の具体的構成を示すブロック図である。
【図３】図３は、本実施の形態において、ツリー構造によってデータベースに登録されているファイルの一例を示す図である。
【図４】図４は、入力ファイル及び登録ファイルが文書ファイルである場合のサマリ情報の一例を示している。
【図５】図５は、入力ファイル及び登録ファイルがソースファイルである場合のサマリ情報の一例を示している。
【図６】図６は、本発明の実施の形態におけるファイル管理装置の入力ファイル登録処理時の動作を示すフロー図である。
【図７】図７は、本発明の実施の形態におけるファイル管理装置のファイル読込処理時の動作を示すフロー図である。
【図８】図８は、本発明の実施の形態におけるファイル管理装置のファイル削除処理時の動作を示すフロー図である。
【図９】図９は、本発明の実施の形態におけるファイル管理装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１４】
（実施の形態）
以下、本発明の実施の形態における、ファイル管理装置、ファイル管理方法、及びプログラムについて、図１〜図９を参照しながら説明する。
【００１５】
［装置構成］
最初に、図１を用いて、本実施の形態におけるファイル管理装置の概略構成について説明する。図１は、本発明の実施の形態におけるファイル管理装置の概略構成を示すブロック図である。
【００１６】
図１に示す、本実施の形態におけるファイル管理装置１０は、ファイルシステムにおいて、ファイルを管理するための装置である。図１に示すように、ファイル管理装置１０は、サマリ情報作成部１１と、類似度算出部１２と、差分算出部１３と、登録部１４とを備えている。
【００１７】
サマリ情報作成部１１は、ファイルが入力されると、このファイル（以下「入力ファイル」と表記する）を分析して、分析した入力ファイルの内容を示すサマリ情報を作成する。類似度算出部１２は、まず、入力ファイルのサマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、登録ファイル毎に、入力ファイルとの類似度を算出する。
【００１８】
差分算出部１３は、類似度が最も高い登録ファイルと入力ファイルとの差分を算出する。
登録部１４は、まず、類似度が最も高い登録ファイルを特定する類似ファイル情報を作成する。次いで、登録部１４は、差分算出部１３が算出した差分と、作成した類似ファイル情報とを、入力ファイルとして、登録する。
【００１９】
このように、本実施の形態では、ファイル同士の類似度ではなく、入力ファイルのサマリ情報と登録ファイルのサマリ情報との類似度を用いるため、入力ファイルに類似する登録ファイルを高速に特定できる。そして、入力ファイルの登録は、差分と類似ファイル情報との登録によって完了する。このため、本実施の形態によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
【００２０】
続いて、図２〜図５を用いて、本実施の形態におけるファイル管理装置の構成をより具体的に説明する。図２は、本発明の実施の形態におけるファイル管理装置の具体的構成を示すブロック図である。
【００２１】
図２に示すように、本実施の形態では、ファイル管理装置１０は、ファイルシステムを提供するファイルサーバ２０に構築されている。具体的には、ファイル管理装置１０は、本実施の形態におけるプログラムを、ファイルサーバ２０のオペレーティングシステム上
で実行することによって構築されている。
【００２２】
また、図２に示すように、ファイルサーバ２０は、各種ファイルを登録したデータベース２１を備えている。更に、ファイルサーバ２０は、ＬＡＮ（Local Area Network）等のネットワーク４０を介して、端末装置３０に接続されている。ユーザは、端末装置３０を介して、ファイルサーバ２０にアクセスすることで、データベース２１への新たなファイルの登録、登録されているファイルの読み出し及び更新等を行うことができる。なお、ファイルサーバ２０は、専用のサーバコンピュータによって実現されていても良いし、いずれかの端末装置３０によって実現されていても良い。
【００２３】
また、図２に示すように、ファイル管理装置１０は、上述した、サマリ情報作成部１１、類似度算出部１２、差分算出部１３、及び登録部１４に加えて、ファイル操作部１５を備えている。ファイル操作部１５は、登録されているファイルの読み込み、及び登録されているファイルの削除といった、ファイル操作を実行する。
【００２４】
サマリ情報作成部１１は、本実施の形態では、入力ファイルの種類に応じた最適な手法を用いて、サマリ情報を作成する。例えば、入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルであるとする。この場合、サマリ情報作成部１１は、入力ファイルにおける文章の構成を分析して、文章の先頭側の一部分を取り出し、取り出した部分を用いてサマリ情報を作成することができる。
【００２５】
また、入力ファイルが、ソースファイルであるとする。この場合、サマリ情報作成部１１は、入力ファイルから、関数定義を取り出し、取り出した関数定義を用いてサマリ情報を作成することができる。更に、入力ファイルが、画像ファイルであるとする。この場合、サマリ情報作成部１１は、サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成することができる。
【００２６】
類似度算出部１２は、本実施の形態では、まず、入力ファイルのサマリ情報と登録ファイルのサマリ情報との差分を求める。次いで、類似度算出部１２は、サマリ情報間の差分を用い、類似度として、入力ファイルのサマリ情報と登録ファイルのサマリ情報とがどれだけ似ているかを示す値を、０から１の範囲内で算出する。
【００２７】
具体的には、類似度算出部１２は、入力ファイルが文書ファイル又はソースファイルといったテキストによって構成されている場合は、次のように類似度を算出することができる。つまり、類似度算出部１２は、入力ファイルのサマリ情報のサイズをＳＡ、登録ファイルのサマリ情報のサイズをＳＢとし、更に、両者の差分のサイズを、ｓｉｚｅ（ｄｉｆｆ（ＳＡ，ＳＢ））とすると、例えば、以下の数１によって、類似度を算出することができる。なお、ｍａｘ（ＳＡ，ＳＢ）は、サイズＳＡ及びＳＢのうち、大きい方を表している。また、類似度算出部１２は、ファイルの種類に応じて、別の式によって類似度を算出することもできる。
【００２８】
（数１）
類似度＝１−ｓｉｚｅ（ｄｉｆｆ（ＳＡ，ＳＢ））／ｍａｘ（ＳＡ，ＳＢ）
【００２９】
差分算出部１３は、本実施の形態では、例えば、入力ファイルが、文書ファイル又はソースファイル等のようにテキストによって構成されている場合は、差分として、入力ファイルと登録ファイルとの間の内容の差分を算出する。また、差分の算出は、一般的な文字列差分抽出アルゴリズムを用いて行うことができる。
【００３０】
また、入力ファイルが画像データである場合は、差分算出部１３は、入力ファイルの画
素と、登録ファイル画素とを、ＲＧＢそれぞれのオクテット単位で比較（減算）して、画素間毎の差分を求めた、求めた差分の合計を登録ファイルと入力ファイルとの差分とする。なお、画像ファイルがα成分を含む場合は、差分算出部１３は、ＲＧＢではなく、ＲＧＢＡの全ての要素を用いて、画素毎の差分を計算する。
【００３１】
登録部１４は、まず、上述したように、入力ファイルに対して最も類似度の高い登録ファイルについて、類似ファイル情報を作成する。そして、登録部１４は、本実施の形態では、入力ファイルとして、差分と類似ファイル情報とをデータベース２１に登録する。また、登録部１４は、入力ファイル及び登録ファイルをツリー構造によって管理する。
【００３２】
図３に示すように、入力ファイルが、差分及び類似ファイル情報によって登録されている場合は、登録部１４は、類似ファイル情報によって特定される登録ファイルを、入力ファイルの親ノードとする。
【００３３】
図３は、本実施の形態において、ツリー構造によってデータベースに登録されているファイルの一例を示す図である。図３の例では、ファイルＢ及びＣは、ファイルＡとの類似度が最も高いため、差分とファイルＡを特定する類似ファイル情報とによって登録されている。
【００３４】
ここで、サマリ情報作成部１１、及び類似度算出部１２による処理の具体例を図４及び図５を用いて説明する。図４は、入力ファイル及び登録ファイルが文書ファイルである場合のサマリ情報の一例を示している。図５は、入力ファイル及び登録ファイルがソースファイルである場合のサマリ情報の一例を示している。図４及び図５において、ファイルＡは既に登録されているファイルである。
【００３５】
図４の例では、入力ファイル及び登録ファイルは、文書ファイル、例えば、拡張子が「txt」、「docx」、「xml」、又は「md」等となるファイルである。また、入力ファイルはファイルＢであり、登録ファイルはファイルＡである。
【００３６】
サマリ情報作成部１１は、入力ファイルが、拡張子にdocxを持つファイルなど、内容が圧縮されている場合は、まず、入力ファイルの内容を解凍する。次いで、サマリ情報作成部１１は、文章タイトル及び章構成を抽出する。このとき、入力ファイルが、拡張子にxmlを持つファイルである場合は、タグの構成（タグ名のみ）を抽出する。
【００３７】
また、サマリ情報作成部１１は、入力ファイルの先頭の数行をテキストとして抽出する。これは、文書ファイルの先頭には、概要などが書かれることが多いためである。また、テンプレートに則って作成されている文書ファイルでは、文章の章構成がほぼ同じため、内容が異なっているにもかかわらず、類似していると判断される可能性があるからである。
【００３８】
続いて、サマリ情報作成部１１は、図４に示すように、抽出した、文章タイトル及び章構成と、先頭の数行とを１つにまとめ、これをサマリ情報とする。なお、得られたサマリ情報のサイズが大きすぎる場合は、サマリ情報作成部１１は、これを一定のサイズにする。
【００３９】
類似度算出部１２は、まず、ファイルＡのサマリ情報とファイルＢのサマリ情報との差分を抽出する。図４の例では、差分は０．１ＫＢである。なお、差分は、一般的な文字列差分抽出アルゴリズムを用いて求められる。そして、類似度算出部１２は、上記数１に、求めた差分を適用して、ファイルＡとファイルＢとの類似度を、０．９（＝１−（０．１ＫＢ／１．０ＫＢ））と算出する。
【００４０】
図５の例では、入力ファイル及び登録ファイルは、ソースファイル、例えば、c、cpp(c++)、 java等のファイルである。
【００４１】
サマリ情報作成部１１は、入力ファイルから、クラス定義、又はグローバル関数定義等を抽出し、抽出した定義をまとめてサマリ情報とする。なお、図５の例でも、得られたサマリ情報のサイズが大きすぎる場合は、サマリ情報作成部１１は、これを一定のサイズにする。
【００４２】
類似度算出部１２は、図５の例でも、ファイルＡのサマリ情報とファイルＢのサマリ情報との差分を求める。差分は０．１ＫＢである。なお、差分は、図５の例でも、一般的な文字列差分抽出アルゴリズムを用いて求められる。
【００４３】
そして、類似度算出部１２は、図５の例でも、上記数１に、求めた差分を適用して、ファイルＡとファイルＢとの類似度を、０．８７５（＝１−（０．１ＫＢ／０．８ＫＢ））と算出する。
【００４４】
また、図４及び図５には示されていないが、入力ファイル及び登録ファイルが、画像ファイルである場合は、サマリ情報作成部１１は、上述したように、画像ファイルを圧縮して、低解像度のサムネイル画像を作成し、作成したサムネイル画像をサマリ情報とする。
【００４５】
この場合、類似度算出部１２は、入力ファイルのサムネイル画像の全ての画素それぞれ毎に、各画素と、登録ファイルのサムネイル画像の同一位置の画素とを、ＲＧＢそれぞれのオクテット単位で比較し、差分を計算する。なお、画像ファイルがα成分を含む場合は、類似度算出部１２は、ＲＧＢではなく、ＲＧＢＡの全ての要素を用いて、差分を計算する。
【００４６】
そして、類似度算出部１２は、画素毎のオクテットの差分(−１２８〜１２７）の絶対値から二進対数（０〜７）を求め、これを画素オクテット類似値とする。更に、類似度算出部１２は、画素の構成要素（ＲＧＢまたはＲＧＢＡ）の画素オクテット類似値の合計値を、要素数（ＲＧＢの場合３、ＲＧＢＡの場合４）で割ったものを画素類似値とする。その後、類似度算出部１２は、全ての画素の画素類似値の合計値を、画素数×７で除算し、得られた値を１から引いたものを類似度とする。なお、類似度の算出手法は、特に限定されず、上述した例以外の類似度計算アルゴリズムが用いられていても良い。
【００４７】
類似度算出部１２は、入力ファイルの画像サイズと、登録ファイルの画像ファイルとが異なる場合、差分を取る意味が無いため、類似度は０（ゼロ）と算出することもできる。
【００４８】
具体的には、サムネイル画像において、水平方向の画素数が６４、垂直方向の画素数も６４、画素の構成要素をＲＧＢであるとする。また、２つのサムネイル画像の内、４００画素（＝２０×２０）が異なり、サムネイル画像間の差分（異なる各画素のＲＧＢの各オクテットについての差分）の絶対値が４０であるとする。
【００４９】
この場合、この差分４００画素の画素オクテット類似値は、下記の数２のように計算され、結果、画素類似値は下記の数３のように計算される。これ以外の画素（６４×６４−４００＝３６９６画素）については等しいので画素類似値は０となる。これらの結果から、類似度は下記の数４のように計算される。なお、下記の数２において、ｒｏｕｎｄ（）は四捨五入を示し、ｌｇは二進対数（２を底とする対数）を示している。
【００５０】
（数２）
画素オクテット類似値＝ｒｏｕｎｄ（ｌｇ  ４０）≒ｒｏｕｎｄ（５．３２）＝５
【００５１】
（数３）
画素類似値＝（５＋５＋５）／３＝５ 
【００５２】
（数４）
類似度＝１−(５×４００＋０×３６９６) ／ (６４×６４×７)≒０．９３
【００５３】
［装置動作］
次に、本実施の形態におけるファイル管理装置１０の動作について図６〜図８を用いて説明する。また、本実施の形態１では、ファイル管理装置１０を動作させることによって、ファイル管理方法が実施される。よって、本実施の形態におけるファイル管理方法の説明は、以下のファイル管理装置１０の動作説明に代える。
【００５４】
最初に、図６を用いて、ファイル管理装置１０による入力ファイルの登録処理について説明する。図６は、本発明の実施の形態におけるファイル管理装置の入力ファイル登録処理時の動作を示すフロー図である。
【００５５】
図６に示すように、最初に、サマリ情報作成部１１は、端末装置３０からファイルサーバ２０に入力されたファイル（入力ファイル）を受け付ける（ステップＡ１）。また、ステップＡ１では、サマリ情報作成部１１は、入力ファイルが圧縮されている場合は、前処理として、これを解凍する。
【００５６】
次に、サマリ情報作成部１１は、入力ファイルのサマリ情報を作成する（ステップＡ２）。具体的には、ステップＡ２では、サマリ情報作成部１１は、入力ファイルの種類に応じた最適な手法を用いて、サマリ情報を作成する。
【００５７】
次に、類似度算出部１２は、登録ファイル毎に、入力ファイルのサマリ情報と登録ファイルのサマリ情報とを対比して、サマリ情報間の差分を抽出し、抽出した差分を用いて、入力ファイルと登録ファイルとの類似度を算出する（ステップＡ３）。
【００５８】
次に、差分算出部１３は、類似度が最も高い登録ファイルを特定し、特定した登録ファイルと入力ファイルとの差分を抽出する（ステップＡ４）。また、入力ファイルが圧縮されている場合は、差分算出部１３は、解凍後の入力ファイルを用いて、登録ファイルとの差分を抽出する。また、登録ファイルが、差分と類似ファイル情報とで登録されている場合は、登録ファイルを対象にして、後述の図７に示す処理が実行される。
【００５９】
次に、登録部１４は、入力ファイルに対して最も類似度の高い登録ファイルについて、類似ファイル情報を作成する（ステップＡ５）。具体的には、登録部１４は、ツリー構造において、登録ファイルに付与されている識別番号を用いて、類似ファイル情報を作成する。本実施の形態では、この識別番号としては、一般的なファイルシステム上でファイルに割り振られている「ｉ−ｎｏｄｅ番号」が用いられている。以降においては、識別番号をｉ−ｎｏｄｅ番号とも表記する。
【００６０】
次に、登録部１４は、入力ファイルの実ファイルの代わりに、ステップＡ４で抽出された差分と、ステップＡ５で作成された類似ファイル情報とを、データベース２１に登録する（ステップＡ６）。
【００６１】
ステップＡ６では、登録部１４は、ステップＡ４で抽出された差分については、圧縮を行っても良い。また、登録部１４は、入力ファイルとして、差分及び類似ファイル情報以
外にも、ファイル名等の他の情報を登録することもできる。更に、図３に示したように、登録部１４は、入力ファイルをツリー構造によって管理する。
【００６２】
続いて、図７を用いて、ファイル管理装置１０によるファイルの読込処理について説明する。図７は、本発明の実施の形態におけるファイル管理装置のファイル読込処理時の動作を示すフロー図である。
【００６３】
図７に示すように、最初に、端末装置３０から、ファイルサーバ２０に対して、特定のファイルの読み込みが指示されると、ファイル管理装置１０において、ファイル操作部１５は、その指示を受け付ける（ステップＢ１）。
【００６４】
次に、ファイル操作部１５は、指示対象となったファイルが、データベース２１に、実データで登録されているかどうかを判定する（ステップＢ２）。
【００６５】
ステップＢ２の判定の結果、指示対象となったファイルが、実データで登録されていない場合は、ファイル操作部１５は、指示対象となったファイルとして登録されている、差分及び類似ファイル情報を読み込む（ステップＢ３）
【００６６】
次に、ファイル操作部１５は、ステップＢ３で読み込んだ類似ファイル情報から、それによって特定される登録ファイル（親ファイル）を特定する（ステップＢ４）。また、ファイル操作部１５は、特定した登録ファイルを読み込む。なお、ステップＢ４で特定した登録ファイルが、差分と類似ファイル情報とで登録されている場合は、後述のステップＢ５の実行の前に、この登録ファイルを対象にして、ステップＢ１〜Ｂ４と、後述のステップＢ５〜Ｂ７が実行される。
【００６７】
次に、ファイル操作部１５は、ステップＢ３で読み込んだ差分と、ステップＢ４で特定した親ファイルとを結合して、指示対象となったファイルを生成する（ステップＢ５）。
【００６８】
次に、ファイル操作部１５は、ステップＢ５で生成したファイルを、指示対象となったファイルとして、ファイルサーバ２０に出力する（ステップＢ６）。
【００６９】
また、上述のステップＢ２の判定の結果、指示対象となったファイルが、実データで登録されている場合は、ファイル操作部１５は、指示対象となったファイルを読み込む（ステップＢ７）。
【００７０】
ステップＢ６又はステップＢ７の実行後、ファイル管理装置１０における処理は終了し、読み込まれたファイルは、ファイルサーバ２０から端末装置３０へと送信される。その後、ファイルサーバ２０は、指示対象となったファイルを、端末装置３０に送信する。
【００７１】
続いて、図８を用いて、ファイル管理装置１０によるファイルの削除処理について説明する。図８は、本発明の実施の形態におけるファイル管理装置のファイル削除処理時の動作を示すフロー図である。
【００７２】
図８に示すように、最初に、端末装置３０から、ファイルサーバ２０に対して、特定のファイル削除が指示されると、ファイル管理装置１０において、ファイル操作部１５は、その指示を受け付ける（ステップＣ１）。
【００７３】
次に、ファイル操作部１５は、指示対象となったファイルのファイル名とｉ−ｎｏｄｅ番号との対応関係を、ファイルサーバ２０が作成しているディレクトリ情報から削除する（ステップＣ２）。
【００７４】
次に、ファイル操作部１５は、指示対象となったファイルに対して、それを特定する類似ファイル情報によって登録されているファイル（子ファイル）が、存在しているかどうかを判定する（ステップＣ３）。
【００７５】
ステップＣ３の判定の結果、子ファイルが存在している場合は、ファイル操作部１５は、何もしないで、処理を終了する。一方、ステップＣ３の判定の結果、子ファイルが存在していない場合は、ファイル操作部１５は、指示対象となったファイルが実ファイルで登録されているかどうかを判定する（ステップＣ４）。
【００７６】
ステップＣ４の判定の結果、指示対象となったファイルが実ファイルで登録されている場合は、ファイル操作部１５は、実ファイルを削除し（ステップＣ５）、処理を終了する。
【００７７】
一方、ステップＣ４の判定の結果、指示対象となったファイルが実ファイルで登録されていない場合は、ファイル操作部１５は、指示対象ファイルとして登録されている差分と類似度が最も高い登録ファイルを特定する類似ファイル情報（＝ｉ−ｎｏｄｅ番号）とを、データベース２１から削除する（ステップＣ６）。
【００７８】
次に、ファイル操作部１５は、指示対象となったファイルの親ファイルが削除されているかどうかを判定する（ステップＣ７）。具体的には、ファイル操作部１５は、親ファイルのファイル名とｉ−ｎｏｄｅ番号との対応関係が、ディレクトリ情報から削除されているかどうかを判定する。
【００７９】
ステップＣ７の判定の結果、親ファイルが削除されていない場合は、ファイル操作部１５は処理を終了する。一方、ステップＣ７の判定の結果、親ファイルが削除されている場合は、ファイル操作部１５は、処理対象を親ファイルに変更し（ステップＣ８）、ファイル操作部１５は、再度ステップＣ３〜Ｃ８を実行する。
【００８０】
［実施の形態における効果］
以上のように、本実施の形態では、ファイル同士の類似度ではなく、入力ファイルのサマリ情報と登録ファイルのサマリ情報との類似度から、入力ファイルに最も類似する登録ファイルが特定される。このため、入力ファイルに最も類似する登録ファイルの特定処理が、高速化できる。そして、入力ファイルの登録は、差分と類似ファイル情報との登録によって完了でき、また、差分については更に圧縮することができる。このため、本実施の形態によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
【００８１】
［変形例］
続いて、本実施の形態における変形例について説明する。本変形例では、入力ファイルとの類似度が最も高い登録ファイルを効率良く特定するため、類似度算出部１２は、以下のステップに沿って類似度を算出する。
【００８２】
まず、類似度算出部１２は、登録ファイルを管理するツリー（図３参照）の根から、その直下のファイルを特定し、入力ファイルと、特定した直下のファイルとの類似度を算出する。なお、ツリーの根の直下のファイルは、差分と類似ファイル情報とで構成されていないファイルであり、図３の例では、ファイルＡ及びＤが該当する。
【００８３】
続いて、類似度算出部１２は、ツリーの根の直下のファイルの中で最も類似度の高いファイルを特定し、特定したファイルにおいて子ファイルを検索する。子ファイルが存在す
る場合は、類似度算出部１２は、ツリーの根の直下のファイルの更に直下にある子ファイルと入力ファイルとの類似度を算出する。
【００８４】
算出した結果、ツリーの根の直下のファイルの類似度の方が、その直下にある子ファイルの類似度よりも高い場合は、類似度算出部１２は、ツリーの根の直下のファイルを最も類似度の高いファイルとし、処理を終了する。
【００８５】
一方、ツリーの根の直下のファイルの類似度よりも、その直下にある子ファイルの類似度の方が高い場合は、類似度算出部１２は、その直下にある子ファイルの更に直下にある子ファイルを検索し、類似度を算出する。つまり、類似度算出部１２は、子ファイルの類似度が高い限り、更に子ファイルを検索し、類似度を算出する。
【００８６】
この検索及び類似度の算出は、親ファイルの類似度の方が直下の子ファイルの類似度よりも高くなるまで、又は子ファイルが存在しなくなるまで行われる。このように、本変形例では、類似度算出部１２は、ツリーの根から葉ノードに向けて、類似度の高い方の枝を辿って、入力ファイルとの類似度が最も高い登録ファイルを検出する。
【００８７】
具体的には、類似度算出部１２は、図３の例では、まず、ファイルＡとファイルＤとについて、入力ファイルとの類似度を算出する。そして、ファイルＤの類似度がファイルＡよりも高い場合は、類似度算出部１２は、入力ファイルと、ファイルＤの子ファイルＥとの類似度を算出する。この場合において、ファイルＤの類似度の方が、子ファイルＥの類似度よりも高い場合は、類似度算出部１２は処理を終了する。
【００８８】
一方、子ファイルＥの類似度の方がファイルＤの類似度よりも高い場合は、類似度算出部１２は、更に、ファイルＥの直下にある孫ファイルＦと入力ファイルとの類似度を算出する。そして、類似度算出部１２は、子ファイルＥの類似度と、孫ファイルＦとの類似度とを比較し、比較の結果に応じては、更に下位のファイルを検索して類似度を算出する。
【００８９】
［応用例］
ここで、入力ファイルが、ｚｉｐファイル等のアーカイブファイルである場合について説明する。
【００９０】
＜登録時＞
入力ファイルとして、アーカイブファイルが入力された場合は、ファイル管理装置１０は、アーカイブファイルの内部ファイル群を解凍し、それを構成しているファイル毎に、図６に示したステップＡ２〜Ａ６を実行する。
【００９１】
つまり、アーカイブファイルにおいて、各ファイルは、差分と類似ファイル情報とによって登録される。また、このため、ファイル管理装置１０は、ファイルサーバ２０が提供するファイルシステムにおいて、アーカイブファイル自身を、ディレクトリのように扱えるようにすることもできる。
【００９２】
＜読み込み時＞
アーカイブファイルの読み込みが指示された場合は、ファイル管理装置１０は、アーカイブファイルの内部ファイル群を構成するファイル毎に、図７に示したステップＢ２〜Ｂ６を実行する。これにより、元のアーカイブファイルが復元され、ユーザの端末装置３０に送信される。
【００９３】
また、本実施の形態では、入力ファイルが、拡張子にdocx又はpptxを持つファイルなど、ファイル内に画像などの別ファイルを貼り付けられる形式のファイルであり、ファイル
に別ファイルが貼り付けられている場合は、ファイル管理装置１０は、この入力ファイルを上記のアーカイブファイルと同様に扱うことができる。
【００９４】
［プログラム］
本実施の形態におけるプログラムは、コンピュータに、図６に示すステップＡ１〜Ａ６、図７に示すステップＢ１〜Ｂ６、図８に示すステップＣ１〜Ｃ８を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるファイル管理装置１０とファイル管理方法とを実現することができる。この場合、コンピュータのプロセッサは、サマリ情報作成部１１、類似度算出部１２、差分算出部１３、登録部１４、及びファイル操作部１５として機能し、処理を行なう。
【００９５】
また、本実施の形態では、データベース２１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現できる。
【００９６】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、サマリ情報作成部１１、類似度算出部１２、差分算出部１３、登録部１４、及びファイル操作部１５のいずれかとして機能しても良い。また、データベース２１は、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていても良い。
【００９７】
ここで、本実施の形態におけるプログラムを実行することによって、ファイル管理装置１０を実現するコンピュータについて図９を用いて説明する。図９は、本発明の実施の形態におけるファイル管理装置を実現するコンピュータの一例を示すブロック図である。
【００９８】
図９に示すように、コンピュータ１１０は、ＣＰＵ（Central Processing Unit）１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、又はＦＰＧＡ（Field-Programmable Gate Array）を備えていても良い。
【００９９】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【０１００】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【０１０１】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【０１０２】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体が挙げられる。
【０１０３】
なお、本実施の形態におけるファイル管理装置１０は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、ファイル管理装置１０は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【０１０４】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１５）によって表現することができるが、以下の記載に限定されるものではない。
【０１０５】
（付記１）
入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマリ情報作成部と、
前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
を備えている、ことを特徴とするファイル管理装置。
【０１０６】
（付記２）
付記１に記載のファイル管理装置であって、
前記登録部が、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理装置。
【０１０７】
（付記３）
付記１または２に記載のファイル管理装置であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【０１０８】
（付記４）
付記１または２に記載のファイル管理装置であって、
前記入力ファイルが、ソースファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【０１０９】
（付記５）
付記１または２に記載のファイル管理装置であって、
前記入力ファイルが、画像ファイルである場合に、
前記サマリ情報作成部が、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記類似度算出部が、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
【０１１０】
（付記６）
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を有する、ことを特徴とするファイル管理方法。
【０１１１】
（付記７）
付記６に記載のファイル管理方法であって、
前記（ｄ）のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理方法。
【０１１２】
（付記８）
付記６または７に記載のファイル管理方法であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【０１１３】
（付記９）
付記６または７に記載のファイル管理方法であって、
前記入力ファイルが、ソースファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【０１１４】
（付記１０）
付記６または７に記載のファイル管理方法であって、
前記入力ファイルが、画像ファイルである場合に、
前記（ａ）のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
【０１１５】
（付記１１）
コンピュータに、
（ａ）入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
（ｂ）前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
（ｃ）前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
（ｄ）算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を実行させる、ことを特徴とするプログラム。
【０１１６】
（付記１２）
付記１１に記載のプログラムであって、
前記（ｄ）のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするプログラム。
【０１１７】
（付記１３）
付記１１または１２に記載のプログラムであって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用
いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【０１１８】
（付記１４）
付記１１または１２に記載のプログラムであって、
前記入力ファイルが、ソースファイルである場合に、
前記（ａ）のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【０１１９】
（付記１５）
付記１１または１２に記載のプログラムであって、
前記入力ファイルが、画像ファイルである場合に、
前記（ａ）のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記（ｂ）のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
【産業上の利用可能性】
【０１２０】
以上のように、本発明によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。本発明は、各種ファイルシステムに有用である。
【符号の説明】
【０１２１】
１０  ファイル管理装置
１１  サマリ情報作成部
１２  類似度算出部
１３  差分算出部
１４  登録部
１５  ファイル操作部
２０  ファイルサーバ
２１  データベース
３０  端末装置
４０  ネットワーク
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2019175373.tif 000003
【図２】
2019175373.tif 000004
【図３】
2019175373.tif 000005
【図４】
2019175373.tif 000006
【図５】
2019175373.tif 000007
【図６】
2019175373.tif 000008
【図７】
2019175373.tif 000009
【図８】
2019175373.tif 000010
【図９】
2019175373.tif 000011