JP2013161342A - ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置 - Google Patents

ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置 Download PDF

Info

Publication number
JP2013161342A
JP2013161342A JP2012024011A JP2012024011A JP2013161342A JP 2013161342 A JP2013161342 A JP 2013161342A JP 2012024011 A JP2012024011 A JP 2012024011A JP 2012024011 A JP2012024011 A JP 2012024011A JP 2013161342 A JP2013161342 A JP 2013161342A
Authority
JP
Japan
Prior art keywords
file
list
operation history
acquired
server
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
JP2012024011A
Other languages
English (en)
Other versions
JP5774513B2 (ja
Inventor
Shimpei Nishida
晋平 西田
Saori Furuya
沙織 古谷
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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions 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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2012024011A priority Critical patent/JP5774513B2/ja
Priority to US13/743,723 priority patent/US20130204913A1/en
Priority to CN2013100245536A priority patent/CN103294749A/zh
Priority to EP20130152327 priority patent/EP2626796A1/en
Publication of JP2013161342A publication Critical patent/JP2013161342A/ja
Application granted granted Critical
Publication of JP5774513B2 publication Critical patent/JP5774513B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs

Abstract

【課題】 操作履歴リストを解析し、同一ファイルについて最新の操作のみが含まれるリスト、すなわちファイルサーバ内で追加、変更、削除されたファイルデータの最新の一覧である差分リストを高速に作成すること。
【解決手段】 検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1のステップと、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2のステップとを備えることを特徴とする。
【選択図】 図1

Description

本発明は、検索システムにおいて検索インデクスを更新すべきファイルデータについて、そのリストを生成する方法及びシステム並びにプログラム、装置に係るものであり、特に、検索インデクス作成対象のファイルサーバが、ファイルサーバに対して行われたファイルサーバ内データの操作履歴を取得するインタフェースを備えている場合について、そのインタフェースを用いて取得した操作履歴から、ファイルサーバ内データのうち、追加、更新、削除されたファイルの一覧を高速に作成する方法、システム、プログラム及び装置に関するものである。
近年、コンピュータ性能の高速化、HDDの大容量化に伴い、膨大な数の非定型文書が作られるようになっている。このため、膨大な数の文書の中から、必要とする文書を高速かつ的確に探し出すことの可能な検索システムの必要性が高まっている。検索結果を的確なものとするためには、検索対象となる非定型文書が格納されたファイルサーバに対して検索インデクス作成後に行われたファイルデータの追加、変更、削除操作をタイムリーに検索インデクスに反映することが重要となる。これらを検索インデクスへと反映させる際、変更されていないファイルデータについても検索インデクスを更新すると多大な時間がかかってしまうため、一般的には追加、変更、削除のあったファイルデータのみに絞って検索インデクスを更新する。そのためには、追加、変更、削除されたファイルデータの一覧を作成する必要がある。
このような検索システムのニーズにこたえるため、ファイルサーバの中にはファイルデータの操作履歴を記憶し、外部からの要求に応じて操作履歴を提供するインタフェースを備えるものも存在している。
先行技術として下記の特許文献1に開示されたものが知られている。
特開2006−268456号
ファイルデータの追加、変更、削除操作をタイムリーに検索インデクスに反映するために、ファイルサーバ内の検索対象ファイルについての検索インデクスの新規作成処理や、追加、変更、削除されたファイルの検索インデクス更新処理を、多数のサーバを用いて分散処理させることで高速に実施する方法が考えられる。
インデクス作成、更新対象ファイルデータの一覧を作成する際、ファイルサーバが更新ファイルの一覧を返すインタフェースを提供している場合は、そのインタフェースを利用すればよいが、そのようなインタフェースを備えていないファイルサーバの場合は、一般的にファイルサーバ内に存在する検索インデクス作成対象範囲のファイルデータ全てを走査して、対象ファイルの列挙や、更新操作の有無を判定する必要がある。
特にインデクス更新の際は、追加、変更、削除されたファイルデータが少量である場合であっても、全てのファイルデータを走査する必要があるため、追加、変更、削除されたファイルデータの一覧の作成処理が、インデクス更新処理の長時間化の要因となってしまっている。
一方でファイルサーバがファイル操作の履歴リストを返すインタフェースを備えている場合、そのインタフェースを用いて操作履歴リストを取得し、操作履歴リストに従って検索インデクスに追加、変更、削除を反映する方法が考えられる。しかし、操作履歴リストには同一のファイルに関する複数の操作履歴が含まれている場合がある。この場合、操作履歴リストの時系列に沿って検索インデクスを更新しなければ正しく検索インデクスを更新することができない。このような逐次的な処理が必要な場合、例えば操作履歴リストを分割して多数のサーバを用いて分散処理を行い、検索インデクスを更新する場合、検索インデクス更新前に分散処理結果を操作履歴リストの時系列順に並べて適用する必要があり、仮に操作履歴リストの後半部分の処理が高速に完了したとしても操作履歴リストの前半部分の処理が完了するまで待たなければならない。操作履歴リスト中に同一ファイルに関して複数の操作履歴が含まれていることが逐次処理が必要な原因である。
本発明の目的は、操作履歴リストを解析し、同一ファイルについて最新の操作のみが含まれるリスト、すなわちファイルサーバ内で追加、変更、削除されたファイルデータの最新の一覧(以下、差分リストと称する)を作成することであり、かつ、この履歴リストから差分リストへの変換処理を、分散処理サーバ群を利用して分散実行することにより、大容量ストレージが返す大きな操作履歴リストを高速に差分リストに変換することで、検索インデクスの新規作成、更新処理の分散実行を容易に実行できるようにし、検索インデクスを高速に最新の状態にすることである。
上記課題を解決するために、本発明に係るファイルリスト生成方法は、検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1のステップと、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2のステップとを備えることを特徴とする。
また、前記操作履歴リストを取得する第1のステップで取得した操作履歴件数が所定件数以上であった場合には、前記第2のステップにおいて複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎の差分リストを集約して出力することを特徴とする。
また、前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1のステップで取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、前記第2のステップにおいて各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする。
また、本発明に係るファイルリスト生成システムは、検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段とを備えることを特徴とする。
また、前記第1の手段で取得した操作履歴件数が所定件数以上であった場合には、前記第2の手段が複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力することを特徴とする。
また、前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に前記第2の手段が集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする。
本発明に係るファイルリスト生成プログラムは、ファイルリスト作成サーバで使用するプログラムであって、
前記ファイルリスト作成サーバを、
検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段として機能させることを特徴とする。
また、前記第1の手段で取得した操作履歴件数が所定件数以上であった場合には、第2の手段を複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力する手段として機能させることを特徴とする。
また、前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段として機能させることを特徴とする。
本発明に係るファイルリスト生成装置は、検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段とを備えることを特徴とする。
また、前記第1の手段は、取得した操作履歴件数が所定件数以上であった場合には、前記第2の手段が複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力することを特徴とする。
また、前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に前記第2の手段が集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする。
本発明によれば、ファイルサーバ内のデータに対する操作の履歴を保管し、要求に応じて履歴リストを返すインタフェースを備えたファイルサーバにおいて、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得し、その取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力するようにしているため、ファイルサーバ上で追加、変更、削除されたファイルの一覧を高速に作成することが可能となる。
これによって、検索インデクスの新規作成、更新処理の分散実行を容易に実行できるようになり、検索インデクスの新規作成、更新処理を高速に行うことが可能となり、結果として、検索システムによる検索結果を可能な限り的確なものとすることができる。
本発明に係る第一の実施形態におけるシステム構成図である。 ファイルサーバ内のインデクス対象ファイルのデータ構成図である。 ファイルサーバから返される履歴リストのデータ構成図である。 分散処理サーバ群を用いて履歴リストを分散して取得し、各ファイルの最新の履歴項目を取得して差分リストに変換する処理のフローチャートである。
以下、本発明を実施する場合の第一の実施形態について、図面に基づき詳細に説明する。
図1は、本発明に係る第一の実施形態におけるシステム構成図である。
図1において示したファイルリスト生成システムは、ファイルリスト作成サーバ1、分散処理サーバ群2、およびファイルサーバ3(以下「サーバ等」という)を、LAN(Local Area Network)4等の有線又は無線の通信回線により互いに通信可能に接続したシステムである。
図1においては、サーバ等はLAN4によって互いに通信可能に接続されているが、接続方法はLANに限定されるものではなく、例えばWAN(Wide Area Network)やインターネットによって接続されていてもよい。また、図1においては、サーバ等が同一LANセグメント上で接続されているが、この構成は一例に過ぎず、どのような構成になっていてもよい。さらに、図1においては、ファイルリスト作成サーバ1、分散処理サーバ群2、およびファイルサーバ3はそれぞれ1台ずつ存在しているが、それぞれ2台以上存在しても構わない。また、ファイルリスト作成サーバ1、分散処理サーバ群2、およびファイルサーバ3はそれぞれ異なる装置である必要はなく、例えば、ファイルリスト作成サーバ1、分散処理サーバ群2、およびファイルサーバ3の機能を1台の装置によって実現することも可能である。
ファイルサーバ3にはファイル操作履歴記録手段31が備わっており、ファイルサーバ3に接続された記憶装置32に格納された検索対象ファイル33に対して行われた追加、変更、削除などの操作の履歴を記録し、HTTP(Hypertext Transfer Protocol)などを用いたクライアントからの要求に応じて履歴リストを返すようになっている。この履歴リストの詳細は図3で説明する。
以上のような構成により、ファイルリスト作成サーバ1は分散処理サーバ群2を利用してファイルサーバ3から履歴リストの取得と前回インデクスを更新したとき以降からの差分リスト変換処理を行う。
ファイルリスト作成サーバ1はPC等の装置であり、記憶装置15と通信可能に接続されている。記憶装置15は磁気ディスク等の装置であり、ファイルリスト作成サーバ1に内蔵され又は外部接続される。記憶装置15と、ファイルリスト作成サーバ1の主記憶装置等は、ファイルリスト作成サーバ1の記憶手段として機能する。
ファイルリスト作成サーバ1はスケジューラ11、履歴リスト件数取得処理実行手段12、履歴リスト取得処理実行手段13、最新履歴項目取得手段14を備えている。また、ファイルリスト作成サーバ1はCPU、主記憶装置等を備えており、CPUは記憶装置15に記憶されている履歴リスト件数取得処理実行手段12等のプログラムを主記憶装置上にローディングし、その命令コードを実行することで各種の処理を実行する。
スケジューラ11は、差分リストを定期的に作成して検索インデクスを更新するにあたり、記憶装置15に記憶されている一覧作成処理実行間隔を参照して履歴リスト件数取得処理実行手段12を実行した後、履歴リスト取得処理実行手段13を実行して、ファイルサーバ3から履歴リストを取得し、その後、最新履歴項目取得手段14を実行して履歴リストに含まれる同一ファイルに関する操作履歴のうち最新のもののみを取得して差分リストへと変換する。この一連の動作については履歴リストから差分リストへの変換処理(S401等)として後述する。
図2は、ファイルサーバ3の検索対象ファイル33の構成の具体例を示した概念図である。
この概念図に示すファイルサーバ3内の検索対象ファイル33の構成においては、あるファイルサーバ3の識別名が“server1”である。“server1”では2つのディレクトリが共有されており、それぞれ”share1”、”share2”という共有名により一意に識別可能である。“server1”の”share1”、”share2”には、図示したようなディレクトリおよびファイルが存在する。例えば、“server1”の“share1”には、“etc”、“doc”の2つのディレクトリが存在し、“etc”ディレクトリには“file1.doc”、“file2.xml”の2つのファイルが、“doc”ディレクトリには“file3.doc”の1つのファイルが存在する。同様に、“server1”の“share2”には、1つのディレクトリ“pjt”が存在し、“pjt”ディレクトリには“pjt1”、“pjt2”、“pjt3”の3つのディレクトリが存在し、そのうち“pjt1”ディレクトリには“file4.txt”、“file5.doc”の2つのファイルが存在する。
図3はファイルサーバ3のファイル操作履歴記録手段31が返す履歴リストについて、図2の例を用いて具体的に示した概念図である。
履歴リスト300には、まず、どのサーバについての履歴リストかを示すデータ301が含まれている。この例ではXMLの“objectlogs”という要素に“rootURI”という名の属性を設けて“http://server1/”というデータを入れて、図2で示した“server1”を表すようにしている。
次にどの共有ディレクトリに関する履歴リストかを示すデータ302が含まれている。この例ではXMLの“container”という要素に“name”という名の属性を設けて“share1”というデータを入れて、図2で示した“share1”という共有フォルダを表すようにしている。
各操作履歴には、どのファイルについての操作であるか、ファイルを識別するためのデータ303が含まれている。この例ではXMLの“object”という要素に“uri”という名の属性を設けて“etc/file1.doc”というデータを入れて、図2で示した“share1”という共有フォルダ配下にある“etc”というフォルダの中の“file.doc”というファイルを表すようにしている。
同時に、操作履歴には、どのような操作が行われたかを示すためのデータ304が含まれており、この例では“action”という属性を設けて“create”というデータを入れて、そのファイルが作成されたことを表すようにしている。
“action”属性に含まれる可能性のある値としては検索対象ファイルに新たなファイルやディレクトリが追加されたことを示す“create”のほかに、既存のファイル、ディレクトリの内容、またはメタデータが変更されたことを示す“modify”、既存のファイル、ディレクトリが削除されたことを示す“delete”が考えられる。
更に、操作履歴には、その操作がいつ行われたかを示すデータ305が含まれている。この例では“timestamp”という属性を設けて操作が行われた日時を1970年1月1日0時0分からのミリ秒で表すようにしている。
操作履歴の中には同一ファイルに対して行われた操作が時系列順に記録されている。データ306はデータ303が示すファイルと同一のファイルに関して別の操作が、データ305が示す時刻よりも後に行われていることを示す。
このように、あるサーバ301の共有フォルダ302の配下に対して行われたファイルまたはディレクトリの追加、更新、削除操作の順序を、XMLの“object”要素の出現順で表すことによって、図3のXMLはあるサーバ301の共有フォルダ302配下に対して行われた操作の履歴を表す履歴リストとなっている。
図3において履歴リスト300はXML(Extensible Markup Language)形式で記述しているが、必ずしもXML形式である必要はなく、例えばJSON(Java Script Object Notation:Java=登録商標)形式やCSV(Comma Separated Values)形式など他の形式でもよい。
図4は、分散処理サーバ2群を用いて履歴リスト300を分散して取得し、各ファイルの最新の履歴項目を取得して差分リストに変換する処理のフローチャートである。
図4のS401に至るまでの処理は、前述のように、スケジューラ11が、検索インデクスを定期的に更新するにあたり、記憶装置15に記憶されている一覧作成処理実行間隔を参照して、差分リストを作成するために処理を開始させる。
なお、検索インデクスは検索用インデクス作成サーバ5が作成し、記憶装置51に格納している。検索インデクスの更新はスケジューラ11が指示する。
ファイルリスト作成サーバ1の履歴リスト件数取得処理手段12は、ファイルサーバ3に対してHTTP等の通信手段を用いて前回インデクス更新時から、現時刻の間の履歴リストに含まれる履歴の件数を問い合わせて取得する(S401)。
次に、取得した件数が最低件数以上かどうかを判断する(S402)。これは履歴リストに含まれる同一ファイルの履歴から最新の操作履歴項目を取得し差分リストへと変換する処理を並列に行うことで高速化するという本発明の目的に対して、履歴リストの件数があまりに少なかった場合に、並列処理を行うことによるオーバーヘッドが並列処理による高速化のメリットを上回ってしまうことを避けるために行うものである。なお、最低件数はファイルリスト作成サーバ1上の設定ファイルなどに記憶している値を参照する。この値は、例えば50000といった値であり、一台のファイルリスト作成サーバ1または分散処理サーバ群2のうちの1台が少なくとも数分以内に履歴リストに含まれる同一ファイルの履歴から最新の操作履歴項目を取得し差分リストへと変換する処理を完了できる件数を推定して設定することが望ましい。
S402の判断で取得した履歴リストの件数が最低件数以上だった場合は、履歴リスト取得要求を、分散処理サーバ群2で並列に要求するために、分割する(S402)。
例えば履歴リスト件数が1000000件だった場合は、1台あたりの履歴リスト件数が最低件数と等しくなるように、1台目のサーバは1件目から50000件目、2台目のサーバは50001件目から100000件目というように分割していく。なお、この実施形態では履歴リスト件数取得処理実行手段12を用いて件数を元に履歴リスト取得要求を分割しているが、件数のほかに期間で分割する方式も考えられる。すなわち、例えば前回のインデクス更新が3週間前だった場合は1台目のサーバが3週間前から2週間前までの1週間分の履歴リストを要求し、2台目のサーバが2週間前から1週間前までの1週間分の履歴リストを要求し、3台目のサーバが1週間前から現時刻までの1週間分の履歴リストを要求するような分割手法が考えられる。本発明は、このように前回インデクス作成処理日以降から現在までの期間を複数の期間に分割し、各期間毎の操作履歴リストを取得し、各期間の操作履歴リストを複数の分散処理サーバに割当て、各分散処理サーバが抽出した最新の操作履歴リストを集約して出力するように構成することが可能である。
次に、ファイルサーバ3に対してHTTP等の通信手段を用いて履歴リストを要求し、取得する(S404)。このとき、S402の判断で履歴リストの件数が最低件数以上だった場合はS403の分割処理に従って分散処理サーバ群2で並列に要求を行う。
S402の判断で履歴リストの件数が最低件数に満たなかった場合は1台のサーバで履歴リストの要求を行い、取得する。
次に、取得した履歴リストからファイルパス、操作種別、操作時刻からなる操作履歴を取得する(S405)。ファイルパスは図3のサーバを表すデータ301、共有フォルダを表すデータ302、ファイルを表すデータ303を繋げることによって作成できる。
次に、同一のファイルパスについての操作履歴を集計する(S406)。
次に、それぞれのファイルパスについて、操作時刻を参照し、最も現時刻に近い操作の操作履歴のみを残して、他の履歴を捨てる(S407)。
S405、S406、S407の処理はS402の判断結果に関わらず分散処理サーバ群2によって、並列に処理する。
次に全てのファイルパスの操作履歴を集約する(S408)。集約された操作履歴からなるリストは、分散処理サーバ群2によって並列処理で同一ファイルの履歴から最新の操作履歴項目を取得し終えた差分リストであり、この時点で履歴リストから差分リストへの変換処理が完了する。
なお、分割する件数や期間をまたいで操作履歴の重複が発生した場合に、集約し切れずにファイル重複が発生してしまうことが懸念される。しかし、このような場合には次のようにして解決することが可能である。すなわち、操作履歴件数が所定の件数以上であった場合に複数の分散処理サーバでファイルパスごとに差分リストの生成を件数で区切って分担して行うが、同一ファイルパスに関する操作履歴は必ず一つのサーバで差分リスト生成を行う。
これは、まず取得した履歴をファイルパスの辞書順でソートし、ソート済みの履歴を各分散処理サーバで交換し、同一のファイルパスについては同一の分散処理サーバが処理を担当するように分担量を決定することにより実現可能である。
期間によって分割された場合も、同様の分担方法によって、期間の分割値をまたいで操作履歴が存在した場合も重複排除漏れを起こすことなく、最新の履歴のみを残した差分リストを生成することが可能である。
1 ファイルリスト作成サーバ
2 分散処理サーバ群
3 ファイルサーバ
4 ネットワーク
11 スケジューラ
12 履歴リスト件数取得処理実行手段
13 履歴リスト取得処理実行手段
14 最新履歴項目取得手段
15 ファイルリスト作成サーバ1に接続された記憶装置
21 分散処理実行手段
31 ファイル操作履歴記録手段
32 ファイルサーバ3に接続された記憶装置
33 検索対象ファイル
201 検索対象ファイルの具体例
300 操作履歴リスト
301 操作履歴リストにおいてサーバを表すデータ
302 操作履歴リストにおいて共有フォルダを表すデータ
303 操作履歴リストにおいてファイルを表すデータ
304 操作履歴リストにおいて操作種別を表すデータ
305…操作履歴リストにおいて操作時刻を表すデータ

Claims (12)

  1. 検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1のステップと、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2のステップとを備えることを特徴とするファイルリスト生成方法。
  2. 前記操作履歴リストを取得する第1のステップで取得した操作履歴件数が所定件数以上であった場合には、前記第2のステップにおいて複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎の差分リストを集約して出力することを特徴とする請求項1に記載のファイルリスト生成方法。
  3. 前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1のステップで取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、前記第2のステップにおいて各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする請求項1に記載のファイルリスト生成方法。
  4. 検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段とを備えることを特徴とするファイルリスト生成システム。
  5. 前記第1の手段で取得した操作履歴件数が所定件数以上であった場合には、前記第2の手段が複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力することを特徴とする請求項4に記載のファイルリスト生成システム。
  6. 前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に前記第2の手段が集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする請求項4に記載のファイルリスト生成システム。
  7. ファイルリスト作成サーバで使用するプログラムであって、
    前記ファイルリスト作成サーバを、
    検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段として機能させることを特徴とするファイルリスト生成プログラム。
  8. 前記第1の手段で取得した操作履歴件数が所定件数以上であった場合には、第2の手段を複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力する手段として機能させることを特徴とする請求項7に記載のファイルリスト生成プログラム。
  9. 前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段として機能させることを特徴とする請求項7に記載のファイルリスト生成プログラム。
  10. 検索対象ファイルを管理するファイルサーバから前回の検索インデクス作成処理以降に検索対象ファイルに対して実施されたファイルデータの追加、変更、削除の操作履歴リストを取得する第1の手段と、取得した操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他のファイルの操作履歴と共に集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力する第2の手段とを備えることを特徴とするファイルリスト生成装置。
  11. 前記第1の手段は、取得した操作履歴件数が所定件数以上であった場合には、前記第2の手段が複数の分散処理サーバでファイルパス毎に差分リストの生成を分担して処理した後、各ファイルパス毎に差分リストを集約して出力することを特徴とする請求項10に記載のファイルリスト生成装置。
  12. 前回の検索インデクス作成処理以降から現在までの期間を複数の期間に分割し、その分割期間毎に各期間の操作履歴リストを前記第1の手段で取得し、その取得した操作履歴リストの処理を複数の分散処理サーバに割当て、各分散処理サーバに割当てた操作履歴リスト中に同一ファイルについて複数の操作履歴が含まれていた場合には最新の操作履歴のみを取得した後、当該操作履歴を他の分散処理サーバが分散処理した操作履歴と共に前記第2の手段が集約し、前回の検索インデクス作成処理以降に検索対象ファイルに対して実施された操作履歴リストとの差分リストとして出力することを特徴とする請求項10に記載のファイルリスト生成装置。
JP2012024011A 2012-02-07 2012-02-07 ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置 Expired - Fee Related JP5774513B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012024011A JP5774513B2 (ja) 2012-02-07 2012-02-07 ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置
US13/743,723 US20130204913A1 (en) 2012-02-07 2013-01-17 File list generation method, system, and program, and file list generation device
CN2013100245536A CN103294749A (zh) 2012-02-07 2013-01-23 文件列表生成方法和系统以及程序、文件列表生成装置
EP20130152327 EP2626796A1 (en) 2012-02-07 2013-01-23 File list generation method, system, and program, and file list generation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012024011A JP5774513B2 (ja) 2012-02-07 2012-02-07 ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置

Publications (2)

Publication Number Publication Date
JP2013161342A true JP2013161342A (ja) 2013-08-19
JP5774513B2 JP5774513B2 (ja) 2015-09-09

Family

ID=47740775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012024011A Expired - Fee Related JP5774513B2 (ja) 2012-02-07 2012-02-07 ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置

Country Status (4)

Country Link
US (1) US20130204913A1 (ja)
EP (1) EP2626796A1 (ja)
JP (1) JP5774513B2 (ja)
CN (1) CN103294749A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015225463A (ja) * 2014-05-27 2015-12-14 三菱電機株式会社 プログラマブルコントローラ、プログラム及び周辺装置
JP2020091787A (ja) * 2018-12-07 2020-06-11 キヤノン株式会社 通信装置およびその制御方法
JP2020154381A (ja) * 2019-03-18 2020-09-24 ヤフー株式会社 情報処理システム、情報処理装置、情報処理方法およびプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823813B (zh) * 2012-11-19 2018-10-02 腾讯科技(深圳)有限公司 电子终端历史操作记录处理方法及装置
CN104317950B (zh) * 2014-11-07 2017-11-03 中国农业银行股份有限公司 代码的合规检查方法及装置
CN115037729A (zh) * 2022-04-21 2022-09-09 中国建设银行股份有限公司 数据汇聚方法、装置、电子设备及计算机可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6175925A (ja) * 1984-09-21 1986-04-18 Nec Corp 複数個の索引をもつフアイルの索引保守方式
JPH08328924A (ja) * 1995-05-31 1996-12-13 Nec Corp インデックス更新方式
JP2006018632A (ja) * 2004-07-02 2006-01-19 Fujitsu Ltd リレーショナルデータベースのインデックス追加プログラム,インデックス追加装置及びインデックス追加方法
JP2007193660A (ja) * 2006-01-20 2007-08-02 Seiko Epson Corp 情報管理装置、情報管理方法及びそのプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5685003A (en) * 1992-12-23 1997-11-04 Microsoft Corporation Method and system for automatically indexing data in a document using a fresh index table
AUPQ475799A0 (en) * 1999-12-20 2000-01-20 Youramigo Pty Ltd An internet indexing system and method
US8126895B2 (en) * 2004-10-07 2012-02-28 Computer Associates Think, Inc. Method, apparatus, and computer program product for indexing, synchronizing and searching digital data
US20060117008A1 (en) * 2004-11-17 2006-06-01 Kabushiki Kaisha Toshiba File management apparatus and file management program
JP2006268456A (ja) 2005-03-24 2006-10-05 Nec Corp ファイル管理装置、ファイル管理方法、及びファイル管理プログラム
US8296268B2 (en) * 2006-07-21 2012-10-23 Samsung Electronics Co., Ltd. System and method for change logging in a firmware over the air development environment
US7933296B2 (en) * 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
JP5233233B2 (ja) * 2007-10-05 2013-07-10 日本電気株式会社 情報検索システム、情報検索用インデックスの登録装置、情報検索方法及びプログラム
US7996360B2 (en) * 2008-06-27 2011-08-09 International Business Machines Corporation Coordinating updates to replicated data
US8335776B2 (en) * 2008-07-02 2012-12-18 Commvault Systems, Inc. Distributed indexing system for data storage
US7974194B2 (en) * 2008-12-12 2011-07-05 Microsoft Corporation Optimizing data traffic and power consumption in mobile unified communication applications
US8285703B1 (en) * 2009-05-13 2012-10-09 Softek Solutions, Inc. Document crawling systems and methods
US8965860B2 (en) * 2010-04-01 2015-02-24 Salesforce.Com, Inc. Methods and systems for bulk uploading of data in an on-demand service environment
US8554737B2 (en) * 2010-09-28 2013-10-08 International Business Machines Corporation Dynamic consistency group formation and systems using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6175925A (ja) * 1984-09-21 1986-04-18 Nec Corp 複数個の索引をもつフアイルの索引保守方式
JPH08328924A (ja) * 1995-05-31 1996-12-13 Nec Corp インデックス更新方式
JP2006018632A (ja) * 2004-07-02 2006-01-19 Fujitsu Ltd リレーショナルデータベースのインデックス追加プログラム,インデックス追加装置及びインデックス追加方法
JP2007193660A (ja) * 2006-01-20 2007-08-02 Seiko Epson Corp 情報管理装置、情報管理方法及びそのプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015225463A (ja) * 2014-05-27 2015-12-14 三菱電機株式会社 プログラマブルコントローラ、プログラム及び周辺装置
JP2020091787A (ja) * 2018-12-07 2020-06-11 キヤノン株式会社 通信装置およびその制御方法
JP7218164B2 (ja) 2018-12-07 2023-02-06 キヤノン株式会社 通信装置およびその制御方法
JP2020154381A (ja) * 2019-03-18 2020-09-24 ヤフー株式会社 情報処理システム、情報処理装置、情報処理方法およびプログラム

Also Published As

Publication number Publication date
JP5774513B2 (ja) 2015-09-09
EP2626796A1 (en) 2013-08-14
CN103294749A (zh) 2013-09-11
US20130204913A1 (en) 2013-08-08

Similar Documents

Publication Publication Date Title
US10909082B2 (en) System and method for policy based synchronization of remote and local file systems
JP5774513B2 (ja) ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置
US20200372011A1 (en) Systems, devices, and methods for content indexing and querying in a search system
US10417203B2 (en) Compacting data history files
JP6303023B2 (ja) 一時的なイベンティングに関するシステム及び方法
JP5843965B2 (ja) 検索装置、検索装置の制御方法及び記録媒体
US8965941B2 (en) File list generation method, system, and program, and file list generation device
US8745034B1 (en) Selectively retrieving search results in accordance with predefined sort criteria
US8560569B2 (en) Method and apparatus for performing bulk file system attribute retrieval
US20110167045A1 (en) Storage system and its file management method
US20130297788A1 (en) Computer system and data management method
JP2012098934A (ja) 文書管理システム、文書管理システムの制御方法、プログラム
WO2009005994A1 (en) Efficient updates for distributed file systems
CN109800207A (zh) 日志解析方法、装置、设备及计算机可读存储介质
JP5557824B2 (ja) 階層ファイルストレージに対する差分インデクシング方法
CN104598299A (zh) 用于对每条接收数据执行聚合处理的系统和方法
US9390131B1 (en) Executing queries subject to different consistency requirements
JP4747213B2 (ja) 文書を収集するためのシステムおよびプログラム
JP6204753B2 (ja) 分散クエリ処理装置、処理方法及び処理プログラム
JP5266992B2 (ja) 電子ドキュメント管理システム、電子ドキュメント管理方法およびそのプログラム
US20210089527A1 (en) Incremental addition of data to partitions in database tables
Casaní et al. ATLAS EventIndex general dataflow and monitoring infrastructure
Jensen et al. Holistic analytics of sensor data from renewable energy sources: a vision paper
CN113553320B (zh) 数据质量监控方法及装置
JPWO2018061070A1 (ja) 計算機システム及び分析ソースデータ管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140725

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150318

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150413

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150422

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150701

R150 Certificate of patent or registration of utility model

Ref document number: 5774513

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees