JP2019175373A - ファイル管理装置、ファイル管理方法、及びプログラム - Google Patents

ファイル管理装置、ファイル管理方法、及びプログラム Download PDF

Info

Publication number
JP2019175373A
JP2019175373A JP2018066056A JP2018066056A JP2019175373A JP 2019175373 A JP2019175373 A JP 2019175373A JP 2018066056 A JP2018066056 A JP 2018066056A JP 2018066056 A JP2018066056 A JP 2018066056A JP 2019175373 A JP2019175373 A JP 2019175373A
Authority
JP
Japan
Prior art keywords
file
registered
input
difference
summary information
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.)
Granted
Application number
JP2018066056A
Other languages
English (en)
Other versions
JP7010538B2 (ja
Inventor
真人 井上
Masato Inoue
真人 井上
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 Solution Innovators Ltd
Original Assignee
NEC Solution Innovators Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP2018066056A priority Critical patent/JP7010538B2/ja
Publication of JP2019175373A publication Critical patent/JP2019175373A/ja
Application granted granted Critical
Publication of JP7010538B2 publication Critical patent/JP7010538B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図り得る、ファイル管理装置、ファイル管理方法及びプログラムを提供する。【解決手段】ファイルシステムにおいてファイルサーバ20に構築されるファイル管理装置10は、入力ファイルを分析して、その内容を示すサマリ情報を作成するサマリ情報作成部11と、入力ファイルのサマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、登録ファイル毎に入力ファイルとの類似度を算出する類似度算出部12と、類似度が最も高い登録ファイルと入力ファイルとの差分を算出する差分算出部13と、差分及び類似度が最も高い登録ファイルファイルを特定する類似ファイル情報を、入力ファイルとして登録する登録部14と、を備えている。【選択図】図2

Description

本発明は、ファイルシステムにおけるデータの管理を行うための、ファイル管理装置、及びファイル管理方法に関し、更には、これらを実現するためのプログラムに関する。
従来から、コンピュータの分野では、記憶装置に格納されているデータを管理するために、ファイルシステムが導入されている。通常、ファイルシステムは、オペレーティングシステム(OS:Operating System)によって、その機能の1つとして提供されている。
ところで、コンピュータが出力するデータを全てそのまま記憶装置に格納すると、ファイルシステムにおいてデータサイズが増大化し、記憶装置の記憶容量が不足してしまう可能性がある。このため、例えば、特許文献1は、データの圧縮化を実行可能なファイルシステムを提案している。
具体的には、特許文献1に開示されたファイルシステムは、まず、入力されたデータと、モデルデータとの排他的論理和を算出し、算出した排他的論理和を差分として、更に、差分から非類似度を算出する。また、モデルデータは複数用意されており、非類似度の算出はモデルデータ毎に行われる。そして、特許文献1に開示されたファイルシステムは、算出した非類似度が一定の条件を満たすモデルデータが存在する場合は、差分と、入力されたデータの名称と、該当するモデルデータの名称と、非類似度とを関連付けて格納する。
このように、入力されたデータは、データそのものではなく、モデルデータとの差分を用いた形式で格納されるので、特許文献1に開示されたファイルシステムによれば、格納されるデータは圧縮化され、データサイズの増大化が抑制される。また、特許文献1に開示されたファイルシステムは、非類似度が一定の条件を満たすモデルデータが存在しない場合は、入力されたデータを新たなモデルデータの1つとして、非圧縮で格納する。
特開2006−65424号公報
しかしながら、特許文献1に開示されたファイルシステムでは、モデルデータ毎に、論理演算を実行して、当該モデルデータと入力されたデータとの排他的論理和を算出する必要がある。このため、このファイルシステムにおいては、圧縮処理の開始から終了までにかかる時間が長大化し、引いては、データの登録に時間がかかり過ぎてしまう。また、モデルデータの数は、コンピュータが稼働すると増加するため、特許文献1に開示されたファイルシステムでは、圧縮処理にかかる時間の短縮化は困難である。
本発明の目的の一例は、上記問題を解消し、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図り得る、ファイル管理装置、ファイル管理方法、及びプログラムを提供することにある。
上記目的を達成するため、本発明の一側面におけるファイル管理装置は、
入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマ
リ情報作成部と、
前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
を備えている、ことを特徴とする。
また、上記目的を達成するため、本発明の一側面におけるファイル管理方法は、
(a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
(b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
(c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
(d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を有する、ことを特徴とする。
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
(a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
(b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
(c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
(d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を実行させる、ことを特徴とする。
以上のように、本発明によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
図1は、本発明の実施の形態におけるファイル管理装置の概略構成を示すブロック図である。 図2は、本発明の実施の形態におけるファイル管理装置の具体的構成を示すブロック図である。 図3は、本実施の形態において、ツリー構造によってデータベースに登録されているファイルの一例を示す図である。 図4は、入力ファイル及び登録ファイルが文書ファイルである場合のサマリ情報の一例を示している。 図5は、入力ファイル及び登録ファイルがソースファイルである場合のサマリ情報の一例を示している。 図6は、本発明の実施の形態におけるファイル管理装置の入力ファイル登録処理時の動作を示すフロー図である。 図7は、本発明の実施の形態におけるファイル管理装置のファイル読込処理時の動作を示すフロー図である。 図8は、本発明の実施の形態におけるファイル管理装置のファイル削除処理時の動作を示すフロー図である。 図9は、本発明の実施の形態におけるファイル管理装置を実現するコンピュータの一例を示すブロック図である。
(実施の形態)
以下、本発明の実施の形態における、ファイル管理装置、ファイル管理方法、及びプログラムについて、図1〜図9を参照しながら説明する。
[装置構成]
最初に、図1を用いて、本実施の形態におけるファイル管理装置の概略構成について説明する。図1は、本発明の実施の形態におけるファイル管理装置の概略構成を示すブロック図である。
図1に示す、本実施の形態におけるファイル管理装置10は、ファイルシステムにおいて、ファイルを管理するための装置である。図1に示すように、ファイル管理装置10は、サマリ情報作成部11と、類似度算出部12と、差分算出部13と、登録部14とを備えている。
サマリ情報作成部11は、ファイルが入力されると、このファイル(以下「入力ファイル」と表記する)を分析して、分析した入力ファイルの内容を示すサマリ情報を作成する。類似度算出部12は、まず、入力ファイルのサマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、登録ファイル毎に、入力ファイルとの類似度を算出する。
差分算出部13は、類似度が最も高い登録ファイルと入力ファイルとの差分を算出する。
登録部14は、まず、類似度が最も高い登録ファイルを特定する類似ファイル情報を作成する。次いで、登録部14は、差分算出部13が算出した差分と、作成した類似ファイル情報とを、入力ファイルとして、登録する。
このように、本実施の形態では、ファイル同士の類似度ではなく、入力ファイルのサマリ情報と登録ファイルのサマリ情報との類似度を用いるため、入力ファイルに類似する登録ファイルを高速に特定できる。そして、入力ファイルの登録は、差分と類似ファイル情報との登録によって完了する。このため、本実施の形態によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
続いて、図2〜図5を用いて、本実施の形態におけるファイル管理装置の構成をより具体的に説明する。図2は、本発明の実施の形態におけるファイル管理装置の具体的構成を示すブロック図である。
図2に示すように、本実施の形態では、ファイル管理装置10は、ファイルシステムを提供するファイルサーバ20に構築されている。具体的には、ファイル管理装置10は、本実施の形態におけるプログラムを、ファイルサーバ20のオペレーティングシステム上
で実行することによって構築されている。
また、図2に示すように、ファイルサーバ20は、各種ファイルを登録したデータベース21を備えている。更に、ファイルサーバ20は、LAN(Local Area Network)等のネットワーク40を介して、端末装置30に接続されている。ユーザは、端末装置30を介して、ファイルサーバ20にアクセスすることで、データベース21への新たなファイルの登録、登録されているファイルの読み出し及び更新等を行うことができる。なお、ファイルサーバ20は、専用のサーバコンピュータによって実現されていても良いし、いずれかの端末装置30によって実現されていても良い。
また、図2に示すように、ファイル管理装置10は、上述した、サマリ情報作成部11、類似度算出部12、差分算出部13、及び登録部14に加えて、ファイル操作部15を備えている。ファイル操作部15は、登録されているファイルの読み込み、及び登録されているファイルの削除といった、ファイル操作を実行する。
サマリ情報作成部11は、本実施の形態では、入力ファイルの種類に応じた最適な手法を用いて、サマリ情報を作成する。例えば、入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルであるとする。この場合、サマリ情報作成部11は、入力ファイルにおける文章の構成を分析して、文章の先頭側の一部分を取り出し、取り出した部分を用いてサマリ情報を作成することができる。
また、入力ファイルが、ソースファイルであるとする。この場合、サマリ情報作成部11は、入力ファイルから、関数定義を取り出し、取り出した関数定義を用いてサマリ情報を作成することができる。更に、入力ファイルが、画像ファイルであるとする。この場合、サマリ情報作成部11は、サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成することができる。
類似度算出部12は、本実施の形態では、まず、入力ファイルのサマリ情報と登録ファイルのサマリ情報との差分を求める。次いで、類似度算出部12は、サマリ情報間の差分を用い、類似度として、入力ファイルのサマリ情報と登録ファイルのサマリ情報とがどれだけ似ているかを示す値を、0から1の範囲内で算出する。
具体的には、類似度算出部12は、入力ファイルが文書ファイル又はソースファイルといったテキストによって構成されている場合は、次のように類似度を算出することができる。つまり、類似度算出部12は、入力ファイルのサマリ情報のサイズをS、登録ファイルのサマリ情報のサイズをSとし、更に、両者の差分のサイズを、size(diff(S,S))とすると、例えば、以下の数1によって、類似度を算出することができる。なお、max(S,S)は、サイズS及びSのうち、大きい方を表している。また、類似度算出部12は、ファイルの種類に応じて、別の式によって類似度を算出することもできる。
(数1)
類似度=1−size(diff(S,S))/max(S,S
差分算出部13は、本実施の形態では、例えば、入力ファイルが、文書ファイル又はソースファイル等のようにテキストによって構成されている場合は、差分として、入力ファイルと登録ファイルとの間の内容の差分を算出する。また、差分の算出は、一般的な文字列差分抽出アルゴリズムを用いて行うことができる。
また、入力ファイルが画像データである場合は、差分算出部13は、入力ファイルの画
素と、登録ファイル画素とを、RGBそれぞれのオクテット単位で比較(減算)して、画素間毎の差分を求めた、求めた差分の合計を登録ファイルと入力ファイルとの差分とする。なお、画像ファイルがα成分を含む場合は、差分算出部13は、RGBではなく、RGBAの全ての要素を用いて、画素毎の差分を計算する。
登録部14は、まず、上述したように、入力ファイルに対して最も類似度の高い登録ファイルについて、類似ファイル情報を作成する。そして、登録部14は、本実施の形態では、入力ファイルとして、差分と類似ファイル情報とをデータベース21に登録する。また、登録部14は、入力ファイル及び登録ファイルをツリー構造によって管理する。
図3に示すように、入力ファイルが、差分及び類似ファイル情報によって登録されている場合は、登録部14は、類似ファイル情報によって特定される登録ファイルを、入力ファイルの親ノードとする。
図3は、本実施の形態において、ツリー構造によってデータベースに登録されているファイルの一例を示す図である。図3の例では、ファイルB及びCは、ファイルAとの類似度が最も高いため、差分とファイルAを特定する類似ファイル情報とによって登録されている。
ここで、サマリ情報作成部11、及び類似度算出部12による処理の具体例を図4及び図5を用いて説明する。図4は、入力ファイル及び登録ファイルが文書ファイルである場合のサマリ情報の一例を示している。図5は、入力ファイル及び登録ファイルがソースファイルである場合のサマリ情報の一例を示している。図4及び図5において、ファイルAは既に登録されているファイルである。
図4の例では、入力ファイル及び登録ファイルは、文書ファイル、例えば、拡張子が「txt」、「docx」、「xml」、又は「md」等となるファイルである。また、入力ファイルはファイルBであり、登録ファイルはファイルAである。
サマリ情報作成部11は、入力ファイルが、拡張子にdocxを持つファイルなど、内容が圧縮されている場合は、まず、入力ファイルの内容を解凍する。次いで、サマリ情報作成部11は、文章タイトル及び章構成を抽出する。このとき、入力ファイルが、拡張子にxmlを持つファイルである場合は、タグの構成(タグ名のみ)を抽出する。
また、サマリ情報作成部11は、入力ファイルの先頭の数行をテキストとして抽出する。これは、文書ファイルの先頭には、概要などが書かれることが多いためである。また、テンプレートに則って作成されている文書ファイルでは、文章の章構成がほぼ同じため、内容が異なっているにもかかわらず、類似していると判断される可能性があるからである。
続いて、サマリ情報作成部11は、図4に示すように、抽出した、文章タイトル及び章構成と、先頭の数行とを1つにまとめ、これをサマリ情報とする。なお、得られたサマリ情報のサイズが大きすぎる場合は、サマリ情報作成部11は、これを一定のサイズにする。
類似度算出部12は、まず、ファイルAのサマリ情報とファイルBのサマリ情報との差分を抽出する。図4の例では、差分は0.1KBである。なお、差分は、一般的な文字列差分抽出アルゴリズムを用いて求められる。そして、類似度算出部12は、上記数1に、求めた差分を適用して、ファイルAとファイルBとの類似度を、0.9(=1−(0.1KB/1.0KB))と算出する。
図5の例では、入力ファイル及び登録ファイルは、ソースファイル、例えば、c、cpp(c++)、 java等のファイルである。
サマリ情報作成部11は、入力ファイルから、クラス定義、又はグローバル関数定義等を抽出し、抽出した定義をまとめてサマリ情報とする。なお、図5の例でも、得られたサマリ情報のサイズが大きすぎる場合は、サマリ情報作成部11は、これを一定のサイズにする。
類似度算出部12は、図5の例でも、ファイルAのサマリ情報とファイルBのサマリ情報との差分を求める。差分は0.1KBである。なお、差分は、図5の例でも、一般的な文字列差分抽出アルゴリズムを用いて求められる。
そして、類似度算出部12は、図5の例でも、上記数1に、求めた差分を適用して、ファイルAとファイルBとの類似度を、0.875(=1−(0.1KB/0.8KB))と算出する。
また、図4及び図5には示されていないが、入力ファイル及び登録ファイルが、画像ファイルである場合は、サマリ情報作成部11は、上述したように、画像ファイルを圧縮して、低解像度のサムネイル画像を作成し、作成したサムネイル画像をサマリ情報とする。
この場合、類似度算出部12は、入力ファイルのサムネイル画像の全ての画素それぞれ毎に、各画素と、登録ファイルのサムネイル画像の同一位置の画素とを、RGBそれぞれのオクテット単位で比較し、差分を計算する。なお、画像ファイルがα成分を含む場合は、類似度算出部12は、RGBではなく、RGBAの全ての要素を用いて、差分を計算する。
そして、類似度算出部12は、画素毎のオクテットの差分(−128〜127)の絶対値から二進対数(0〜7)を求め、これを画素オクテット類似値とする。更に、類似度算出部12は、画素の構成要素(RGBまたはRGBA)の画素オクテット類似値の合計値を、要素数(RGBの場合3、RGBAの場合4)で割ったものを画素類似値とする。その後、類似度算出部12は、全ての画素の画素類似値の合計値を、画素数×7で除算し、得られた値を1から引いたものを類似度とする。なお、類似度の算出手法は、特に限定されず、上述した例以外の類似度計算アルゴリズムが用いられていても良い。
類似度算出部12は、入力ファイルの画像サイズと、登録ファイルの画像ファイルとが異なる場合、差分を取る意味が無いため、類似度は0(ゼロ)と算出することもできる。
具体的には、サムネイル画像において、水平方向の画素数が64、垂直方向の画素数も64、画素の構成要素をRGBであるとする。また、2つのサムネイル画像の内、400画素(=20×20)が異なり、サムネイル画像間の差分(異なる各画素のRGBの各オクテットについての差分)の絶対値が40であるとする。
この場合、この差分400画素の画素オクテット類似値は、下記の数2のように計算され、結果、画素類似値は下記の数3のように計算される。これ以外の画素(64×64−400=3696画素)については等しいので画素類似値は0となる。これらの結果から、類似度は下記の数4のように計算される。なお、下記の数2において、round()は四捨五入を示し、lgは二進対数(2を底とする対数)を示している。
(数2)
画素オクテット類似値=round(lg 40)≒round(5.32)=5
(数3)
画素類似値=(5+5+5)/3=5
(数4)
類似度=1−(5×400+0×3696) / (64×64×7)≒0.93
[装置動作]
次に、本実施の形態におけるファイル管理装置10の動作について図6〜図8を用いて説明する。また、本実施の形態1では、ファイル管理装置10を動作させることによって、ファイル管理方法が実施される。よって、本実施の形態におけるファイル管理方法の説明は、以下のファイル管理装置10の動作説明に代える。
最初に、図6を用いて、ファイル管理装置10による入力ファイルの登録処理について説明する。図6は、本発明の実施の形態におけるファイル管理装置の入力ファイル登録処理時の動作を示すフロー図である。
図6に示すように、最初に、サマリ情報作成部11は、端末装置30からファイルサーバ20に入力されたファイル(入力ファイル)を受け付ける(ステップA1)。また、ステップA1では、サマリ情報作成部11は、入力ファイルが圧縮されている場合は、前処理として、これを解凍する。
次に、サマリ情報作成部11は、入力ファイルのサマリ情報を作成する(ステップA2)。具体的には、ステップA2では、サマリ情報作成部11は、入力ファイルの種類に応じた最適な手法を用いて、サマリ情報を作成する。
次に、類似度算出部12は、登録ファイル毎に、入力ファイルのサマリ情報と登録ファイルのサマリ情報とを対比して、サマリ情報間の差分を抽出し、抽出した差分を用いて、入力ファイルと登録ファイルとの類似度を算出する(ステップA3)。
次に、差分算出部13は、類似度が最も高い登録ファイルを特定し、特定した登録ファイルと入力ファイルとの差分を抽出する(ステップA4)。また、入力ファイルが圧縮されている場合は、差分算出部13は、解凍後の入力ファイルを用いて、登録ファイルとの差分を抽出する。また、登録ファイルが、差分と類似ファイル情報とで登録されている場合は、登録ファイルを対象にして、後述の図7に示す処理が実行される。
次に、登録部14は、入力ファイルに対して最も類似度の高い登録ファイルについて、類似ファイル情報を作成する(ステップA5)。具体的には、登録部14は、ツリー構造において、登録ファイルに付与されている識別番号を用いて、類似ファイル情報を作成する。本実施の形態では、この識別番号としては、一般的なファイルシステム上でファイルに割り振られている「i−node番号」が用いられている。以降においては、識別番号をi−node番号とも表記する。
次に、登録部14は、入力ファイルの実ファイルの代わりに、ステップA4で抽出された差分と、ステップA5で作成された類似ファイル情報とを、データベース21に登録する(ステップA6)。
ステップA6では、登録部14は、ステップA4で抽出された差分については、圧縮を行っても良い。また、登録部14は、入力ファイルとして、差分及び類似ファイル情報以
外にも、ファイル名等の他の情報を登録することもできる。更に、図3に示したように、登録部14は、入力ファイルをツリー構造によって管理する。
続いて、図7を用いて、ファイル管理装置10によるファイルの読込処理について説明する。図7は、本発明の実施の形態におけるファイル管理装置のファイル読込処理時の動作を示すフロー図である。
図7に示すように、最初に、端末装置30から、ファイルサーバ20に対して、特定のファイルの読み込みが指示されると、ファイル管理装置10において、ファイル操作部15は、その指示を受け付ける(ステップB1)。
次に、ファイル操作部15は、指示対象となったファイルが、データベース21に、実データで登録されているかどうかを判定する(ステップB2)。
ステップB2の判定の結果、指示対象となったファイルが、実データで登録されていない場合は、ファイル操作部15は、指示対象となったファイルとして登録されている、差分及び類似ファイル情報を読み込む(ステップB3)
次に、ファイル操作部15は、ステップB3で読み込んだ類似ファイル情報から、それによって特定される登録ファイル(親ファイル)を特定する(ステップB4)。また、ファイル操作部15は、特定した登録ファイルを読み込む。なお、ステップB4で特定した登録ファイルが、差分と類似ファイル情報とで登録されている場合は、後述のステップB5の実行の前に、この登録ファイルを対象にして、ステップB1〜B4と、後述のステップB5〜B7が実行される。
次に、ファイル操作部15は、ステップB3で読み込んだ差分と、ステップB4で特定した親ファイルとを結合して、指示対象となったファイルを生成する(ステップB5)。
次に、ファイル操作部15は、ステップB5で生成したファイルを、指示対象となったファイルとして、ファイルサーバ20に出力する(ステップB6)。
また、上述のステップB2の判定の結果、指示対象となったファイルが、実データで登録されている場合は、ファイル操作部15は、指示対象となったファイルを読み込む(ステップB7)。
ステップB6又はステップB7の実行後、ファイル管理装置10における処理は終了し、読み込まれたファイルは、ファイルサーバ20から端末装置30へと送信される。その後、ファイルサーバ20は、指示対象となったファイルを、端末装置30に送信する。
続いて、図8を用いて、ファイル管理装置10によるファイルの削除処理について説明する。図8は、本発明の実施の形態におけるファイル管理装置のファイル削除処理時の動作を示すフロー図である。
図8に示すように、最初に、端末装置30から、ファイルサーバ20に対して、特定のファイル削除が指示されると、ファイル管理装置10において、ファイル操作部15は、その指示を受け付ける(ステップC1)。
次に、ファイル操作部15は、指示対象となったファイルのファイル名とi−node番号との対応関係を、ファイルサーバ20が作成しているディレクトリ情報から削除する(ステップC2)。
次に、ファイル操作部15は、指示対象となったファイルに対して、それを特定する類似ファイル情報によって登録されているファイル(子ファイル)が、存在しているかどうかを判定する(ステップC3)。
ステップC3の判定の結果、子ファイルが存在している場合は、ファイル操作部15は、何もしないで、処理を終了する。一方、ステップC3の判定の結果、子ファイルが存在していない場合は、ファイル操作部15は、指示対象となったファイルが実ファイルで登録されているかどうかを判定する(ステップC4)。
ステップC4の判定の結果、指示対象となったファイルが実ファイルで登録されている場合は、ファイル操作部15は、実ファイルを削除し(ステップC5)、処理を終了する。
一方、ステップC4の判定の結果、指示対象となったファイルが実ファイルで登録されていない場合は、ファイル操作部15は、指示対象ファイルとして登録されている差分と類似度が最も高い登録ファイルを特定する類似ファイル情報(=i−node番号)とを、データベース21から削除する(ステップC6)。
次に、ファイル操作部15は、指示対象となったファイルの親ファイルが削除されているかどうかを判定する(ステップC7)。具体的には、ファイル操作部15は、親ファイルのファイル名とi−node番号との対応関係が、ディレクトリ情報から削除されているかどうかを判定する。
ステップC7の判定の結果、親ファイルが削除されていない場合は、ファイル操作部15は処理を終了する。一方、ステップC7の判定の結果、親ファイルが削除されている場合は、ファイル操作部15は、処理対象を親ファイルに変更し(ステップC8)、ファイル操作部15は、再度ステップC3〜C8を実行する。
[実施の形態における効果]
以上のように、本実施の形態では、ファイル同士の類似度ではなく、入力ファイルのサマリ情報と登録ファイルのサマリ情報との類似度から、入力ファイルに最も類似する登録ファイルが特定される。このため、入力ファイルに最も類似する登録ファイルの特定処理が、高速化できる。そして、入力ファイルの登録は、差分と類似ファイル情報との登録によって完了でき、また、差分については更に圧縮することができる。このため、本実施の形態によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。
[変形例]
続いて、本実施の形態における変形例について説明する。本変形例では、入力ファイルとの類似度が最も高い登録ファイルを効率良く特定するため、類似度算出部12は、以下のステップに沿って類似度を算出する。
まず、類似度算出部12は、登録ファイルを管理するツリー(図3参照)の根から、その直下のファイルを特定し、入力ファイルと、特定した直下のファイルとの類似度を算出する。なお、ツリーの根の直下のファイルは、差分と類似ファイル情報とで構成されていないファイルであり、図3の例では、ファイルA及びDが該当する。
続いて、類似度算出部12は、ツリーの根の直下のファイルの中で最も類似度の高いファイルを特定し、特定したファイルにおいて子ファイルを検索する。子ファイルが存在す
る場合は、類似度算出部12は、ツリーの根の直下のファイルの更に直下にある子ファイルと入力ファイルとの類似度を算出する。
算出した結果、ツリーの根の直下のファイルの類似度の方が、その直下にある子ファイルの類似度よりも高い場合は、類似度算出部12は、ツリーの根の直下のファイルを最も類似度の高いファイルとし、処理を終了する。
一方、ツリーの根の直下のファイルの類似度よりも、その直下にある子ファイルの類似度の方が高い場合は、類似度算出部12は、その直下にある子ファイルの更に直下にある子ファイルを検索し、類似度を算出する。つまり、類似度算出部12は、子ファイルの類似度が高い限り、更に子ファイルを検索し、類似度を算出する。
この検索及び類似度の算出は、親ファイルの類似度の方が直下の子ファイルの類似度よりも高くなるまで、又は子ファイルが存在しなくなるまで行われる。このように、本変形例では、類似度算出部12は、ツリーの根から葉ノードに向けて、類似度の高い方の枝を辿って、入力ファイルとの類似度が最も高い登録ファイルを検出する。
具体的には、類似度算出部12は、図3の例では、まず、ファイルAとファイルDとについて、入力ファイルとの類似度を算出する。そして、ファイルDの類似度がファイルAよりも高い場合は、類似度算出部12は、入力ファイルと、ファイルDの子ファイルEとの類似度を算出する。この場合において、ファイルDの類似度の方が、子ファイルEの類似度よりも高い場合は、類似度算出部12は処理を終了する。
一方、子ファイルEの類似度の方がファイルDの類似度よりも高い場合は、類似度算出部12は、更に、ファイルEの直下にある孫ファイルFと入力ファイルとの類似度を算出する。そして、類似度算出部12は、子ファイルEの類似度と、孫ファイルFとの類似度とを比較し、比較の結果に応じては、更に下位のファイルを検索して類似度を算出する。
[応用例]
ここで、入力ファイルが、zipファイル等のアーカイブファイルである場合について説明する。
<登録時>
入力ファイルとして、アーカイブファイルが入力された場合は、ファイル管理装置10は、アーカイブファイルの内部ファイル群を解凍し、それを構成しているファイル毎に、図6に示したステップA2〜A6を実行する。
つまり、アーカイブファイルにおいて、各ファイルは、差分と類似ファイル情報とによって登録される。また、このため、ファイル管理装置10は、ファイルサーバ20が提供するファイルシステムにおいて、アーカイブファイル自身を、ディレクトリのように扱えるようにすることもできる。
<読み込み時>
アーカイブファイルの読み込みが指示された場合は、ファイル管理装置10は、アーカイブファイルの内部ファイル群を構成するファイル毎に、図7に示したステップB2〜B6を実行する。これにより、元のアーカイブファイルが復元され、ユーザの端末装置30に送信される。
また、本実施の形態では、入力ファイルが、拡張子にdocx又はpptxを持つファイルなど、ファイル内に画像などの別ファイルを貼り付けられる形式のファイルであり、ファイル
に別ファイルが貼り付けられている場合は、ファイル管理装置10は、この入力ファイルを上記のアーカイブファイルと同様に扱うことができる。
[プログラム]
本実施の形態におけるプログラムは、コンピュータに、図6に示すステップA1〜A6、図7に示すステップB1〜B6、図8に示すステップC1〜C8を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるファイル管理装置10とファイル管理方法とを実現することができる。この場合、コンピュータのプロセッサは、サマリ情報作成部11、類似度算出部12、差分算出部13、登録部14、及びファイル操作部15として機能し、処理を行なう。
また、本実施の形態では、データベース21は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現できる。
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、サマリ情報作成部11、類似度算出部12、差分算出部13、登録部14、及びファイル操作部15のいずれかとして機能しても良い。また、データベース21は、本実施の形態におけるプログラムを実行するコンピュータとは別のコンピュータ上に構築されていても良い。
ここで、本実施の形態におけるプログラムを実行することによって、ファイル管理装置10を実現するコンピュータについて図9を用いて説明する。図9は、本発明の実施の形態におけるファイル管理装置を実現するコンピュータの一例を示すブロック図である。
図9に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていても良い。
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記録媒体が挙げられる。
なお、本実施の形態におけるファイル管理装置10は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、ファイル管理装置10は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記15)によって表現することができるが、以下の記載に限定されるものではない。
(付記1)
入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマリ情報作成部と、
前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
を備えている、ことを特徴とするファイル管理装置。
(付記2)
付記1に記載のファイル管理装置であって、
前記登録部が、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理装置。
(付記3)
付記1または2に記載のファイル管理装置であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
(付記4)
付記1または2に記載のファイル管理装置であって、
前記入力ファイルが、ソースファイルである場合に、
前記サマリ情報作成部が、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
(付記5)
付記1または2に記載のファイル管理装置であって、
前記入力ファイルが、画像ファイルである場合に、
前記サマリ情報作成部が、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記類似度算出部が、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理装置。
(付記6)
(a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
(b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
(c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
(d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を有する、ことを特徴とするファイル管理方法。
(付記7)
付記6に記載のファイル管理方法であって、
前記(d)のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするファイル管理方法。
(付記8)
付記6または7に記載のファイル管理方法であって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記(a)のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
(付記9)
付記6または7に記載のファイル管理方法であって、
前記入力ファイルが、ソースファイルである場合に、
前記(a)のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
(付記10)
付記6または7に記載のファイル管理方法であって、
前記入力ファイルが、画像ファイルである場合に、
前記(a)のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするファイル管理方法。
(付記11)
コンピュータに、
(a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
(b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
(c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
(d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
を実行させる、ことを特徴とするプログラム。
(付記12)
付記11に記載のプログラムであって、
前記(d)のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
ことを特徴とするプログラム。
(付記13)
付記11または12に記載のプログラムであって、
前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
前記(a)のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用
いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
(付記14)
付記11または12に記載のプログラムであって、
前記入力ファイルが、ソースファイルである場合に、
前記(a)のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
(付記15)
付記11または12に記載のプログラムであって、
前記入力ファイルが、画像ファイルである場合に、
前記(a)のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
前記(b)のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
ことを特徴とするプログラム。
以上のように、本発明によれば、ファイルシステムにおいて、データの圧縮化を図りつつ、データの登録にかかる時間の短縮化を図ることができる。本発明は、各種ファイルシステムに有用である。
10 ファイル管理装置
11 サマリ情報作成部
12 類似度算出部
13 差分算出部
14 登録部
15 ファイル操作部
20 ファイルサーバ
21 データベース
30 端末装置
40 ネットワーク
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

Claims (15)

  1. 入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、サマリ情報作成部と、
    前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、類似度算出部と、
    前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、差分算出部と、
    算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、登録部と、
    を備えている、ことを特徴とするファイル管理装置。
  2. 請求項1に記載のファイル管理装置であって、
    前記登録部が、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
    ことを特徴とするファイル管理装置。
  3. 請求項1または2に記載のファイル管理装置であって、
    前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
    前記サマリ情報作成部が、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
    前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理装置。
  4. 請求項1または2に記載のファイル管理装置であって、
    前記入力ファイルが、ソースファイルである場合に、
    前記サマリ情報作成部が、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
    前記類似度算出部が、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理装置。
  5. 請求項1または2に記載のファイル管理装置であって、
    前記入力ファイルが、画像ファイルである場合に、
    前記サマリ情報作成部が、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
    前記類似度算出部が、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理装置。
  6. (a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
    (b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ステップと、
    (c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
    (d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
    を有する、ことを特徴とするファイル管理方法。
  7. 請求項6に記載のファイル管理方法であって、
    前記(d)のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
    ことを特徴とするファイル管理方法。
  8. 請求項6または7に記載のファイル管理方法であって、
    前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
    前記(a)のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理方法。
  9. 請求項6または7に記載のファイル管理方法であって、
    前記入力ファイルが、ソースファイルである場合に、
    前記(a)のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理方法。
  10. 請求項6または7に記載のファイル管理方法であって、
    前記入力ファイルが、画像ファイルである場合に、
    前記(a)のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするファイル管理方法。
  11. コンピュータに、
    (a)入力ファイルを分析して、前記入力ファイルの内容を示すサマリ情報を作成する、ステップと、
    (b)前記入力ファイルの前記サマリ情報と、既に登録されている登録ファイルのサマリ情報とを対比して、前記登録ファイル毎に、前記入力ファイルとの類似度を算出する、ス
    テップと、
    (c)前記類似度が最も高い登録ファイルと前記入力ファイルとの差分を算出する、ステップと、
    (d)算出された前記差分、及び前記類似度が最も高い登録ファイルを特定する類似ファイル情報を、前記入力ファイルとして、登録する、ステップと、
    を実行させる、ことを特徴とするプログラム。
  12. 請求項11に記載のプログラムであって、
    前記(d)のステップにおいて、前記入力ファイル及び前記登録ファイルをツリー構造によって管理しており、前記入力ファイルが、前記差分及び前記類似ファイル情報によって登録されている場合は、前記入力ファイルを、前記類似ファイル情報によって特定される前記登録ファイルの直下のファイルとする、
    ことを特徴とするプログラム。
  13. 請求項11または12に記載のプログラムであって、
    前記入力ファイルが、文書作成用のアプリケーションプログラムから出力された文書ファイルである場合に、
    前記(a)のステップにおいて、前記入力ファイルにおける文章の構成を分析して、前記文章の先頭側の一部分を取り出し、取り出した部分を用いて前記サマリ情報を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルのサマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするプログラム。
  14. 請求項11または12に記載のプログラムであって、
    前記入力ファイルが、ソースファイルである場合に、
    前記(a)のステップにおいて、前記入力ファイルから、関数定義を取り出し、取り出した関数定義を用いて前記サマリ情報を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サマリ情報と、既に登録されている前記登録ファイルの前記サマリ情報との差分を特定し、特定した前記差分のサイズを用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするプログラム。
  15. 請求項11または12に記載のプログラムであって、
    前記入力ファイルが、画像ファイルである場合に、
    前記(a)のステップにおいて、前記サマリ情報として、画像のサイズが元のサイズよりも縮小されたサムネイル画像を作成し、
    前記(b)のステップにおいて、前記入力ファイルの前記サムネイル画像と、既に登録されている前記登録ファイルのサムネイル画像との差分を特定し、特定した前記差分から得られる画素類似度を用いて、前記入力ファイルと前記登録ファイルとの前記類似度を算出する、
    ことを特徴とするプログラム。
JP2018066056A 2018-03-29 2018-03-29 ファイル管理装置、ファイル管理方法、及びプログラム Active JP7010538B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018066056A JP7010538B2 (ja) 2018-03-29 2018-03-29 ファイル管理装置、ファイル管理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018066056A JP7010538B2 (ja) 2018-03-29 2018-03-29 ファイル管理装置、ファイル管理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019175373A true JP2019175373A (ja) 2019-10-10
JP7010538B2 JP7010538B2 (ja) 2022-01-26

Family

ID=68167062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018066056A Active JP7010538B2 (ja) 2018-03-29 2018-03-29 ファイル管理装置、ファイル管理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7010538B2 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134359A (ja) * 1997-10-31 1999-05-21 Nippon Telegr & Teleph Corp <Ntt> 文書類似度計算方法、文書類似度計算装置及び文書類似度計算プログラムを記録した記録媒体
JP2006065424A (ja) * 2004-08-25 2006-03-09 Nec Corp データ記憶システム、データ記憶装置及びそれに用いる類似ファイル記録方法並びにそのプログラム
JP2006134042A (ja) * 2004-11-05 2006-05-25 Canon Inc 画像処理システム
JP2007150491A (ja) * 2005-11-25 2007-06-14 Nikon Corp カメラ、および画像管理プログラム
JP2008097480A (ja) * 2006-10-16 2008-04-24 Fuji Xerox Co Ltd 文書管理サーバ、文書管理システム及びプログラム
JP2009134735A (ja) * 1999-01-27 2009-06-18 Ricoh Co Ltd 画像分類装置およびその装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2012194945A (ja) * 2011-03-18 2012-10-11 Fujitsu Ltd 管理プログラム,管理方法および管理装置
US20170124067A1 (en) * 2015-11-04 2017-05-04 Kabushiki Kaisha Toshiba Document processing apparatus, method, and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134359A (ja) * 1997-10-31 1999-05-21 Nippon Telegr & Teleph Corp <Ntt> 文書類似度計算方法、文書類似度計算装置及び文書類似度計算プログラムを記録した記録媒体
JP2009134735A (ja) * 1999-01-27 2009-06-18 Ricoh Co Ltd 画像分類装置およびその装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006065424A (ja) * 2004-08-25 2006-03-09 Nec Corp データ記憶システム、データ記憶装置及びそれに用いる類似ファイル記録方法並びにそのプログラム
JP2006134042A (ja) * 2004-11-05 2006-05-25 Canon Inc 画像処理システム
JP2007150491A (ja) * 2005-11-25 2007-06-14 Nikon Corp カメラ、および画像管理プログラム
JP2008097480A (ja) * 2006-10-16 2008-04-24 Fuji Xerox Co Ltd 文書管理サーバ、文書管理システム及びプログラム
JP2012194945A (ja) * 2011-03-18 2012-10-11 Fujitsu Ltd 管理プログラム,管理方法および管理装置
US20170124067A1 (en) * 2015-11-04 2017-05-04 Kabushiki Kaisha Toshiba Document processing apparatus, method, and program

Also Published As

Publication number Publication date
JP7010538B2 (ja) 2022-01-26

Similar Documents

Publication Publication Date Title
US7844139B2 (en) Information management apparatus, information management method, and computer program product
US7191391B2 (en) Form processing device, and form processing method and program
KR102128138B1 (ko) 플레이스홀더에 의한 하이드레이션 및 디하이드레이션 기법
JP5886447B2 (ja) ロケーション非依存のファイル
US11200083B2 (en) Inexact reconstitution of virtual machine images
JP6085609B2 (ja) 画像の収集の自動管理の方法及びこれに対応する装置
US9922041B2 (en) Storing data files in a file system
US20080229186A1 (en) Persisting digital ink annotations as image metadata
JP2007521528A (ja) ボリュームイメージを生成すること
US9286228B2 (en) Facilitating caching in an image-processing system
US8850148B2 (en) Data copy management for faster reads
TW201546627A (zh) 輸入資料之條件保存
US10599726B2 (en) Methods and systems for real-time updating of encoded search indexes
JP6193406B2 (ja) 差分符号化のためのシリアライゼーション
US10191925B1 (en) Delivery of digital information to a remote device
US7647588B2 (en) Smart archive for JAR files
JP5890340B2 (ja) 画像分類装置及び画像分類プログラム
JP7010538B2 (ja) ファイル管理装置、ファイル管理方法、及びプログラム
US9294122B2 (en) Field level compression in parallel data flows
US20230110803A1 (en) Storing a data structure
CN114238223A (zh) 图片移除方法、装置、计算机设备及计算机可读存储介质
US20230409521A1 (en) Automatic preservation
JP7099690B2 (ja) ストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
CN112733952A (zh) 一种图像数据处理方法、装置、终端设备及可读存储介质
CN115599350A (zh) 定制软件的智能打包方法、系统及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220106

R150 Certificate of patent or registration of utility model

Ref document number: 7010538

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150