JP2009259265A - System for managing distributed files - Google Patents
System for managing distributed files Download PDFInfo
- Publication number
- JP2009259265A JP2009259265A JP2009165295A JP2009165295A JP2009259265A JP 2009259265 A JP2009259265 A JP 2009259265A JP 2009165295 A JP2009165295 A JP 2009165295A JP 2009165295 A JP2009165295 A JP 2009165295A JP 2009259265 A JP2009259265 A JP 2009259265A
- Authority
- JP
- Japan
- Prior art keywords
- file
- server
- request
- unit
- holding
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
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)
Abstract
Description
本発明は、コンピュータ・ネットワーク(以下、「ネットワーク」という。)上で分散している電子ファイルを管理するシステムに関する。 The present invention relates to a system for managing electronic files distributed on a computer network (hereinafter referred to as “network”).
企業等の組織内のLAN(Local Area Network)やインターネットなどのWan(Wide Area Network)といったネットワークを介して、ネットワークに接続されている端末を利用するユーザは、ネットワークに接続されているサーバが保持している電子ファイルにアクセスすることができる。これにより、ユーザは、ネットワークに接続されているサーバに分散して保持されている電子ファイルを閲覧すること、または、ダウンロードすることなどが可能となり、情報の流通や活用が促進されている。 Users using terminals connected to a network via a network such as a LAN (Local Area Network) in an organization such as a company or a WAN (Wide Area Network) such as the Internet are held by a server connected to the network. Can access electronic files. Thereby, the user can browse or download the electronic files distributed and held in the servers connected to the network, and the distribution and utilization of information is promoted.
従来、このようにネットワーク上で分散して保持されている電子ファイルの活用および管理のための技術が提案されている。 Conventionally, techniques for utilizing and managing electronic files held in a distributed manner on a network have been proposed.
例えば、特許文献1に記載の技術は、各サーバのファイルシステムを統合するスーパーディレクトリを頂点とするツリー構造をした仮想的なファイルシステムをユーザに提示するファイルシステムの管理方法である。この技術によると、ユーザは自身が利用している端末が保持している電子ファイルにアクセスする場合と同様のユーザインターフェースから、サーバが保持する電子ファイルにアクセスすることができる。
For example, the technology described in
また、特許文献2に記載の技術は、各サーバが保持する1つの電子ファイルをネットワークに接続された各端末において共同で利用するのではなく、各サーバが同一の電子ファイルないし電子ファイル群を重複して保持し、各サーバ間で保持している電子ファイルないし電子ファイル群の内容を完全に同期させるメカニズムまたは方法である。
In addition, the technology described in
しかしながら、特許文献1に記載の技術では、ユーザが取得した電子ファイルが必ずしも最新の内容の電子ファイルであるとは限らないという問題がある。
However, the technique described in
特許文献1に記載の技術は、ネットワーク上に分散している電子ファイルの同期をとる技術を開示していないため、例えば、複数のサーバが保持している同一名称の電子ファイルの内容が異なる場合がある。
Since the technique described in
特許文献2に記載の技術では、複数のサーバが保持する各電子ファイルの同期が取れている。しかしながら、全てのサーバが同一の電子ファイル群を保持しており、各電子ファイル間の同期をとるためには、電子ファイルの内容を更新する際に、全てのサーバが保持する当該電子ファイルを更新する必要がある。したがって、更新時には、ネットワークトラフィックが増大するという問題がある。この問題は、サーバの数が多くなるほど顕著になる。
In the technique described in
本発明は、上記の問題を解決するためになされたもので、ユーザが利用する端末から任意のサーバにアクセスすることにより、ユーザの所望する電子ファイルが複数のサーバのいずれかに保持されている限り、最新の当該電子ファイルをユーザに提供することを可能とする分散ファイル管理システムの提供を目的とする。また、上記の目的を達成するために掛かるネットワーク上の負荷を抑えることを可能とする分散ファイル管理システムの提供を目的とする。 The present invention has been made to solve the above problem, and an electronic file desired by a user is held in any of a plurality of servers by accessing an arbitrary server from a terminal used by the user. As long as the latest electronic file is provided to the user, it is intended to provide a distributed file management system. It is another object of the present invention to provide a distributed file management system that can suppress the load on the network required to achieve the above object.
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。 To achieve the above object, a distributed file management system according to the present invention is a distributed file management system for managing electronic files held by a plurality of servers, and the distributed file management system is connected by a communication line. The plurality of servers, terminals used by users, and a distributed file management device, which is designated by the access source server that is a server that receives a user request related to an electronic file. When the terminal receives a request for acquiring the electronic file including the identifier, an inquiry as to which holding server is the server that holds the latest electronic file including the identifier is received from the access source server. Indicates which of the inquiry acceptance means and the server holding the latest electronic file is When the inquiry is received by the holding server storage unit storing the file holding information as information and the inquiry receiving unit, the file holding information is referred to, and the holding server is determined. A holding server determining unit that transmits a file transmission request that is a request for transmitting an electronic file including the user-specified identifier to the access source server, to the server that is determined to be the holding server by the holding server determining unit. File transmission requesting means.
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、最新の電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも1台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。 As described above, when the distributed file management apparatus receives an inquiry from the access source server, the distributed file management apparatus determines the electronic file holding server according to the user's request based on the information indicating which server holds the latest electronic file. to decide. Therefore, when a user accesses any of a plurality of servers connected via a network from a terminal used by the user, as long as at least one of the plurality of servers holds an electronic file desired by the user. The latest electronic file according to the user's request can be acquired from the terminal. Therefore, the user does not need to be aware of whether or not the electronic file is the latest and the server that is accessed from the terminal. It becomes possible to improve the property.
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 In addition, when updating an electronic file held by each server, as long as one of the servers holds the electronic file according to the user's request, the user does not need to perform processing for synchronizing the electronic file. The terminal can obtain the latest electronic file related to the request. Therefore, it is possible to suppress the amount of information transferred on the network when updating the electronic file, and to reduce the load on each server.
好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する。 Preferably, the holding server storage means is a file that is information in which the server is associated with an identifier of the electronic file and a flag indicating whether or not the electronic file group includes the same identifier. The retention server is stored, and the retention server determination unit refers to the file retention information, and stores the server associated with the user-specified identifier and the flag indicating the latest. Judge as server.
このように、分散ファイル管理装置は、サーバと、電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報を含むファイル保持情報を保持しており、アクセス元サーバから問合せを受け付けると、このようなファイル保持情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも1台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。 As described above, the distributed file management apparatus includes file holding information including information in which a server, an identifier of an electronic file, and a flag indicating whether the file is the latest in an electronic file group including the same identifier are associated with each other. When an inquiry is received from the access source server, the electronic file holding server related to the user's request is determined based on such file holding information. Therefore, when a user accesses any of a plurality of servers connected via a network from a terminal used by the user, as long as at least one of the plurality of servers holds an electronic file desired by the user. The latest electronic file according to the user's request can be acquired from the terminal. Therefore, the user does not need to be aware of whether or not the electronic file is the latest and the server that is accessed from the terminal, and the convenience of the user related to the acquisition of the electronic file that is distributed and held in a plurality of servers on the network. It becomes possible to improve the property.
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 In addition, when updating an electronic file held by each server, as long as one of the servers holds the electronic file according to the user's request, the user does not need to perform processing for synchronizing the electronic file. The terminal can obtain the latest electronic file related to the request. Therefore, it is possible to suppress the amount of information transferred on the network when updating the electronic file, and to reduce the load on each server.
さらに好ましくは、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。 More preferably, each of the servers includes a file storage unit storing an electronic file, a file transmission request receiving unit that receives the file transmission request transmitted by the file transmission request unit, and an electronic device related to the file transmission request. File storage control means for reading a file from the file storage means, and file transmission means for acquiring the electronic file read by the file storage control means and transmitting the acquired electronic file to the access source server.
このように、アクセス元サーバは保持サーバからユーザの要求に係る電子ファイルを取得する。これにより、アクセス元サーバは、ユーザの要求に係る電子ファイルをユーザが利用する端末に送信することが可能となる。 Thus, the access source server acquires the electronic file according to the user request from the holding server. Thereby, the access source server can transmit the electronic file according to the user's request to the terminal used by the user.
さらに好ましくは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。 More preferably, it further comprises a file receiving means for receiving an electronic file transmitted from the file transmitting means of another server, wherein the file storage control means further receives the electronic file received by the file receiving means as the file. Write to storage means.
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、1つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 As described above, when the access source server does not hold the electronic file according to the user's request, the access source server acquires the electronic file from the holding server and holds it. Thereby, when the request | requirement which acquires the same electronic file from any one of terminals is received again, the electronic file which self hold | maintains can be transmitted. Therefore, the access source server does not need to acquire again from the holding server for the electronic file acquired via one access source server, and the amount of information transferred on the network can be suppressed. It is possible to reduce the load on the server.
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。 More preferably, each of the servers further includes, when the file storage control unit writes an electronic file in the file storage unit, a difference between the information stored in the file storage unit before and after the writing, in the distributed file An update notification means for notifying the management device, wherein the distributed file management device is configured to update the file holding by the difference included in the notification received by the update notification reception means and the notification received by the update notification reception means. Holding information updating means for updating information.
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Further, the update notification means has received a request for the terminal to acquire an electronic file including a user-specified identifier, and the access source server has held the electronic file related to the acquisition request. In this case, the distributed file management apparatus is notified of the electronic file identifier related to the acquisition request as the difference, the update notification receiving unit is notified by the update notification unit, and the holding information update unit is the update In response to the notification received by the notification receiving means, by adding information that associates the information indicating the access source server, the identifier of the electronic file included in the difference, and the flag indicating the latest The file holding information is updated.
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Furthermore, the update notification means has received a write request, which is a request to hold the electronic file in the server, and the access source server has held the electronic file related to the write request. In this case, the distributed file management device is notified as the difference between the identifier of the electronic file related to the write request and the information indicating the retention based on the write request, and the update notification receiving means In response to the notification from the update notification means, the retained information update means responds to the server when there is a server associated with the identifier included in the difference according to the notification received by the update notification reception means. The flag is changed to a flag indicating that the flag is not the latest, information indicating the access source server, an identifier included in the difference, and the latest By adding information that associates with the flag indicating Rukoto, it updates the file holding information.
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。 Thus, the file holding information held by the distributed file management apparatus is updated. As a result, the latest state of the electronic file held by each server can be automatically stored in the file holding information.
さらに好ましくは、前記各サーバは、さらに、電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける。 More preferably, each of the servers further includes a user request receiving means for receiving a user request related to an electronic file from the terminal, and the user request received by the user request receiving means is a user-specified identifier. Request type determining means for determining whether the terminal is an acquisition request that is a request for acquiring an electronic file or a write request that is a request for holding the electronic file in the server, and a request type determining means A storage server inquiry means for inquiring of a distributed file management device which electronic file storage server is related to the acquisition request when it is determined that the acquisition request is, From the holding server inquiry means provided in the access source server that received the acquisition request, the holding server of the electronic file related to the acquisition request Accept the inquiry of whether a shift.
また、前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む。 Further, the file storage control means further writes an electronic file related to the write request received by the user request reception means to the file storage means when the request type determination unit determines that the request is a write request. .
このように、アクセス元サーバは、ユーザの要求に応じて、分散ファイル管理装置にユーザの要求に関連する問合せをし、または、自身の処理を実行する。これにより、分散ファイル管理装置にかかる負荷を軽減することが可能となる。 In this way, the access source server makes an inquiry related to the user request to the distributed file management apparatus or executes its own process in response to the user request. As a result, the load on the distributed file management apparatus can be reduced.
さらに好ましくは、前記各サーバは、さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、前記分散ファイル管理装置は、さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する。 More preferably, each of the servers further includes a lock request that excludes processing related to writing of the electronic file related to the write request when the request type determining unit determines that the request is the write request. The distributed file management device further includes lock request transmission means for transmitting the request for releasing the lock to the distributed file management device, and the distributed file management device further holds lock information that is information for identifying an electronic file to be locked. When the lock request or the lock release request is received from the lock information holding unit and the lock request transmission unit, and the lock request is received, the lock information holding unit holds the lock information related to the lock request. When the lock release request is received, the lock information related to the lock release request is changed to the lock information. A lock request receiving unit to be deleted from the holding unit, wherein the holding information update unit is the same as the electronic file indicated by the lock information and the electronic file indicated by the difference received by the update notification receiving unit. In this case, after the lock information held by the lock information holding means is deleted, the file holding information is updated.
このように、ロック処理をすることにより、分散ファイル管理装置が保持しているファイル保持情報の内容と、各サーバが保持する電子ファイルの最新の状態との食い違いを防止することが可能となる。 Thus, by performing the lock process, it is possible to prevent a discrepancy between the contents of the file holding information held by the distributed file management apparatus and the latest state of the electronic file held by each server.
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも1つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断手段と、前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える。 To achieve the above object, a distributed file management system according to the present invention is a distributed file management system for managing electronic files held by a plurality of servers, and the distributed file management system is connected by a communication line. And a plurality of servers, terminals used by users, and a distributed file management device, wherein the distributed file management device stores file holding information that is information indicating which server holds an electronic file. The stored holding server storage means and the electronic file held by at least one of the plurality of servers when the plurality of servers hold an electronic file having the same identifier with reference to the file holding information. Delete target judging means for judging whether or not to delete each of the electronic files, and the deletion The server holding the electronic file is determined to be deleted by elephant determining means, and a deletion request sending means for sending a request to delete the electronic file.
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも1台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。 As described above, when the distributed file management apparatus receives an inquiry from the access source server, the distributed file management apparatus determines the electronic file holding server related to the user's request based on the information indicating which server holds the electronic file. . Therefore, when a user accesses any of a plurality of servers connected via a network from a terminal used by the user, as long as at least one of the plurality of servers holds an electronic file desired by the user. The electronic file according to the user's request can be acquired from the terminal. Therefore, the user does not need to be aware of whether or not the electronic file is the latest and the server that is accessed from the terminal, and the convenience of the user related to the acquisition of the electronic file distributed and held in a plurality of servers on the network. It becomes possible to improve the property.
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。 In addition, when updating the electronic file held by each server, it is possible to synchronize electronic files having the same identifier held redundantly by some servers. Duplicate electronic files are not necessarily all of multiple servers, so transfer them over the network when updating electronic files, rather than when all servers hold all electronic files redundantly. It is possible to reduce the amount of information to be processed, and to reduce the load on each server. When electronic files including the same identifier are synchronized, the user can obtain the latest electronic file at the terminal.
さらに、重複して保持されている電子ファイルを、少なくとも1つを残して削除する。これにより、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。 Furthermore, at least one electronic file held redundantly is deleted. Thereby, it is possible to suppress consumption of storage resources for each server to hold the electronic file.
さらに好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する。 More preferably, the holding server storage means associates the server, the identifier of the electronic file, and the last access date that is the date when the user's request related to the electronic file held by the server was last received. The file retention information that is information is stored, the deletion target determination means refers to the file retention information, a plurality of servers retain the same electronic file, and any of the electronic files retained by the plurality of servers When a predetermined period has elapsed since the last access date, it is determined whether or not to delete each electronic file so that the electronic file having the latest last access date remains.
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。 The holding server storage means is a file holding that is information in which the server is associated with an identifier of the electronic file and a flag indicating whether or not the electronic file group includes the same identifier. Information is stored, the deletion target judging means refers to the file holding information, a plurality of servers holds an electronic file including the same identifier, and the latest one of the electronic files including the same identifier is stored. Whether or not to delete each electronic file so as to leave only the electronic file associated with the flag indicating the latest content when the flag indicating that the content is not associated To do.
さらに、前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも1つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する。 Further, the deletion target judging means is configured to leave each electronic file so as to leave the electronic file held by at least one of the plurality of servers when the plurality of servers hold the electronic file including the same identifier. It is determined periodically whether or not to delete.
さらに、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。 Furthermore, the distributed file management device further includes the access source server, which is a server that has received a user request relating to an electronic file, when receiving a write request that is a request for causing the server to hold the electronic file. Inquiry accepting means for accepting from the access source server an inquiry as to which server holds an electronic file that includes the same identifier as the electronic file related to the write request, and the deletion target judging means include the inquiry When the receiving unit receives an inquiry based on the write request, the access source server refers to the file holding information, and the plurality of servers hold electronic files including the same identifier. Determine whether to delete each electronic file so that only the retained electronic file remains by receiving That.
このように、定期的に、または、書込要求を受信したときに、重複して保持されている電子ファイルを、少なくとも1つを残して削除する。これにより、各サーバが電子ファイルを保持するために消費する記憶資源の有効な活用が可能となる。 In this way, at least one of the electronic files held redundantly is deleted, periodically or when a write request is received. This makes it possible to effectively use the storage resources that each server consumes to hold the electronic file.
さらに好ましくは、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。 More preferably, the distributed file management device further includes a case where an access source server, which is a server that has received a user request relating to an electronic file, receives a request for the terminal to acquire an electronic file including a user-specified identifier. Inquiry receiving means for receiving from the access source server an inquiry as to which holding server is the server holding the electronic file related to the acquisition request, and the inquiry receiving means is an inquiry based on the acquisition request Is received by referring to the file holding information, the holding server determining means for determining which is the holding server, and the server determined to be the holding server by the holding server determining means, A request for transmitting an electronic file including the user-specified identifier to the access source server The Airu transmission request, and a file transmission request means for transmitting to the server is determined to be a holding server by the holding server determination means.
また、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。 Each of the servers includes a file storage unit that stores an electronic file, a file transmission request receiving unit that receives the file transmission request transmitted by the file transmission request unit, and an electronic file related to the file transmission request. A file storage control unit that reads from the file storage unit; and a file transmission unit that acquires the electronic file read by the file storage control unit and transmits the acquired electronic file to the access source server.
さらに、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。 Further, each of the servers further includes a file receiving unit that receives an electronic file transmitted from the file transmitting unit of another server, and the file storage control unit further includes the electronic file received by the file receiving unit. Is written in the file storage means.
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、1つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 As described above, when the access source server does not hold the electronic file according to the user's request, the access source server acquires the electronic file from the holding server and holds it. Thereby, when the request | requirement which acquires the same electronic file from any one of terminals is received again, the electronic file which self hold | maintains can be transmitted. Therefore, the access source server does not need to acquire again from the holding server for the electronic file acquired via one access source server, and the amount of information transferred on the network can be suppressed. It is possible to reduce the load on the server.
さらに好ましくは、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計手段と、前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第1の保持情報更新手段とを備える。 More preferably, the distributed file management device further includes a clock unit that holds a current date and time, and the clock unit holds the access server when the holding server determination unit determines that the access source server is a holding server. The first holding information updating unit updates the last access date included in the file holding information associated with the access source server and the user-specified identifier depending on the date to be updated.
また、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と、前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第2の保持情報更新手段とを備える。 Each of the servers further includes update notification means for notifying the distributed file management apparatus of a difference between the file storage means before and after writing when the file storage control means writes an electronic file to the file storage means. And the distributed file management device updates the file holding information by the update notification receiving means for receiving a notification from the update notification means and the difference included in the notification received by the update notification receiving means. Information updating means.
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第2の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Furthermore, the distributed file management device further includes a clock unit that holds the current date and time, and the update notification unit receives a request for the terminal to acquire an electronic file including a user-specified identifier. When the access source server holds the electronic file related to the acquisition request, the identifier of the electronic file related to the acquisition request is notified to the distributed file management device as the difference, and the update notification The accepting means receives a notification from the update notifying means, and the second holding information updating means receives the information indicating the access source server and the electronic information included in the difference according to the notice accepted by the update notice accepting means. By adding information in which the identifier of the file is associated with the date acquired from the clock unit as the last access date, the file To update the information held.
さらに、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第2の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Furthermore, the update notification means has received a request for the terminal to acquire an electronic file including a user-specified identifier, and the access source server has retained the electronic file related to the acquisition request. In this case, the distributed file management apparatus is notified of the identifier of the electronic file related to the acquisition request as the difference, and the update notification receiving unit receives the notification from the update notification unit, and the second holding information update unit In response to the notification received by the update notification receiving means, the information indicating the access source server, the identifier of the electronic file included in the difference, and the flag indicating the latest are associated with each other. By adding, the file holding information is updated.
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第2の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する。 Furthermore, the distributed file management device further includes a clock unit that holds the current date and time, and the update notification unit receives the write request that is a request to hold the electronic file in the server. When the access source server has held the electronic file related to the write request, an identifier of the electronic file related to the write request and information indicating that the access is based on the write request, The difference is notified to the distributed file management device, the update notification receiving unit receives a notification from the update notification unit, and the second holding information update unit is responsive to the notification received by the update notification receiving unit. The information indicating the access source server, the identifier included in the difference, and the information obtained by associating the date acquired from the clock unit as the last access date To update the file holding information.
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第2の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Furthermore, the update notification means has received a write request, which is a request to hold the electronic file in the server, and the access source server has held the electronic file related to the write request. In this case, the distributed file management device is notified as the difference between the identifier of the electronic file related to the write request and the information indicating the retention based on the write request, and the update notification receiving means In response to the notification from the update notification means, the second holding information update means, when there is a server associated with the identifier included in the difference in response to the notification received by the update notification reception means, While changing the flag corresponding to the server to a flag indicating that it is not the latest, information indicating the access source server, an identifier included in the difference, By adding information that associates with the flag indicating a new, updating the file holding information.
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の正しい状態を格納しておくことが可能となる。 Thus, the file holding information held by the distributed file management apparatus is updated. As a result, the latest correct state of the electronic file held by each server can be automatically stored in the file holding information.
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。 To achieve the above object, a distributed file management system according to the present invention is a distributed file management system for managing electronic files held by a plurality of servers, and the distributed file management system is connected by a communication line. The plurality of servers, terminals used by users, and a distributed file management device, which is designated by the access source server that is a server that receives a user request related to an electronic file. When the terminal receives a request for acquiring an electronic file including the identifier, an inquiry is made as to which holding server is a server that holds a genuine electronic file created by an authorized person including the identifier. Inquiry accepting means for accepting from the access source server and a server for holding an electronic file The holding server storage means for storing file holding information, which is information indicating which, and when the inquiry receiving means receives an inquiry, the holding server refers to the file holding information so that the holding server A holding server determination unit that determines which is a file transmission request that is a request for transmitting an electronic file including the user-specified identifier to the access source server is determined by the holding server determination unit as a holding server. File transmission requesting means for transmitting to the designated server.
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する。 The holding server storage unit stores file holding information which is information in which the server, the identifier of the electronic file, and a hash value of the electronic file are associated with each other, and the holding server determination unit stores the query. When the accepting unit accepts the inquiry, the file designation information is referred to, and by obtaining the hash value of the electronic file held by the server associated with the user-specified identifier, If the hash value associated with the identifier matches the acquired hash value, the server associated with the user-specified identifier is determined as the holding server.
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも1台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。 As described above, when the distributed file management apparatus receives an inquiry from the access source server, the distributed file management apparatus determines the electronic file holding server related to the user's request based on the information indicating which server holds the electronic file. . Therefore, when a user accesses any of a plurality of servers connected via a network from a terminal used by the user, as long as at least one of the plurality of servers holds an electronic file desired by the user. The electronic file according to the user's request can be acquired from the terminal. Therefore, the user does not need to be aware of whether or not the electronic file is the latest and the server that is accessed from the terminal, and the convenience of the user related to the acquisition of the electronic file distributed and held in a plurality of servers on the network. It becomes possible to improve the property.
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。 In addition, when updating the electronic file held by each server, it is possible to synchronize electronic files having the same identifier held redundantly by some servers. Duplicate electronic files are not necessarily all of multiple servers, so transfer them over the network when updating electronic files, rather than when all servers hold all electronic files redundantly. It is possible to reduce the amount of information to be processed, and to reduce the load on each server. When electronic files including the same identifier are synchronized, the user can obtain the latest electronic file at the terminal.
電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。 It is possible to detect falsification of an electronic file and transmit only the genuine electronic file to the user, and it is possible to improve the reliability of the distributed file management system.
さらに好ましくは、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第1の判断部と、前記第1判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第1判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第2の判断部とを有し、前記分散ファイル管理装置は、さらに、前記問合受付手段が問合せを受け付けることにより、前記第1の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える。 More preferably, the holding server determination unit determines a server holding an electronic file including a user-specified identifier by referring to the file holding information when the inquiry receiving unit receives an inquiry. 1 and a hash value of the electronic file held by the server determined to hold the electronic file by the first determination unit, and the hash value and the hash value included in the file holding information And the second determination unit that determines that the server determined to hold the electronic file by the first determination unit as a holding server when the first determination unit matches, the distributed file management device further includes the question When the combined acceptance unit accepts the inquiry, the server determines that the first determination unit stores the electronic file on the server determined to hold the electronic file. A hash value requesting unit for requesting the hash value of the electronic file, and a hash value receiving unit for receiving the hash value of the electronic file related to the request from the server to which the hash value requesting unit has transmitted the request. Each of the servers includes a file storage unit that stores an electronic file, a hash value request reception unit that receives a request for a hash value of a specific electronic file from the hash value request unit, and the hash value request reception unit. The specific electronic file included in the received request is acquired from the file storage means, and a hash value calculation means for calculating a hash value of the specific electronic file, and a hash value calculated by the hash value calculation means Hash value transmitting means for transmitting to the hash value receiving unit.
このように、各サーバは保持している電子ファイルのハッシュ値を計算し、計算したハッシュ値を分散ファイル管理装置に送信する。これにより、分散ファイル管理装置は、現にサーバが保持している電子ファイルのハッシュ値を取得することができ、サーバが保持している電子ファイルに改竄がなされていないことを検証することが可能となる。 In this way, each server calculates the hash value of the held electronic file, and transmits the calculated hash value to the distributed file management device. As a result, the distributed file management apparatus can acquire the hash value of the electronic file currently held by the server, and can verify that the electronic file held by the server has not been tampered with. Become.
さらに好ましくは、前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、前記分散ファイル管理装置は、さらに、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える。 More preferably, the inquiry receiving unit further holds an electronic file related to the write request from an access source server that is a server that has received a request to write the electronic file in a file storage unit included in the access source server. In response to an inquiry as to which server is the server, the holding server determination unit further refers to the file holding information when the inquiry receiving unit receives an inquiry based on the write request. The server that holds an electronic file that includes an identifier identical to the identifier of the electronic file related to the write request is determined, and the distributed file management device further determines that there is no server that holds the electronic file by the holding server determination unit. File storage means provided for each server to store an electronic file when A copy destination determining unit that determines a server having the largest value indicating the free state, and determines a server having the largest value indicating the free state as a server that holds a copy of the electronic file related to the write request; A copy destination transmission unit that transmits to the access source server a transmission of the electronic file related to the write request to the server determined to hold the copy by the determination unit.
また、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。 Further, the copy destination determination unit, when it is determined by the holding server determination means that there is no server that holds the electronic file, the free space for the entire capacity of the file storage means provided for storing the electronic file in each server. The server having the largest capacity ratio is determined, and the server having the largest ratio is determined as a server that holds a copy of the electronic file related to the write request.
さらに、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。 Further, when the holding server determining unit determines that there is no server that holds the electronic file, the copy destination determining unit has the largest free space in the file storage unit provided for storing the electronic file in each server. A large server is determined, and a server having the largest free space is determined as a server that holds a copy of the electronic file related to the write request.
このように、書込要求に係る電子ファイルがいずれのサーバも保持していなかった新しい電子ファイルの場合に、その電子ファイルをアクセス元サーバ以外のサーバにも保持させる。そのため、いずれか1つのサーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。 As described above, when the electronic file related to the write request is a new electronic file that is not held by any server, the electronic file is also held by a server other than the access source server. Therefore, even when the operation of any one of the servers is stopped, the electronic file held by the server can be transmitted to the terminal used by the user.
また、新しい電子ファイルを保持するアクセス元サーバ以外のサーバは、電子ファイルを記憶する部位の空き容量の状態に応じて決定されるため、各サーバの記憶資源を均等に利用でき、サーバにかかる負荷を分散させることが可能となる。 In addition, since the servers other than the access source server that holds the new electronic file are determined according to the state of the free capacity of the part that stores the electronic file, the storage resources of each server can be used equally, and the load on the server Can be dispersed.
さらに好ましくは、前記各サーバは、前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。 More preferably, each server receives a file transmission request receiving unit including an identifier of an electronic file transmitted by the file transmission requesting unit, and an electronic file including an identifier included in the file transmission request. File storage control means for reading from the file storage means, and file transmission means for acquiring the electronic file read by the file storage control means and transmitting the acquired electronic file to the access source server.
また、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。 Each of the servers further includes a file receiving unit that receives an electronic file transmitted from the file transmitting unit of another server, and the file storage control unit further includes the electronic file received by the file receiving unit. Is written in the file storage means.
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、1つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 As described above, when the access source server does not hold the electronic file according to the user's request, the access source server acquires the electronic file from the holding server and holds it. Thereby, when the request | requirement which acquires the same electronic file from any one of terminals is received again, the electronic file which self hold | maintains can be transmitted. Therefore, the access source server does not need to acquire again from the holding server for the electronic file acquired via one access source server, and the amount of information transferred on the network can be suppressed. It is possible to reduce the load on the server.
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。 More preferably, each of the servers further notifies the distributed file management device of the difference between the file storage means before and after the writing when the file storage control means writes an electronic file in the file storage means. And the distributed file management device updates the file holding information based on the difference included in the notification received by the update notification receiving unit and the notification received by the update notification receiving unit. Means.
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 In addition, the update notifying unit receives the request for the terminal to acquire an electronic file including a user-specified identifier, and the access source server accepts the electronic file related to the request in the file storage unit included in the access source server. Is written to the distributed file management device as the difference, and the update notification accepting unit receives the notification from the update notifying unit, and updates the retained information. In response to the notification received by the update notification receiving means, the file holding information is added by adding information in which the information indicating the access source server is associated with the identifier of the electronic file included in the difference. Update.
さらに、前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する。 Furthermore, the update notification means receives the request for writing the electronic file in the file storage means provided in the access source server, and the access source server accepts the electronic file related to the request in the file storage means provided in the access source server. Is written to the distributed file management device as the difference, and the update notification receiving means receives the notification from the update notification means. The holding information update unit receives information indicating the access source server, an identifier of the electronic file included in the difference, in response to the notification including the hash value included in the difference, received by the update notification receiving unit, By adding the hash value of the electronic file included in the difference, the file holding information Update.
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。 Thus, the file holding information held by the distributed file management apparatus is updated. As a result, the latest state of the electronic file held by each server can be automatically stored in the file holding information.
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、複数の第1のサーバと、ユーザが利用する端末とにより構成され、前記各第1のサーバは、ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する前記第1のサーバ群の1つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバ手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶し、前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、前記ファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置手段と、前記第1のサーバ群と通信することにより、前記第1のサーバ群のいずれが前記管理装置であるかを判定する第1の管理装置判定手段とを備える。 To achieve the above object, a distributed file management system according to the present invention is a distributed file management system for managing electronic files held by a plurality of servers, and the distributed file management system is connected by a communication line. The first server includes a plurality of first servers and a terminal used by the user. Each of the first servers receives a user request related to acquisition or writing of an electronic file from the terminal used by the user, and In response to a user request, which one of the first server groups that manages the electronic files held by the server group is a server that holds the electronic files related to the user requests The file server means for inquiring the file and the file holding information, which is information indicating which server holds the electronic file, In response to an inquiry from an access source server that is a server that has received a user request, by referring to the file holding information and determining a holding server that is a server that holds an electronic file according to the user request, Management device means for managing electronic files held by the server group and first management for determining which of the first server group is the management device by communicating with the first server group Device determining means.
また、前記分散ファイル管理システムは、通信回線により接続された、前記複数の第1のサーバと、少なくとも1つの第2のサーバと、ユーザが利用する端末とにより構成され、前記第2のサーバは、前記ファイルサーバ手段と、前記第1のサーバ群と通信することにより、前記第1のサーバ群のいずれが前記管理装置であるかを判定する第2の管理装置判定手段とを備える。 The distributed file management system includes the plurality of first servers, at least one second server, and a terminal used by a user, which are connected by a communication line, and the second server includes: The file server means and second management device determination means for determining which of the first server groups is the management device by communicating with the first server group.
このように、分散ファイル管理システムは、複数のサーバに分散して保持されている電子ファイルを管理するための機能を備えるサーバを複数備える。そのため、障害が発生するなどのために、分散ファイル管理装置として機能しているサーバの稼動が停止しても、他のサーバが分散ファイル管理装置として稼動できるため、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。 As described above, the distributed file management system includes a plurality of servers having a function for managing electronic files distributed and held in a plurality of servers. Therefore, even if a server that functions as a distributed file management device stops operating due to a failure, other servers can continue to operate as the distributed file management device, so the distributed file management system continues to operate. It is possible to improve the stability of the distributed file management system.
さらに好ましくは、前記第1の管理装置判定手段は、現在の前記管理装置が前記第1のサーバ群のいずれであるかを示す情報を保持している第1の管理装置保持部と、前記第1のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第1のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第1の管理装置通知受付部と、前記第1の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第1のサーバ群の中で最も順位の高い第1のサーバを示す情報を前記第1の管理装置保持部に保持させる管理装置決定部とを有する。 More preferably, the first management device determination unit includes a first management device holding unit that holds information indicating which of the first server groups is the current management device; A rank storage unit that stores rank information, which is information that defines the order in which one server group functions as the management apparatus, and a management apparatus that notifies the first server that the management apparatus is the management apparatus A notification unit, a first management device notification reception unit that receives a notification from the management device notification unit, and a first management device notification reception unit that receive the notification and then determine in advance without receiving a next notification. A change determination unit that determines that a change of the management device is necessary when a predetermined time has elapsed, and refers to the ranking information when the change determination unit determines that a change of the management device is required Is up and running And a management device determining unit for holding the information indicating the first server highest rank of in the first server group in the first management device holding portion.
また、前記第1の管理装置判定手段は、現在の前記管理装置が前記第1のサーバ群のいずれであるかを示す情報を保持している第1の管理装置保持部と、前記第1のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第1のサーバおよび前記第2のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第1の管理装置通知受付部と、前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第1のサーバ群の中で最も順位の高い第1のサーバを示す情報を前記第1の管理装置保持部に保持させる管理装置決定部とを有し、前記第2の管理装置判定手段は、現在の前記管理装置が前記第1のサーバ群のいずれであるかを示す情報を保持している第2の管理装置保持部と、前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第2の管理装置保持部に保持させる第2の管理装置通知受付部とを有する。 The first management device determination unit includes a first management device holding unit that holds information indicating which of the first server groups the current management device is, and the first management device A rank storage unit that stores rank information, which is information that defines the order in which a server group functions as the management apparatus, and the management apparatus is the management apparatus in each of the first server and the second server. The management device notification unit to be notified, the first management device notification reception unit that receives the notification from the management device notification unit, and the management device notification reception unit receive the notification before receiving the next notification in advance. A change determination unit that determines that a change of the management device is necessary when a predetermined time has elapsed, and the rank information is referred to when the change determination unit determines that a change of the management device is required By running A management device determination unit that causes the first management device holding unit to hold information indicating the first server having the highest rank in the first server group. The second management device determination unit Has received the notification from the second management device holding unit holding information indicating which of the first server group the current management device is, and the management device notification unit, and received the received A second management device notification receiving unit that causes the second management device holding unit to hold information indicating a notification transmission source.
さらに、前記変更判断部は、さらに、前記第1の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第1の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する。 Further, the change determination unit further includes the current management device indicated by the information held by the first management device holding unit, and the transmission source of the notification received by the first management device notification reception unit. Is not matched, it is determined that the management device needs to be changed.
さらに、前記管理装置手段は、前記ファイル保持情報を記憶する保持サーバ記憶部と、ユーザ指定の識別子含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付ける問合受付部と、前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備える。 Furthermore, the management device means includes the identifier from the holding server storage unit that stores the file holding information, and the access source server that has received an acquisition request that is a request for the terminal to acquire an electronic file including a user-specified identifier. An inquiry reception unit that receives an inquiry as to which server holds an electronic file containing the file, and when the inquiry reception unit receives an inquiry based on the acquisition request, by referring to the file holding information , A holding server determination unit that determines which of the holding servers is, and a server that is determined to be the holding server by the holding server determination unit, and transmits an electronic file according to the user request to the access source server A file transmission requesting unit that requests to do so.
このように、分散ファイル管理装置の機能を備えた第1のサーバと、他のサーバとが通信をし、通信が途絶えたこと、または、通信が復活したことを検知して、予め定めた順位に従って、稼働中の第1のサーバの中で最も順位が高いサーバを分散ファイル管理装置とする。これにより、分散ファイル管理装置として機能するサーバが自動的に切り替えることが可能となり、分散ファイル管理システムの安定性を向上させることが可能となる。 In this way, the first server having the function of the distributed file management apparatus communicates with another server, and it is detected that communication has been lost or communication has been restored, and a predetermined order is determined. Accordingly, the server having the highest rank among the first operating servers is set as the distributed file management apparatus. As a result, the server functioning as the distributed file management apparatus can be automatically switched, and the stability of the distributed file management system can be improved.
さらに好ましくは、前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、前記管理装置手段は、さらに、前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する。 More preferably, the inquiry reception unit further holds an electronic file including the identifier from the access source server that has received a write request that is a request for holding the electronic file including a user-specified identifier in the server. The holding server determination unit refers to the file holding information when the inquiry receiving unit receives an inquiry based on the write request, so that the holding server The management device means further includes a holding response transmission unit that transmits information indicating the server determined to be the holding server by the holding server determination unit to the access source server. .
また、前記ファイルサーバ手段は、電子ファイルを記憶するファイル記憶部と、前記ファイル送信要求部が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信部と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶部から読み出すファイル記憶制御部と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信部とを備える。 The file server means includes a file storage unit for storing an electronic file, a file transmission request receiving unit for receiving a file transmission request including an identifier of the electronic file transmitted by the file transmission request unit, and the file transmission request. A file storage control unit that reads an electronic file including an included identifier from the file storage unit, and a file transmission unit that acquires the electronic file read by the file storage control unit and transmits the acquired electronic file to the access source server With.
さらに、前記ファイルサーバ手段は、さらに、他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む。 Furthermore, the file server means further includes a file receiving unit that receives an electronic file transmitted from the file transmitting unit of another server, and the file storage control unit further includes an electronic file received by the file receiving unit. Write a file to the file storage.
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、1つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 As described above, when the access source server does not hold the electronic file according to the user's request, the access source server acquires the electronic file from the holding server and holds it. Thereby, when the request | requirement which acquires the same electronic file from any one of terminals is received again, the electronic file which self hold | maintains can be transmitted. Therefore, the access source server does not need to acquire again from the holding server for the electronic file acquired via one access source server, and the amount of information transferred on the network can be suppressed. It is possible to reduce the load on the server.
さらに好ましくは、前記ファイルサーバ手段は、さらに、前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第1のサーバ群に通知する更新通知部を備え、前記管理装置手段は、前記更新通知部による通知を受け付ける更新通知受付部と前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える。 More preferably, when the file storage control unit writes an electronic file in the file storage unit, the file server means notifies the first server group of a difference of the file storage unit before and after the writing. An update notification unit, wherein the management device means updates the file holding information based on the difference included in the notification received by the update notification reception unit and the update notification reception unit that receives the notification from the update notification unit. And an update unit.
また、前記管理装置手段は、さらに、前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付部は前記更新通知手段による通知を受け、前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。 Further, the management device means further includes a file storage provided in the access source server when the update source unit receives a request for the terminal to acquire an electronic file including a user-specified identifier. When the electronic file related to the request is written to the means, the identifier of the electronic file related to the acquisition request is notified to the distributed file management apparatus as the difference, and the update notification receiving unit is provided by the update notification means. In response to the notification, the holding information update unit adds information indicating the information indicating the access source server and the identifier of the electronic file included in the difference in response to the notification received by the update notification receiving unit. By doing so, the file holding information is updated.
さらに、前記管理装置手段は、さらに、前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する。 Further, the management device means further includes a file storage provided in the access source server when the update notification unit receives a request for writing an electronic file in a file storage means provided in the access source server. When the electronic file related to the request is written in the means, the identifier of the electronic file related to the write request is notified to the distributed file management device as the difference, and the update notification receiving means is the update notification means. In response to the notification, the holding information update unit receives the information indicating the access source server and the electronic file included in the difference in response to the notification including the hash value in the difference received by the update notification receiving unit. The file holding information is updated by adding the identifier.
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。 Thus, the file holding information held by the distributed file management apparatus is updated. As a result, the latest state of the electronic file held by each server can be automatically stored in the file holding information.
なお、本発明は、このような特徴的な手段を備える分散ファイル管理システムとして実現することができるだけでなく、分散ファイル管理システムを構成する装置に含まれる特徴的な手段をステップとする分散ファイル管理方法として実現したり、分散ファイル管理システムを構成する装置に含まれる特徴的な手段としてコンピュータを機能させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM(Compact Disc−Read Only Memory)等の記録媒体やインターネット等の通信ネットワークを介して流通させることができる。 The present invention can be realized not only as a distributed file management system including such characteristic means, but also as a distributed file management including steps as characteristic means included in an apparatus constituting the distributed file management system. It can also be realized as a method, or as a program that causes a computer to function as characteristic means included in an apparatus constituting a distributed file management system. Such a program can be distributed via a recording medium such as a CD-ROM (Compact Disc-Read Only Memory) or a communication network such as the Internet.
ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも1台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。 A user can access any of a plurality of servers connected via a network from a terminal used by the user as long as at least one of the plurality of servers holds an electronic file desired by the user. It is possible to obtain the latest electronic file according to the request from the terminal. Therefore, the user does not need to be aware of whether or not the electronic file is the latest and the server that is accessed from the terminal, and the convenience of the user related to the acquisition of the electronic file distributed and held in a plurality of servers on the network. It becomes possible to improve the property.
さらに、特に、1つのサーバを介して頻繁に取得される電子ファイルについては、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 Furthermore, especially for electronic files that are frequently acquired via one server, the amount of information transferred over the network can be reduced, and the load on each server can be reduced. .
ここで頻繁に取得される電子ファイルとは、同一または異なるユーザにより2回以上の取得要求の対象とされた電子ファイルであり、または、一定の期間内に同一または異なるユーザにより2回以上の取得要求の対象とされた電子ファイルである。 Here, an electronic file frequently acquired is an electronic file that has been subject to an acquisition request two or more times by the same or different users, or two or more acquisitions by the same or different users within a certain period of time. The electronic file that was the subject of the request.
さらに、ユーザに最新の電子ファイルを提供するための電子ファイルの管理につき、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。 Furthermore, regarding the management of the electronic file for providing the latest electronic file to the user, the amount of information transferred over the network can be suppressed, and the load on each server can be reduced.
さらに、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。 Furthermore, it is possible to suppress consumption of storage resources for each server to hold an electronic file.
さらに、電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。また、サーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。 Furthermore, it is possible to detect falsification of the electronic file and transmit only the genuine electronic file to the user, thereby improving the reliability of the distributed file management system. Further, even when the operation of the server is stopped, the electronic file held by the server can be transmitted to the terminal used by the user.
さらに、分散ファイル管理装置の稼動が停止した場合であっても、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。 Furthermore, even when the operation of the distributed file management apparatus is stopped, the operation of the distributed file management system can be continued, and the stability of the distributed file management system can be improved.
以下に、図面を参照しながら、本発明に係る分散ファイル管理システムの実施の形態1から実施の形態4までについて説明する。 The first to fourth embodiments of the distributed file management system according to the present invention will be described below with reference to the drawings.
(実施の形態1)
図1から図19までを参照して、本発明に係る実施の形態1について説明する。
(Embodiment 1)
A first embodiment according to the present invention will be described with reference to FIGS.
図1は、実施の形態1に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態1に係る分散ファイル管理システムは、ユーザが利用する端末と通信回線を介して接続され、電子ファイルを記憶しているファイル記憶部を備える複数のサーバのいずれかが、端末から送信される電子ファイルに関連するユーザの要求を受け付け、受け付けたユーザの要求に関連する処理を分散ファイル管理装置または他のサーバと連携して実行し、実行した処理の結果をユーザが利用する端末に送信するシステムの一例である。 FIG. 1 is a diagram showing an outline of the configuration of the distributed file management system according to the first embodiment. In the distributed file management system according to the first embodiment, any of a plurality of servers connected to a terminal used by a user via a communication line and including a file storage unit storing an electronic file is transmitted from the terminal. Receives user requests related to the received electronic file, executes processing related to the received user request in cooperation with the distributed file management device or other servers, and sends the results of the executed processing to the terminal used by the user It is an example of the system which performs.
本実施の形態に係る分散ファイル管理システムは、分散ファイル管理装置10と、サーバA20、サーバB30およびサーバC40と、端末a60および端末b65とから構成される。
The distributed file management system according to the present embodiment includes a distributed
分散ファイル管理装置10は、管理対象である複数のサーバが保持する電子ファイルに関する情報を管理する装置であり、電子ファイルに関連するユーザの要求を受け付けたサーバ(以下、「アクセス元サーバ」という。)からの問合せに応じて、ユーザの要求に係る電子ファイルを保持しているサーバ(以下、「保持サーバ」という。)を示す情報を、アクセス元サーバに送信する装置の一例である。
The distributed
本実施の形態に係る分散ファイル管理装置10は、サーバA20とサーバB30とサーバC40とを管理対象とし、サーバA20において記憶保持されている電子ファイルに関する情報と、サーバB30において記憶保持されている電子ファイルに関する情報と、サーバC40において記憶保持されている電子ファイルに関する情報とを管理する。
The distributed
通信回線15は、分散ファイル管理装置10と、各サーバ20、30および40とを接続する通信回線であり、例えば、LAN(Local Area Network)やWAN(Wide Area Network)である。
The
サーバA20は、電子ファイルを記憶しているファイル記憶部25を備え、ユーザが利用する各端末60、65や他のサーバ30、40から電子ファイルに関連する要求を受ける装置である。サーバA20は、要求を受け付けると必要に応じて分散ファイル管理装置10と連携して、受け付けた要求を処理し、処理した結果を要求の送信元に送信する。
The server A20 is a device that includes a
また、サーバB30、およびサーバC40も、同様の機能を備え、それぞれ、ファイル記憶部35、およびファイル記憶部45を備える。
The server B30 and the server C40 also have the same function, and include a
ここで、実施の形態1に係る各ファイル記憶部25、35、45が記憶している電子ファイルに係るファイル構造の例について図2を参照して説明し、また、各ファイル記憶部25、35、45が記憶している電子ファイルの具体例について、図3A〜図3Cを参照して説明する。
Here, an example of the file structure related to the electronic file stored in each
図2は、本実施の形態に係る各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成の例を示す図である。分散ファイル管理装置10の管理に係る電子ファイルが各サーバに保持される場合、各サーバは、予め定められた共通のフォルダ構成に従って保持する。
FIG. 2 is a diagram illustrating an example of a folder configuration common to electronic files stored in a file storage unit included in each server according to the present embodiment. When an electronic file related to the management of the distributed
ユーザは、端末60または65を利用して、本図に示すような予め定められた共通のフォルダ構成を示すパスにより電子ファイルを特定し、特定した電子ファイルに関連する要求を各サーバ20、30、40のいずれか、例えば、各端末60、65に予め設定されているサーバに送信する。
The user uses the terminal 60 or 65 to specify an electronic file by a path indicating a predetermined common folder structure as shown in the figure, and sends a request related to the specified electronic file to each
ここで、「電子ファイルに関連する要求」には、電子ファイルを取得する要求である「取得要求」と、電子ファイルを書き込む要求である「書込要求」とがある。「書込要求」には、既存の電子ファイルを更新する要求である「更新要求」と、新たな電子ファイルを格納する要求である「格納要求」とを含む。 Here, the “request related to the electronic file” includes an “acquisition request” that is a request to acquire the electronic file and a “write request” that is a request to write the electronic file. The “write request” includes an “update request” that is a request to update an existing electronic file and a “storage request” that is a request to store a new electronic file.
本図に示す各電子ファイルは、フォルダ名「/data」に関連するフォルダを頂点とする相対パスまたはファイル名により特定される。 Each electronic file shown in the figure is specified by a relative path or file name having a folder related to the folder name “/ data” as a vertex.
フォルダ名が「/data」であるフォルダは、その直下に、ファイル名が「a」である電子ファイルと、ファイル名が「b」である電子ファイルと、ファイル名が「d」である電子ファイルと、フォルダ名が「c」であるフォルダとを有する。フォルダ名が「c」であるフォルダは、直下に、ファイル名が「e」である電子ファイルと、ファイル名が「f」である電子ファイルとを有する。 A folder whose folder name is “/ data” is immediately below the electronic file whose file name is “a”, the electronic file whose file name is “b”, and the electronic file whose file name is “d”. And a folder whose folder name is “c”. The folder whose folder name is “c” has an electronic file whose file name is “e” and an electronic file whose file name is “f” immediately below.
ここで、「電子ファイル」には、電子ファイルの実体となる情報の他、ファイル名やファイルの更新日時等のファイルの属性情報を含む。以下単に「ファイルx」という場合、ファイル名が「x」である電子ファイルをさす。また、単に「フォルダx」という場合、フォルダ名が「x」であるフォルダをさす。 Here, the “electronic file” includes file attribute information such as a file name and a file update date, in addition to information as the entity of the electronic file. Hereinafter, when simply referred to as “file x”, it indicates an electronic file whose file name is “x”. In addition, simply “folder x” indicates a folder whose folder name is “x”.
また、「ファイルx_2」や「ファイルx_3」という場合、ファイル名が「x」である電子ファイルをさす。すなわち、「ファイルx」と、「ファイルx_2」と、「ファイルx_3」とは、ファイル名が「x」である電子ファイルとして特定されるが、その実体およびファイル名以外のファイルの属性情報が異なる関係とする。 In addition, “file x_2” and “file x_3” indicate an electronic file whose file name is “x”. That is, “file x”, “file x — 2”, and “file x — 3” are specified as electronic files with the file name “x”, but the entity and file attribute information other than the file name are different. It is related.
ここで説明した「電子ファイルに関する要求」に関連する用語、電子ファイルの表記方法は、全ての実施の形態において共通して用いる。 The terminology related to the “request regarding the electronic file” and the notation method of the electronic file described here are commonly used in all the embodiments.
図3A〜図3Cは、実施の形態1に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。 3A to 3C are diagrams illustrating specific examples of electronic files stored in a file storage unit included in each server according to the first embodiment.
図3Aは、実施の形態1に係るサーバA20が備えるファイル記憶部25が記憶している電子ファイル情報25aの例を示す図である。本図は、本実施の形態に係るファイル記憶部25が「ファイルa」と、「ファイルb」とを記憶している例を示す。
FIG. 3A is a diagram illustrating an example of the
図3Bは、実施の形態1に係るサーバB30が備えるファイル記憶部35が記憶している電子ファイル情報35aの例を示す図である。本図は、本実施の形態に係るファイル記憶部35が「ファイルa_2」と、「ファイルd」と、「ファイルe」とを記憶している例を示す。
FIG. 3B is a diagram illustrating an example of the
図3Cは、実施の形態1に係るサーバC40が備えるファイル記憶部45が記憶している電子ファイル情報45aの例を示す図である。本図は、本実施の形態に係るファイル記憶部45が「ファイルd」を記憶している例を示す。
FIG. 3C is a diagram illustrating an example of the
ここで、図1の説明に戻る。 Here, the description returns to FIG.
通信回線50は、各サーバ20、30、40と、各端末60、65を接続する通信回線であり、例えば、LANやWAN等である。
The
端末a60は、ユーザが利用する端末である。端末a60は、電子ファイルに関連するユーザの要求を受け付けると、その要求を各サーバ20、30、40のいずれかに送信する。また、端末a60は、要求を送信したサーバから結果を取得すると、取得した結果をモニタに表示する等により、取得した結果をユーザに提供する。端末b65も同様の機能を備える。
The terminal a60 is a terminal used by the user. When the terminal a60 receives a user request related to the electronic file, the terminal a60 transmits the request to any of the
以上のように、予め定められたファイル構成により示される各ファイルが複数のサーバに分散保持されており、ユーザが所望の電子ファイルを保持していないサーバにアクセスした場合であっても、分散ファイル管理装置10は、その電子ファイルに係るユーザの要求の処理を可能とする。
As described above, each file indicated by a predetermined file configuration is distributed and held in a plurality of servers, and even if the user accesses a server that does not hold a desired electronic file, the distributed file The
このような処理を可能とするために各装置が備える機能的構成について、図4から図7までを参照して説明する。 A functional configuration included in each apparatus to enable such processing will be described with reference to FIGS.
図4は、実施の形態1に係るサーバA20が備える機能的構成の例を示すブロック図である。サーバA20は、ユーザからの要求を受け付ける。ユーザの要求が取得要求である場合、サーバA20は、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置10の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。サーバB30およびサーバC40も、サーバAと同様の機能的構成を備える。
FIG. 4 is a block diagram illustrating an example of a functional configuration included in the server A20 according to the first embodiment. The server A20 receives a request from the user. When the user request is an acquisition request, the
サーバA20は、ファイル記憶部25と、ユーザ要求受信部71と、要求種別判断部73と、要求情報保持部75と、ファイル記憶制御部77と、保持サーバ問合部79と、保持応答受信部81と、ファイル送信要求受信部83と、ファイル送信部85と、ファイル受信部87と、ロック要求送信部89と、更新通知部91と、完了通知受信部93と、ユーザ要求応答部95とを備える。
The
ファイル記憶部25は、図3を参照して説明したため、ここでの説明は省略する。
Since the
ユーザ要求受信部71は、通信回線50を介してユーザが利用する端末60、65から電子ファイルに関連する要求を受け付ける部位である。
The user
要求種別判断部73は、ユーザ要求受信部71が受信した電子ファイルに関連する要求の種別を判断する部位である。実施の形態1において、電子ファイルに関連する要求には上記のように「取得要求」と「書込要求」とがあり、さらに、「書込要求」には「更新要求」と「格納要求」とがある。要求種別判断部73は、ユーザ要求受信部71が受信した電子ファイルに関連する要求がこれらのいずれであるかを判断する。
The request
要求情報保持部75は、ユーザ要求受信部71が受信した要求に含まれる情報を一時的に記憶保持する部位である。要求情報保持部75は、例えば、RAM(Random Access Memory)により実現される。
The request
ファイル記憶制御部77は、ファイル記憶部25を制御する部位である。ファイル記憶制御部77は、ファイル記憶部25が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部25が記憶している電子ファイルを読み出し、ファイル記憶部25が記憶している電子ファイルを更新し、また、ファイル記憶部25に新たな電子ファイルを格納する。
The file
保持サーバ問合部79は、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線50を介して分散ファイル管理装置10に問い合わせる部位である。
The holding
保持応答受信部81は、保持サーバ問合部79の問合わせを受けた分散ファイル管理装置10の応答を、通信回線15を介して受信する部位である。保持応答受信部81は、自身がアクセス元サーバである場合にユーザの要求に係る電子ファイルを、自身のファイル記憶部25が記憶していること、または、記憶しているファイル記憶部25、35、45が存在しないことを内容とする応答を受信する。
The holding
ファイル送信要求受信部83は、自身を備えるサーバがアクセス元サーバではなく、かつ、自身を備えるサーバがユーザの要求に関連する電子ファイルを保持している場合に、その電子ファイルをアクセス元サーバに送信する要求を、分散ファイル管理装置10から受信する部位である。
The file transmission
ファイル送信部85は、ファイル送信要求受信部83が受信した要求を受け、その要求に係る電子ファイルをファイル記憶制御部77から取得し、取得した電子ファイルをアクセス元サーバに送信する部位である。
The
ファイル受信部87は、他のサーバのファイル送信部85から送信された電子ファイルを受信する部位である。
The
ロック要求送信部89は、要求種別判断部73によりユーザ要求受信部71が受信したユーザの要求の種別が書込要求であると判断された場合に、その書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求を、分散ファイル管理装置10に送信する部位である。
When the request
更新通知部91は、ファイル記憶制御部77が電子ファイルを格納または更新した場合に、格納または更新された内容を分散ファイル管理装置10に通知する部位である。
The
完了通知受信部93は、分散ファイル管理装置10から、処理の完了を内容とする通知を受信する部位である。
The completion
ユーザ要求応答部95は、ユーザ要求受信部71が受信したユーザの要求に対する応答を、通信回線50を介してユーザが利用する端末60、65に送信する部位である。ここでの応答は、ユーザの要求が取得要求の場合はその取得要求に係る電子ファイルであり、ユーザの要求が書込要求の場合はその書込要求の完了の通知である。
The user
図5は、実施の形態1に係る分散ファイル管理装置10が備える機能的構成の例を示すブロック図である。
FIG. 5 is a block diagram illustrating an example of a functional configuration included in the distributed
分散ファイル管理装置10は、保持サーバ記憶部100と、問合受付部102と、保持サーバ判断部104と、保持応答送信部106と、ファイル送信要求部108と、更新通知受付部110と、保持情報更新部112と、更新完了通知部114と、ロック要求受信部116と、ロック情報保持部118とを備える。
The distributed
保持サーバ記憶部100は、分散ファイル管理装置10の管理対象として設定されているサーバを特定するための情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルを含む情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部100は、例えば、HD(Hard Disk)により実現される。
The holding
ここで、本実施の形態に係る管理サーバ情報と、ファイル保持情報との具体例を図6と、図7とを参照して、説明する。 Here, specific examples of the management server information and the file holding information according to the present embodiment will be described with reference to FIG. 6 and FIG.
図6は、保持サーバ記憶部100が記憶している管理サーバ情報100aの例を示す図である。本図が示すように、本実施の形態に係る管理サーバ情報100aは、「サーバ名」と、「IPアドレス」とから構成される。
FIG. 6 is a diagram illustrating an example of the
「サーバ名」は、分散ファイル管理装置10の管理対象であるサーバに付されている名称を内容とする。「IPアドレス」は、各サーバに付与されているIPアドレスを内容とする。そして、管理サーバ情報100aは、分散ファイル管理装置10の管理対象である各サーバについて、サーバ名とIPアドレスとを対応付けて保持する。
The “server name” includes the name given to the server that is the management target of the distributed
本図は、例えば、「サーバ名」が「サーバA」により示されるサーバA20について、「IPアドレス」が「192.168.xxx.1」であることを示す。 This figure shows, for example, that the “IP address” is “192.168..xxx.1” for the server A20 whose “server name” is indicated by “server A”.
図7は、保持サーバ記憶部100が記憶しているファイル保持情報100bの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報100bは、「ファイルパス」と、「サーバ名」と、「フラグ」とから構成される。
FIG. 7 is a diagram illustrating an example of the
「ファイルパス」は、各サーバが保持している電子ファイルのパスを内容とする。電子ファイルのパスは、図2を参照して説明したように、分散ファイル管理装置10による管理される全てのサーバにおいて共通である。
The “file path” contains the path of the electronic file held by each server. As described with reference to FIG. 2, the path of the electronic file is common to all servers managed by the distributed
「サーバ名」は、管理サーバ情報100aの「サーバ名」と同様のサーバの名称を内容とする。ファイル保持情報100bの「サーバ名」は、「ファイルパス」に示される電子ファイルに対応付けられている。ファイル保持情報100bの「サーバ名」には、対応する「ファイルパス」により示される電子ファイルを保持している全てのサーバの名称が格納される。
The “server name” has the same server name as the “server name” in the
本図は、例えば、「ファイルパス」が「/data/a」により示される電子ファイル、すなわち、「ファイルa」または「ファイルa_2」を保持するサーバが、サーバA20とサーバB30とであることを示す。 This figure shows, for example, that the servers holding the electronic file whose “file path” is indicated by “/ data / a”, that is, “file a” or “file a_2” are the server A20 and the server B30. Show.
「フラグ」は、各サーバが保持する電子ファイルが最新の内容であるか否かを示すフラグを内容とする。本実施の形態では、各サーバが保持する電子ファイルが最新の内容である場合に「1」が、最新の内容ではない場合に「0」が格納される。 The “flag” includes a flag indicating whether or not the electronic file held by each server has the latest content. In the present embodiment, “1” is stored when the electronic file held by each server has the latest content, and “0” is stored when the electronic file is not the latest content.
本図は、例えば、「ファイルパス」が「/data/a」により示される電子ファイルについて、「サーバA」が保持する電子ファイルの「フラグ」は「0」であり、「サーバB」が保持する電子ファイルの「フラグ」は「1」であることを示す。 In this figure, for example, for an electronic file whose “file path” is indicated by “/ data / a”, the “flag” of the electronic file held by “server A” is “0” and held by “server B”. The “flag” of the electronic file to be displayed is “1”.
すなわち、「サーバA」が保持する電子ファイルは、図3Aに示すように「/data/a」である。また、「サーバB」が保持する電子ファイルは、図3Bに示すように「/data/a_2」である。このように「フラグ」は、「/data/a」により特定される電子ファイルにつき「サーバB」が「サーバA」より新しい内容を含むことを示している。 That is, the electronic file held by “server A” is “/ data / a” as shown in FIG. 3A. Further, the electronic file held by “server B” is “/ data / a_2” as shown in FIG. 3B. Thus, the “flag” indicates that “server B” includes newer content than “server A” for the electronic file specified by “/ data / a”.
ここから、図5の説明に戻る。 From here, it returns to description of FIG.
問合受付部102は、サーバからのユーザの要求に係る電子ファイルを保持するサーバに関する問い合わせを受け付ける部位である。
The
保持サーバ判断部104は、保持サーバ記憶部100を参照することにより、問合受付部102が受け付けた問い合わせに係る最新の電子ファイルを保持するサーバを判断する部位である。
The holding
保持応答送信部106は、アクセス元サーバが、ユーザの要求に係る最新の電子ファイルを保持しているか否かを応答する部位である。
The holding
ファイル送信要求部108は、保持サーバ判断部104の判断に従って、保持サーバからアクセス元サーバへのユーザの要求に関連する電子ファイルの送信を要求する部位である。
The file
更新通知受付部110は、サーバが備えるファイル記憶部に新たな電子ファイルが格納され、または、ファイル記憶部が記憶している電子ファイルが更新されたことを内容とする通知を、サーバから受け付ける部位である。
The update
保持情報更新部112は、更新通知受付部110が受け付けた通知の内容に従って、保持サーバ記憶部100が記憶しているファイル保持情報100bを更新する部位である。
The holding
更新完了通知部114は、前記保持情報更新部112による保持サーバ記憶部100の更新が完了したことを内容とする通知を、サーバ20に送信する部位である。
The update
ロック要求受信部116は、サーバ20から送信されるロックの要求を受信する部位である。
The lock
ロック情報保持部118は、ロック要求受信部116が受信したロック要求に関連する電子ファイルを示す情報を、その電子ファイルに関連して保持情報更新部112が実行する処理が完了するまで、一時的に記憶保持する部位である。
The lock
以上のような機能を分散ファイル管理装置10および各サーバ20、30、40が備えることにより、ユーザは、自己の利用する端末60、65からいずれのサーバにアクセスするかにかかわらず、各サーバ20、30、40のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。また、ユーザの取得要求に係る電子ファイルについて、複数のサーバが内容の新旧が異なる電子ファイルを保持している場合には、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。
Since the distributed
ユーザが端末60、65を利用して取得要求または書込要求を送信した場合に、分散ファイル管理装置10および各サーバ20、30、40において実行される一連の処理について、図8および図9を参照して説明する。
FIG. 8 and FIG. 9 show a series of processes executed in the distributed
図8は、ユーザが端末60、65から取得要求を送信した場合に、本発明の実施の形態1に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 8 is a time chart illustrating an example of processing executed in each device constituting the distributed file management system according to the first embodiment of the present invention when the user transmits an acquisition request from the
本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末a60または端末b65のいずれかである。 The “terminal” shown in the figure is a terminal used by the user, and is either the terminal a60 or the terminal b65 in the present embodiment.
また、本図に示す「アクセス元サーバ」は、ユーザが利用する端末60(65)がユーザの要求を送信する送信先となるサーバである。本実施の形態におけるアクセス元サーバは、サーバA20、サーバB30またはサーバC40のいずれか1つである。 In addition, the “access source server” shown in the figure is a server that is a transmission destination to which the terminal 60 (65) used by the user transmits a user request. The access source server in the present embodiment is any one of the server A20, the server B30, and the server C40.
さらに、本図に示す「保持サーバ」は、アクセス元サーバを除く、ユーザの要求に係る電子ファイルを保持しているサーバである。本実施の形態における保持サーバは、サーバA20、サーバB30またはサーバC40のいずれかが候補となる。 Furthermore, the “holding server” shown in the figure is a server that holds an electronic file related to a user request, excluding the access source server. Any of the server A20, the server B30, and the server C40 is a candidate for the holding server in the present embodiment.
まず、アクセス元サーバ20(30、40)のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された取得要求を、通信回線50を介して受信する(S101)。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求である。
First, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
Subsequently, the request
続けて、保持サーバ問合部79が分散ファイル管理装置10に保持サーバを問合せると、問合受付部102は保持サーバの問合わせを受け付ける(S102)。
Subsequently, when the holding
続けて、保持サーバ判断部104は、保持サーバ記憶部100のファイル保持情報100bを参照することにより、アクセス元サーバが保持サーバであるか否かを判断する(S103)。
Subsequently, the holding
まず、アクセス元サーバが保持サーバであると判断した場合(S103でYes)、続けて、保持応答送信部106はアクセス元サーバが保持サーバであることを内容とする通知(以下、「保持通知」という。)を送信し、保持応答受信部81は保持通知を受信する(S104)。
First, when it is determined that the access source server is the holding server (Yes in S103), the holding
続けて、ファイル記憶制御部77は、自身のファイル記憶部25(35、45)から、取得要求に係る電子ファイルを読み出す(S105)。ここで、「自身の」とは、動作の主体となる部位を備えるサーバと同一のサーバが備える別の部位であることを示す。
Subsequently, the file
続けて、ユーザ要求応答部95は、電子ファイルをファイル記憶制御部77から取得し、ユーザが利用する端末60(65)に送信し(S106)、処理を終了する。
Subsequently, the user
また、アクセス元サーバが保持サーバでないと判断した場合(S103でNo)、続けて、保持サーバ判断部104は保持サーバがあるか否かを判断する(S107)。
When it is determined that the access source server is not a holding server (No in S103), the holding
まず、保持サーバがないと判断した場合(S107でNo)、続けて、保持応答送信部106は保持サーバがないことを内容とする通知(以下、「不保持通知」という。)を送信し、保持応答受信部81は不保持通知を受信する(S108)。
First, when it is determined that there is no holding server (No in S107), the holding
続けて、ユーザ要求応答部95は、不保持通知をファイル記憶制御部77を介して取得すると、取得要求を送信した端末60(65)に不保持通知を送信して(S109)、処理を終了する。
Subsequently, when the user
また、保持サーバがあると判断した場合(S107でYes)、続けて、ファイル送信要求部108は保持サーバにファイル送信要求を送信し、保持サーバのファイル送信要求受信部83はファイル送信要求を受信する(S110)。
If it is determined that there is a holding server (Yes in S107), then the file
ここで、「ファイル送信要求」とは、特定の電子ファイルを保持するサーバに、その電子ファイルを他のサーバへ送信する要求である。 Here, the “file transmission request” is a request for transmitting the electronic file to another server to the server holding the specific electronic file.
続けて、保持サーバのファイル記憶制御部77は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部25、35、45から読み出す(S111)。
Subsequently, the file
続けて、保持サーバのファイル送信部85は、ファイル記憶制御部77が読み出した電子ファイルをアクセス元サーバに送信し、アクセス元サーバのファイル受信部87はその電子ファイルを受信する(S112)。
Subsequently, the
続けて、アクセス元サーバのユーザ要求応答部95は、自身のファイル記憶制御部77を介して、ユーザの取得要求に関連する電子ファイルを取得し、その電子ファイルをユーザが利用する端末60(65)に送信する(S113)。
Subsequently, the user
続けて、アクセス元サーバのファイル記憶制御部77は、ファイル受信部87が受信した電子ファイルを自身のファイル記憶部25、35、45に格納する(S114)。
Subsequently, the file
続けて、更新通知部91は、分散ファイル管理装置10が備える保持サーバ記憶部100のファイル保持情報100bを更新することを内容とする通知(以下、「更新通知」という。)を送信し、分散ファイル管理装置10の更新通知受付部110は更新通知を受け付ける(S115)。
Subsequently, the
ここでの「更新通知」は、より具体的には、ファイル保持情報100bに、アクセス元サーバ20、30、40のファイル記憶部25、35、45に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。
More specifically, the “update notification” here indicates that a new electronic file is stored in the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部100のファイル保持情報100bを更新し(S116)、処理を終了する。
Subsequently, the holding
図9は、ユーザが端末60、65から書込要求を送信した場合に、本発明の実施の形態1に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 9 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to the first embodiment of the present invention when a user transmits a write request from the
本実施の形態では、書込要求が「更新要求」である場合と「格納要求」である場合とで、各装置が実行する処理および各装置間で送受信される情報は同様である。 In the present embodiment, the processing executed by each device and the information transmitted / received between the devices are the same when the write request is an “update request” and when it is a “storage request”.
本図に示す「端末」および「アクセス元サーバ」は、図8に示す「端末」および「アクセス元サーバ」と同様であるため、ここでの説明は省略する。 The “terminal” and the “access source server” shown in the figure are the same as the “terminal” and the “access source server” shown in FIG.
まず、アクセス元サーバ20(30、40)のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された書込要求を、通信回線50を介して受信する(S201)。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
First, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、書込要求に係る処理のタイムチャートであるため、この判断を省略している。
Subsequently, the request
続けて、要求種別判断部73は、要求情報保持部75に書込要求に係る電子ファイルを保持させる(S202)。
Subsequently, the request
続けて、まず、ロック要求送信部89は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、その書込要求に係る電子ファイルに関連する書込要求を排除する要求(以下、「ロック要求」という。)を分散ファイル管理装置10に送信し、ロック要求受信部116はロック要求を受信する(S203)。
Subsequently, first, the lock
続けて、ロック要求受信部116は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部118に保持させることにより、ロックする(S204)。
Subsequently, the lock
また、ファイル記憶制御部77は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部25、35、45に書き込む(S205)。
Further, the file
続けて、ファイル記憶制御部77は、書き込みが完了したか否かを判断する(S206)。
Subsequently, the file
まず、書き込みが完了していないと判断した場合(S206でNo)、更新通知部91は待機する。
First, when it is determined that the writing has not been completed (No in S206), the
また、書き込みが完了したと判断した場合(S206でYes)、更新通知部91は、ファイル記憶制御部77から完了の通知を受けて、分散ファイル管理装置10に更新通知を送信し、分散ファイル管理装置10の更新通知受付部110は更新通知を受け付ける(S207)。
When it is determined that the writing has been completed (Yes in S206), the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部100のファイル保持情報100bを更新する(S116)。
Subsequently, the holding
続けて、保持情報更新部112は、ロック情報保持部118が保持している情報を消去することにより、ロックを解除する(S209)。
Subsequently, the holding
続けて、更新完了通知部114は、ファイル記憶制御部77から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部93は完了の通知を受信する(S210)。
Subsequently, the update
続けて、アクセス元サーバのユーザ要求応答部95は、完了通知受信部93が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末60(65)に送信して(S211)、処理を終了する。
Subsequently, the user
以上が、本発明の実施の形態1に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、サーバA20が端末a60からファイルaの取得要求を受け付け、さらにその後に、サーバA20が保持するファイルaの更新要求を受け付けた場合を例に、本発明の実施の形態1に係る分散ファイル管理システムを構成する各装置において実行される処理について、図10から図15までを参照してより具体的に説明する。
The above is the processing executed in each device constituting the distributed file management system according to
図10は、サーバA20が端末a60からファイルaの取得要求を受け付けた場合に、分散ファイル管理装置10と、サーバA20と、サーバB30と、端末a60とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
FIG. 10 shows the processes executed in the distributed
まず、アクセス元サーバであるサーバA20のユーザ要求受信部71は、ユーザが利用する端末a60から送信された取得要求を、通信回線50を介して受信する(S101)。ここでの「取得要求」は、ユーザが利用する端末a60が最新の内容を有するファイルaを取得する要求を内容とする情報である。
First, the user
続けて、要求種別判断部73がユーザ要求受信部71が受信した要求を取得し、その要求が取得要求であると判断し(図示しない)、続けて、保持サーバ問合部79が分散ファイル管理装置10に保持サーバを問合せると、問合受付部102は保持サーバの問合わせを受け付ける(S102)。
Subsequently, the request
続けて、保持サーバ判断部104は、保持サーバ記憶部100のファイル保持情報100bを参照することにより、サーバA20が保持サーバであるか否かを判断する(S103)。
Subsequently, the holding
ここで、ファイル保持情報100bが図7に示す内容である場合、サーバA20は、「/data/a」により示されるファイル、すなわち、ファイルaを保持するが、「フラグ」が「0」であり、サーバA20は最新の内容のファイルaを保持していない。したがって、保持サーバ判断部104は、サーバA20が保持サーバではないと判断する(S103でNo)。
Here, when the
アクセス元サーバであるサーバA20が保持サーバでないと判断した場合(S103でNo)、続けて、保持サーバ判断部104は保持サーバがあるか否かを判断する(S107)。
When it is determined that the server A20 as the access source server is not a holding server (No in S103), the holding
ここで、ファイル保持情報100bが図7に示す内容である場合、サーバB30は、「/data/a」により示されるファイル、すなわち、ファイルaを保持し、「フラグ」が「1」である。したがって、サーバB30が保持サーバであり、保持サーバ判断部104は保持サーバがあると判断する(S107でYes)。
Here, when the
また、保持サーバがあると判断した場合(S107でYes)、続けて、ファイル送信要求部108は保持サーバであるサーバB30にファイルaの送信要求を送信し、保持サーバのファイル送信要求受信部83はファイルaの送信要求を受信する(S110)。
If it is determined that there is a holding server (Yes in S107), the file
ここで、「ファイルaの送信要求」とは、ファイルaを保持するサーバB30に、そのファイルaをサーバA20へ送信する要求を内容とする。 Here, the “transmission request for file a” includes a request for transmitting the file a to the server A20 to the server B30 holding the file a.
続けて、サーバB30のファイル記憶制御部77は、ファイルaを自身のファイル記憶部35から読み出す(S111)。
Subsequently, the file
続けて、サーバB30のファイル送信部85は、ファイルaをアクセス元サーバであるサーバA20に送信し、サーバA20のファイル受信部87はファイルaを受信する(S112)。
Subsequently, the
続けて、サーバA20のユーザ要求応答部95は、自身のファイル記憶制御部77を介してファイルaを取得し、取得したファイルaをユーザが利用する端末a60に送信する(S113)。
Subsequently, the user
続けて、サーバA20のファイル記憶制御部77は、取得したファイルaを自身のファイル記憶部25に格納する(S114)。
Subsequently, the file
ここで、図11は、端末a60からファイルaの取得要求を受け付けたサーバA20のファイル記憶部25が記憶している電子ファイル情報25aを示す図である。サーバA20のファイル記憶部25が記憶しているファイル情報25aの初期状態を示す図3Aの「a」が、本図では「a_2」に更新されている。
Here, FIG. 11 is a diagram illustrating the
ここから、図10の説明に戻る。 From here, it returns to description of FIG.
続けて、更新通知部91は更新通知を送信し、分散ファイル管理装置10の更新通知受付部110は更新通知を受け付ける(S115)。
Subsequently, the
ここでの「更新通知」は、ファイル保持情報100bに、サーバA20のファイル記憶部25にファイルaが更新されたことを内容とする通知である。
Here, the “update notification” is a notification having the content that the file a is updated in the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部100のファイル保持情報100bを更新し(S116)、処理を終了する。
Subsequently, the holding
ここで、図12は、サーバA20が端末a60からファイルaの取得要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報100bを示す図である。ファイル保持情報100bの初期状態を示す図7の「/data/a」に対応する「サーバA」の「フラグ」の「0」が、本図では「1」に更新されている。
Here, FIG. 12 is a diagram illustrating the
以上が、サーバA20が端末a60からファイルaの取得要求を受け付けた場合に、分散ファイル管理装置10と、サーバA20と、サーバB30と、端末a60とにおいて実行される処理およびこれらの装置間で送受信される情報である。この後に、サーバA20が保持するファイルaの更新要求を受け付けた場合に、分散ファイル管理装置10と、サーバA20と、サーバB30と、端末a60とにおいて実行される処理およびこれらの装置間で送受信される情報について、続けて説明する。
As described above, when the server A20 receives an acquisition request for the file a from the terminal a60, the processing executed in the distributed
図13は、サーバA20が端末a60からファイルaの取得要求を受け付けた後に、サーバA20が保持するファイルaの更新要求を受け付けた場合に、分散ファイル管理装置10と、サーバA20と、サーバB30と、端末a60とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
FIG. 13 shows the distributed
まず、アクセス元サーバであるサーバA20のユーザ要求受信部71は、ユーザが利用する端末a60から送信された書込要求を、通信回線50を介して受信する(S201)。ここでの「書込要求」は、サーバAが保持しているファイルaを更新する要求を内容とする情報である。
First, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が書込要求であると判断し(図示しない)、続けて、要求種別判断部73は、要求情報保持部75にファイルaを保持させる(S202)。
Subsequently, the request
続けて、まず、ロック要求送信部89は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、その書込要求に係る電子ファイルであるファイルaのロック要求を分散ファイル管理装置10に送信し、ロック要求受信部116はロック要求を受信する(S203)。
Subsequently, first, the lock
続けて、ロック要求受信部116は、受信したロック要求に係る電子ファイルであるファイルaに関する情報をロック情報保持部118に保持させることにより、ロックする(S204)。
Subsequently, the lock
また、ファイル記憶制御部77は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持しているファイルaを取得し、取得したファイルaを、自身のファイル記憶部25、35、45に書き込む(S205)。
Further, the file
ここで、図14は、端末a60からファイルaの更新要求により更新されたサーバA20のファイル記憶部25が記憶している電子ファイル情報25aを示す図である。ファイルaの取得要求を受け付けたサーバA20のファイル記憶部25が記憶しているファイル情報25aを示す図11の「a_2」が、本図では「a_3」に更新されている。
Here, FIG. 14 is a diagram showing the
ここから、図13の説明に戻る。 From here, it returns to description of FIG.
続けて、ファイル記憶制御部77は、書き込みが完了したか否かを判断する(S206)。
Subsequently, the file
まず、書き込みが完了していないと判断した場合(S206でNo)、ファイル記憶制御部77は完了まで書き込みを継続する。
First, when it is determined that writing has not been completed (No in S206), the file
また、書き込みが完了したと判断した場合(S206でYes)、更新通知部91は、ファイル記憶制御部77から完了の通知を受けて、サーバA20のファイル記憶部25のファイルaを更新したことを内容とする更新通知を分散ファイル管理装置10に送信し、分散ファイル管理装置10の更新通知受付部110は、その更新通知を受け付ける(S207)。
When it is determined that the writing has been completed (Yes in S206), the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部100のファイル保持情報100bを更新する(S116)。
Subsequently, the holding
続けて、保持情報更新部112は、ロック情報保持部118が保持しているファイルaに関連する情報を消去することにより、ロックを解除する(S209)。
Subsequently, the holding
続けて、更新完了通知部114は、ファイル記憶制御部77から完了の通知を受けて、更新処理の完了をアクセス元サーバであるサーバA20に通知し、サーバA20の完了通知受信部93は完了の通知を受信する(S210)。
Subsequently, the update
続けて、サーバA20のユーザ要求応答部95は、完了通知受信部93が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末a60に送信して(S211)、処理を終了する。
Subsequently, the user
ここで、図15は、サーバA20が端末a60からファイルaの更新要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報100bを示す図である。ファイルaの取得要求を受け付けた後のファイル保持情報100bを示す図12の「/data/a」に対応する「サーバB」の「フラグ」の「1」が、本図では「0」に更新されている。
Here, FIG. 15 is a diagram illustrating the
以上が、サーバA20が端末a60からファイルaの取得要求を受け付け、さらにその後に、サーバA20が保持するファイルaの更新要求を受け付けた場合に、本発明の実施の形態1に係る分散ファイル管理システムを構成する各装置において実行される処理である。 The above is the distributed file management system according to the first embodiment of the present invention when the server A20 accepts an acquisition request for the file a from the terminal a60 and then accepts an update request for the file a held by the server A20. Is a process executed in each device constituting the.
続けて、図16から図18までを参照して、ユーザが利用する端末60(65)に接続されたモニタに表示される入力画面および結果の表示画面の例を説明する。 Next, an example of an input screen and a result display screen displayed on a monitor connected to the terminal 60 (65) used by the user will be described with reference to FIGS.
図16は、ユーザが利用する端末60(65)に接続されたモニタに表示される、ユーザが特定のファイルに対する要求を入力するための画面の例を示す図である。ユーザは、本図に示す画面表示を見て、取得要求や書込要求をサーバに送信する。 FIG. 16 is a diagram showing an example of a screen for inputting a request for a specific file displayed on a monitor connected to the terminal 60 (65) used by the user. The user sees the screen display shown in the figure and transmits an acquisition request and a write request to the server.
本図に例示する入力画面200は、ファイル構成表示部202と、選択ファイル表示部204と、取得ボタン206と、書込ファイル入力部208と、書込ボタン210とから構成される。
The
ファイル構成表示部202は、分散ファイル管理装置10の管理対象である各サーバ20、30、40における電子ファイルのパスを表示する部分である。
The file
ファイル構成表示部202に表示される内容は、図2に示す電子ファイルのパスと同様の構成であり、端末60(65)からサーバ20、30、40を介して分散ファイル管理装置10のファイル保持情報100bにアクセスすることにより、取得される。
The content displayed on the file
ユーザはファイル構成表示部202に表示される電子ファイルをマウス等の入力機器を利用して、取得要求または書込要求に関連する電子ファイルを選択する。本図のファイル構成表示部202は、ファイルaにカーソルがあたっており、ファイルaが選択されている例を示す。
The user selects an electronic file related to the acquisition request or the write request using an input device such as a mouse for the electronic file displayed on the file
選択ファイル表示部204は、ユーザにより選択されている電子ファイルを表示する部分である。本図は上記のようにファイルaが選択されている。そのため、選択ファイル表示部204の「選択ファイル」には、「/data/a」というパスが表示されている。
The selected
取得ボタン206は、取得要求を端末60(65)に送信させるボタンである。本図のような入力画面200において、ユーザが取得ボタン206を押下すると、端末60(65)はサーバ20、30、40のいずれかに、ファイルaの取得要求を送信する。
The
書込ファイル入力部208は、サーバ20、30、40が保持するファイルを更新し、または新規格納させる電子ファイルを入力する部分である。本図は「端末a/xyz」というパスにより特定される、端末a60(65)が保持するファイルxyzが入力されている例である。
The write
書込ボタン210は、書込要求を端末60(65)に送信させるボタンである。本図のような入力画面200において、ユーザが書込ボタン210を押下すると、端末60(65)はサーバ20、30、40のいずれかに、ファイルaが選択されているため、ファイルaの書込要求を送信する。また、この書込要求により更新されたファイル記憶部25、35、45が記憶しているファイルaの実体は、書込ファイル入力部208に入力されているファイルxyzの実体と同一である。
The
図17は、ユーザがファイルaの取得要求を指示した場合に、ユーザが利用する端末60(65)に接続されたモニタに表示される結果の例を示す図である。 FIG. 17 is a diagram illustrating an example of a result displayed on a monitor connected to the terminal 60 (65) used by the user when the user instructs acquisition of the file a.
本図に示す取得結果表示画面220は、ファイルaの取得要求を送信することにより、ユーザの利用する端末60(65)がファイルaを取得した場合に、モニタ上に表示される画面である。
The acquisition
取得結果表示画面220は、取得ファイル表示部222と、閲覧ボタン224と、保存ボタン226とから構成される。
The acquisition
取得ファイル表示部222は、取得したファイルの名称を表示する。
The acquired
閲覧ボタン224は、取得したファイルをモニタ上に表示させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルがモニタ上に表示される。
The
保存ボタン226は、取得したファイルを端末60(65)が備える記憶部に保存させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルが端末60(65)の記憶部に保存される。
The
図18は、ユーザがファイルaの更新要求を指示した場合に、ユーザが利用する端末60(65)に接続されたモニタに表示される結果の例を示す図である。 FIG. 18 is a diagram illustrating an example of a result displayed on a monitor connected to the terminal 60 (65) used by the user when the user instructs an update request for the file a.
本図に示す更新結果表示画面230は、ファイルaの更新要求に関連する処理が完了した場合に、モニタ上に表示される画面である。
The update
更新結果表示画面230は、更新結果表示部232と、確認ボタン234とから構成される。
The update
更新結果表示部232には、端末60(65)から送信された書込要求が電子ファイルを更新する要求である場合に、その要求に関連する電子ファイルの名称と、その処理が完了したこととが示される。
In the update
これにより、端末60(65)を利用するユーザは処理が完了したことを知ることができる。 Thereby, the user using the terminal 60 (65) can know that the processing is completed.
確認ボタン234は、押下されると更新結果表示画面230を閉じるボタンである。
The
これらのような表示画面により、ユーザはモニタ上で要求を送信し、要求に係る処理の結果を取得することができる。 With such display screens, the user can send a request on the monitor and obtain the result of the processing related to the request.
以上、本発明の実施の形態1に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
The distributed file management apparatus and the distributed file management system according to
保持サーバ記憶部100は、ファイル保持情報100bの「フラグ」に代えて、電子ファイルの「作成日」を保持してもよい。
The holding
図19は、保持サーバ記憶部100が記憶しているファイル保持情報100cの他の例を示す図である。本図に示すファイル保持情報100cは、図7に示すファイル保持情報100bの「フラグ」に代えて、「作成日」を保持している。
FIG. 19 is a diagram illustrating another example of the
電子ファイルの「作成日」が最も現在に近い電子ファイルは、最新の内容を保持する。したがって、電子ファイルの「作成日」によって、各サーバが保持する電子内容が最新であるか否かを判断することができる。 The electronic file whose “creation date” of the electronic file is the closest to the present holds the latest contents. Therefore, it is possible to determine whether or not the electronic content held by each server is the latest based on the “creation date” of the electronic file.
例えば、本図に示すファイル保持情報100cは、「ファイルパス」が「/data/a」であるファイルaを、「サーバA」と「サーバB」とが保持しており、「サーバA」が保持するファイルaの「作成日」が「2006年3月3日」であり、「サーバB」が保持するファイルaの「作成日」が「2006年3月20日」である情報を含む。
For example, in the
この場合、「作成日」が最も現在に近い「サーバB」が保持するファイルaが最新の内容を含み、「サーバA」が保持するファイルaは古い内容を含んでいる。 In this case, the file a held by the “server B” whose “creation date” is closest to the present contains the latest contents, and the file a held by the “server A” contains old contents.
以上のように、実施の形態1に係る分散ファイル管理システムは、書込要求を受け付けた場合には、アクセス元サーバのファイル記憶部のみに新しい電子ファイルを書き込む。また、実施の形態1に係る分散ファイル管理システムは、取得要求を受け付けた場合には、最新の内容を含む電子ファイルを保持するサーバから電子ファイルを取得することにより、ユーザがいずれのサーバにアクセスしたかを意識することなく、最新の内容を有する電子ファイルをユーザに提供する。
As described above, the distributed file management system according to
これにより、更新要求に係る保持サーバが複数ある場合に、これら複数の保持サーバが保持する電子ファイルの同期をとりながら更新する場合に比べて、データの転送量を抑制することが可能となる。特に、同一の電子ファイルを保持するサーバが多数ある場合には、更新時のデータの転送量の抑制の利点は大きい。 As a result, when there are a plurality of holding servers related to the update request, it is possible to suppress the data transfer amount compared to a case where updating is performed while synchronizing electronic files held by the plurality of holding servers. In particular, when there are a large number of servers that hold the same electronic file, the advantage of suppressing the data transfer amount at the time of update is great.
(実施の形態2)
実施の形態1に係る分散ファイル管理システムでは、取得要求を受け付けたアクセス元サーバがその取得要求に係る電子ファイルを保持していない場合、分散ファイル管理装置からの情報により、その管理に係るサーバの中に、取得要求に係る電子ファイルを保持するサーバを特定し、そのサーバから取得要求に係る電子ファイルを取得し、自身のファイル記憶部に格納する。
(Embodiment 2)
In the distributed file management system according to the first embodiment, when the access source server that has received the acquisition request does not hold the electronic file related to the acquisition request, the information of the server related to the management is obtained from information from the distributed file management device. The server holding the electronic file related to the acquisition request is specified, the electronic file related to the acquisition request is acquired from the server, and stored in its own file storage unit.
そのため、長時間経過すると、全てのサーバが、ほぼ全ての電子ファイルを重複して保持することとなる。端末から取得や更新の要求を受けることが少ない電子ファイルを、多くのサーバが重複して保持することは、ストレージの無駄な利用といえる。 Therefore, when a long time elapses, all servers hold almost all electronic files in duplicate. It can be said that it is a wasteful use of storage that a large number of servers hold electronic files that are rarely requested for acquisition or update from a terminal.
そこで、実施の形態2では、ストレージの有効活用が可能な分散ファイル管理システムを提供する。 Therefore, in the second embodiment, a distributed file management system capable of effectively using storage is provided.
図20から図28までを参照して、本発明に係る実施の形態2について説明する。 A second embodiment according to the present invention will be described with reference to FIGS.
図1に示す分散ファイル管理システムの構成の概要は、実施の形態2に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。 The outline of the configuration of the distributed file management system shown in FIG. 1 is the same as that of the distributed file management system according to the second embodiment, and thus detailed description regarding the outline of the configuration of the distributed file management system is omitted here. .
実施の形態2に係る分散ファイル管理システムは、ユーザが利用する端末60、65と、各端末60、65からユーザの要求を受け付け、ファイル記憶部25、35、45をそれぞれに備えるサーバA320と、サーバB330と、サーバC340と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルに関する情報を管理する分散ファイル管理装置とにより構成される。
The distributed file management system according to the second embodiment includes
また、実施の形態2に係る各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は、実施の形態1と同様に、各ファイル記憶部において共通するパスで示され、その具体例は、図2に示す実施の形態1のフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。 The folder structure of the electronic file stored in the file storage unit included in each server according to the second embodiment is indicated by a common path in each file storage unit as in the first embodiment. Is the same as the folder structure of the first embodiment shown in FIG. Therefore, the description here regarding the folder structure is omitted.
図20A〜図20Cは、実施の形態2に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。 20A to 20C are diagrams illustrating specific examples of electronic files stored in a file storage unit included in each server according to the second embodiment.
図20Aは、実施の形態2に係るサーバA320が備えるファイル記憶部25が記憶している電子ファイル情報25bの例を示す図である。本図は、本実施の形態に係るファイル記憶部25が「ファイルa」を記憶している例を示す。
FIG. 20A is a diagram illustrating an example of the
図20Bは、実施の形態2に係るサーバB330が備えるファイル記憶部35が記憶している電子ファイル情報35bの例を示す図である。本図は、本実施の形態に係るファイル記憶部35が「ファイルa」と、「ファイルd」と、「ファイルe」とを記憶している例を示す。
FIG. 20B is a diagram illustrating an example of the
図20Cは、実施の形態2に係るサーバC340が備えるファイル記憶部45が記憶している電子ファイル情報45bの例を示す図である。本図は、本実施の形態に係るファイル記憶部45が「ファイルd」を記憶している例を示す。
FIG. 20C is a diagram illustrating an example of the
図21は、実施の形態2に係るサーバA320が備える機能的構成の例を示すブロック図である。サーバA320は、実施の形態1に係るサーバA20と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置310の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態2に係るサーバA320は、実施の形態1に係るサーバA20とは異なり、一定の条件を満たす電子ファイルについては、分散ファイル管理装置310の要求に従って、ファイル記憶部25から削除する。
FIG. 21 is a block diagram illustrating an example of a functional configuration included in the
サーバA320は、ファイル記憶部25と、ユーザ要求受信部71と、要求種別判断部73と、要求情報保持部75と、ファイル記憶制御部77と、保持サーバ問合部79と、保持応答受信部81と、ファイル送信要求受信部83と、ファイル送信部85と、ファイル受信部87と、ロック要求送信部89と、完了通知受信部93と、ユーザ要求応答部95と、更新通知部391と、削除要求受信部322とを備える。
The
実施の形態2に係るサーバA320について、実施の形態1に係るサーバA20と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。 In the server A320 according to the second embodiment, parts having the same functions as those of the server A20 according to the first embodiment are denoted by the same reference numerals, and description thereof is omitted here.
削除要求受信部322は、分散ファイル管理装置310から、通信回線15を介して、自身のファイル記憶部25が記憶している電子ファイルの一部または全部を削除する要求を受信する部位である。
The deletion
更新通知部391は、ファイル記憶制御部77がファイル記憶部25に新たな電子ファイルを格納し、電子ファイル情報25aを更新し、または、電子ファイル情報25aから電子ファイルの一部または全部を削除した場合に、格納、更新、または削除された内容を分散ファイル管理装置10に通知する部位である。
In the
以上が、本実施の形態に係るサーバA320の機能的構成である。サーバB330およびサーバC340も、サーバA320と同様の機能的構成を備える。
The above is the functional configuration of the
図22は、実施の形態2に係る分散ファイル管理装置310が備える機能的構成の例を示すブロック図である。実施の形態2に係る分散ファイル管理装置310と、実施の形態1に係る分散ファイル管理装置10との違いは、実施の形態2に係る分散ファイル管理装置310が、ユーザの要求を一定以上の期間、サーバが要求を受信していない電子ファイルを複数のサーバが保持している場合に、いずれか1つのサーバ以外が保持するその電子ファイルをサーバに削除させることである。
FIG. 22 is a block diagram illustrating an example of a functional configuration included in the distributed
分散ファイル管理装置310は、問合受付部102と、保持応答送信部106と、ファイル送信要求部108と、更新完了通知部114と、ロック要求受信部116と、ロック情報保持部118と、保持サーバ記憶部400と、保持サーバ判断部404と、更新通知受付部410と、保持情報更新部412と、削除条件記憶部420と、時計部422と、削除対象判断部424と、削除要求部426とを備える。
The distributed
実施の形態2に係る分散ファイル管理装置310について、実施の形態1に係る分散ファイル管理装置10と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。
In the distributed
保持サーバ記憶部400は、実施の形態1に係る保持サーバ記憶部100と同様に、分散ファイル管理装置310の管理対象として設定されているサーバに関する情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルに関連する情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部400は、例えば、HD(Hard Disk)により実現される。
Similar to the holding
実施の形態2に係る管理サーバ情報400aは、図6を参照して説明した実施の形態1に係る管理サーバ情報100aと同様であるため、ここでの説明は省略する。
The management server information 400a according to the second embodiment is the same as the
実施の形態2に係るファイル保持情報の具体例について、図23を参照して説明する。 A specific example of the file holding information according to the second embodiment will be described with reference to FIG.
図23は、保持サーバ記憶部400が記憶しているファイル保持情報400bの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報400bは、「ファイルパス」と、「サーバ名」と、「アクセス日」とから構成される。
FIG. 23 is a diagram illustrating an example of the
本実施の形態に係るファイル保持情報400bの「ファイルパス」と、「サーバ名」とは、図7を参照して説明した実施の形態1に係るファイル保持情報100bの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
The “file path” and “server name” of the
「アクセス日」は、「サーバ名」に格納された情報により示されるサーバが、「ファイルパス」により示される電子ファイルに関連するユーザの要求を、最後に受付けた日付けが格納される。 The “access date” stores the date when the server indicated by the information stored in the “server name” last received a user request related to the electronic file indicated by the “file path”.
本図は、例えば、「ファイルパス」が「/data/a」である電子ファイルについて、「サーバA」が、ユーザから要求を受け付けた最後の日が「20060303」、すなわち、「2006年3月3日」であることを示す。 For example, for the electronic file whose “file path” is “/ data / a”, the last day when “Server A” received the request from the user is “20066033”, that is, “March 2006” 3 days ".
ここから、図22の説明に戻る。 From here, it returns to description of FIG.
保持サーバ判断部404は、保持サーバ記憶部400を参照することにより、問合受付部102が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。
The holding
また、保持サーバ判断部404は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバであると判断した場合には、かかる判断を保持情報更新部112に出力する。
If the holding
さらに、保持サーバ判断部404は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する。
Furthermore, the holding
更新通知受付部410は、各サーバが備えるファイル記憶部25、35、45に新たな電子ファイルが格納され、ファイル記憶部25、35、45が記憶している電子ファイルが更新され、または、ファイル記憶部25、35、45が記憶している電子ファイルが削除されたことを内容とする通知を、サーバから受け付ける部位である。
The update
保持情報更新部412は、保持サーバ判断部404から受け付けた情報または更新通知受付部410が受け付けた情報に従って、保持サーバ記憶部400が記憶しているファイル保持情報400bを更新する部位である。
The holding
削除条件記憶部420は、各サーバが保持する電子ファイルを削除するための条件を含む情報である削除条件情報を記憶している部位である。
The deletion
図24は、実施の形態2に係る削除条件情報420aの例を示す図である。本図に示す削除条件は、ファイル保持情報400bの「アクセス日」から「30日」以上、経過している場合に、そのサーバが保持するその電子ファイルを削除することを条件とする例である。
FIG. 24 is a diagram illustrating an example of the deletion condition information 420a according to the second embodiment. The deletion condition shown in the figure is an example on the condition that the electronic file held by the server is deleted when “30 days” or more have passed since the “access date” of the
ここから、図22の説明に戻る。 From here, it returns to description of FIG.
時計部422は、現在の日時を保持している部位である。
The
削除対象判断部424は、削除の対象となる電子ファイルをサーバごとに判断する部位である。より具体的には、削除対象判断部424は、ファイル保持情報400bの「アクセス日」が示す日付けから削除条件情報420aに含まれる期間を超えて保持されている電子ファイルがあり、かつ、その電子ファイルを保持するサーバが複数ある場合には、「アクセス日」が最も新しいサーバが保持する電子ファイルのみを残して、他のサーバが保持するその電子ファイルを削除すると判断する。
The deletion
本実施の形態に係る削除対象判断部424は、予め定められた周期で上記の判断処理を実行する。
The deletion
削除要求部426は、削除対象判断部424により削除の対象として判断された電子ファイルを保持するサーバに、その電子ファイルを削除する要求を送信する部位である。
The
以上のような機能を分散ファイル管理装置10および各サーバ20、30、40が備えることにより、実施の形態1と同様に、ユーザは、自己の利用する端末60、65からいずれのサーバにアクセスするかにかかわらず、各サーバ20、30、40のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。
Since the distributed
また、ユーザの取得要求に係る電子ファイルを複数のサーバが保持する場合、その電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。 In addition, when a plurality of servers hold electronic files related to user acquisition requests, the electronic files are synchronized, so the user is conscious of which server holds the electronic file having the latest contents. It is possible to obtain an electronic file having the latest contents without accessing the server and by accessing an arbitrary server.
さらに、同一の電子ファイルが複数のサーバに重複して保持されている場合、予め定められた条件に従って、いずれかのサーバが保持する電子ファイルを残して、他のサーバが保持する電子ファイルを削除するため、ストレージの有効な活用が可能となる。 In addition, when the same electronic file is held repeatedly on multiple servers, the electronic file held by one of the servers is deleted and the electronic file held by another server is deleted according to a predetermined condition. Therefore, effective use of storage becomes possible.
図25は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態2に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 25 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to
本図において、図8に示す実施の形態1に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
In this figure, the process which attached | subjected the same referential mark as the process performed in each apparatus which concerns on
本図に示すタイムチャートと図8に示すタイムチャートとの違いは、電子ファイルに関するアクセス元サーバの保持判断(S103)において肯定判定がなされた後に(S103でYes)、保持通知(S104)がなされるまでに、保持情報更新処理が(S310)実行される点にある。 The difference between the time chart shown in this figure and the time chart shown in FIG. 8 is that a holding notification (S104) is made after an affirmative determination is made in the holding determination (S103) of the access source server regarding the electronic file (Yes in S103). Until then, the holding information update process is executed (S310).
保持サーバ判断部404がアクセス元サーバが保持サーバであると判断した場合(S103でYes)、続けて、保持情報更新部412は、保持サーバ判断部の判断を受け、アクセス元サーバが保持する、ユーザの要求に係る電子ファイルに関するファイル保持情報400bの「アクセス日」を、時計部422から取得した日付けにより更新する(S301)。
When the holding
図26は、ユーザが端末60、65から書込要求を送信した場合に、本発明の実施の形態2に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 26 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to the second embodiment of the present invention when the user transmits a write request from the
本図において、図9に示す実施の形態1に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
In this figure, the process which attached | subjected the same referential mark as the process performed in each apparatus which concerns on
本図に示すタイムチャートと図8に示すタイムチャートとの違いは、分散ファイル管理装置310が、アクセス元サーバ以外の保持サーバの有無を判断し、アクセス元サーバ以外の保持サーバがある場合には、そのサーバが保持する電子ファイルをも更新する点にある。このような処理により、複数のサーバに重複して保持されている電子ファイルの内容は同期する。
The difference between the time chart shown in this figure and the time chart shown in FIG. 8 is that the distributed
分散ファイル管理装置310の更新完了通知部114がファイル記憶制御部77から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知した後に(S209)、続けて、分散ファイル管理装置310の保持サーバ判断部404は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する(S212)。
After the update
アクセス元サーバ以下に保持サーバがないと判断した場合(S212でNo)、分散ファイル管理装置310は、サーバからの要求または問合せを受け付けるまで待機する。
If it is determined that there is no holding server below the access source server (No in S212), the distributed
また、アクセス元サーバ以下に保持サーバがあると判断した場合(S212でYes)、ファイル送信要求部108は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ320のファイル送信要求受信部83はファイル送信要求を受信する(S213)。
When it is determined that there is a holding server below the access source server (Yes in S212), the file
ここで、「ファイル送信要求」とは、アクセス元サーバに、ユーザの書込要求に係る電子ファイルを他の保持サーバへ送信する要求を内容とする。 Here, the “file transmission request” includes a request for transmitting to the access source server an electronic file related to the user's write request to another holding server.
続けて、ファイル記憶制御部77は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部25から読み出す(S214)。
Subsequently, the file
続けて、アクセス元サーバ320のファイル送信部85は、ファイル記憶制御部77が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部87はその電子ファイルを受信する(S215)。
Subsequently, the
保持サーバのファイル記憶制御部77は、ファイル受信部87が受信した電子ファイルにより自身のファイル記憶部25が記憶している電子ファイルを更新する(S216)。
The file
続けて、更新通知部391は、分散ファイル管理装置310に更新通知を送信し、分散ファイル管理装置310の更新通知受付部410は更新通知を受け付ける(S217)。
Subsequently, the
ここでの「更新通知」は、より具体的には、アクセス元サーバ20、30、40のファイル記憶部25、35、45に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。
More specifically, the “update notification” here means that a new electronic file has been stored in the
続けて、保持情報更新部412は、更新通知受付部410から取得した更新通知に従って、保持サーバ記憶部100のファイル保持情報100bを更新し(S218)、処理を終了する。
Subsequently, the holding
以上が、サーバのいずれかがユーザの要求を受け付けた場合に、各装置において実行される処理である。本実施の形態では、上記のように、ユーザが最後にアクセスした日から一定期間が経過した電子ファイルを保持するサーバについては、その電子ファイルを削除する。このとき、分散ファイル管理装置310が実行する処理を、図27を参照して説明する。
The above is the processing executed in each device when any of the servers accepts a user request. In the present embodiment, as described above, for a server that holds an electronic file that has passed a certain period from the date of last access by the user, the electronic file is deleted. Processing executed by the distributed
図27は、各サーバが保持する電子ファイルを削除する際に、本発明の実施の形態2に係る分散ファイル管理装置310において実行される処理の一例を示すフローチャートである。
FIG. 27 is a flowchart showing an example of processing executed in the distributed
まず、削除対象判断部424は、自身が保持している予め定められた更新時刻であるか否かを、時計部422から取得する現在時刻と比較することにより判断する(S300)。
First, the deletion
更新時刻ではないと判断した場合(S300でNo)、削除対象判断部424は更新時刻であるか否かの判断を継続する。
If it is determined that it is not the update time (No in S300), the deletion
また、更新時刻であると判断した場合(S300でYes)、分散ファイル管理装置310は、保持サーバ記憶部400のファイル保持情報400bに含まれる全ての電子ファイルについて、以下に説明する、最終アクセスから一定時間経過したか否かの判断(S302)から保持情報の更新(S307)までの処理を繰り返す(S301)。
If it is determined that the update time is reached (Yes in S300), the distributed
まず、削除対象判断部424は、ファイル保持情報400bの「アクセス日」と削除条件情報420aと時計部422から現在の日付けとを取得し、現在の日付けが「アクセス日」から削除条件情報420aに含まれる期間が経過しているか否かを判断する(S302)。
First, the deletion
現在の日付けが「アクセス日」から削除条件情報420aに含まれる期間が経過していないと判断した場合(S302でNo)、次の電子ファイルについて、経過時間の判断処理(S302)を実行する。 When it is determined that the period included in the deletion condition information 420a has not elapsed since the current date is “access date” (No in S302), an elapsed time determination process (S302) is executed for the next electronic file. .
現在の日付けが「アクセス日」から削除条件情報420aに含まれる期間が経過していると判断した場合(S302でYes)、削除対象判断部424は、同一の電子ファイルを保持しているサーバが複数あるか否かを判断する(S303)。
When it is determined that the period included in the deletion condition information 420a has elapsed from the “access date” as the current date (Yes in S302), the deletion
同一の電子ファイルを保持しているサーバが複数ではないと判断した場合(S303でNo)、次の電子ファイルについて、経過時間の判断処理(S302)を実行する。したがって、最終アクセス日から一定期間が経過した電子ファイルの保持サーバが1つのみの場合、その電子ファイルは削除されない。 When it is determined that there are not a plurality of servers that hold the same electronic file (No in S303), an elapsed time determination process (S302) is executed for the next electronic file. Therefore, when there is only one electronic file holding server that has passed a certain period from the last access date, the electronic file is not deleted.
また、同一の電子ファイルを保持しているサーバが複数であると判断した場合(S303でYes)その電子ファイルを保持するサーバの中で「アクセス日」が最も新しいサーバ除く、各サーバが保持する電子ファイルを削除の対象と決定する(S304)。 Further, when it is determined that there are a plurality of servers holding the same electronic file (Yes in S303), each server holds except the server with the newest “access date” among the servers holding the electronic file. The electronic file is determined to be deleted (S304).
削除要求部426は、削除対象判断部424により削除の対象と決定された電子ファイルを保持しているサーバに、その電子ファイルの削除要求を送信する(S305)。
The
更新通知受付部410は、削除要求部426からの要求に係る電子ファイルの削除処理を実行したサーバから、更新通知を受け付ける(S306)。
The update
ここで受信する「更新通知」は、保持サーバ20、30、40のファイル記憶部25、35、45が記憶している電子ファイルが削除されたことを内容とする通知である。
The “update notification” received here is a notification that indicates that the electronic file stored in the
続けて、保持情報更新部412は、更新通知受付部410が受け付けた更新通知に従って、ファイル保持情報400bを更新して(S307)、処理を終了する。
Subsequently, the holding
以上が、各サーバが保持する電子ファイルの削除の際に、分散ファイル管理装置310が実行する処理である。ファイル保持情報400bが図23に示す内容である場合に、分散ファイル管理装置310が、削除対象判断部424が更新時刻であると判断した後に(S300でYes)実行する処理について、より具体的に説明する。
The above is the processing executed by the distributed
まず、「ファイルパス」が「/data/a」であるファイルaについて、時計部422から取得した現在の日付けが、「アクセス日」である「2006年3月3日」から削除条件情報420aに含まれる期間である「30日」が経過しているか否かを判断する(S302)。ここで、現在の日付けを「2006年3月30日」とする。
First, for the file a whose “file path” is “/ data / a”, the current date acquired from the
「2006年3月30日」は「2006年3月3日」から「30日」が経過していないため(S302でNo)、続けて、削除対象判断部424は、次のファイルである「/data/b」であるファイルbについて同様の判断処理(S302)を実行する。
Since “March 30, 2006” has not passed “30 days” from “March 3, 2006” (No in S302), the deletion
ファイルbも、ファイルaの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため(S302でNo)、続けて、削除対象判断部424は、次のファイルである「/data/c/e」であるファイルeについて同様の判断処理(S302)を実行する。
Similarly to the case of the file a, since the current date has not passed the period included in the deletion condition from the “access date” (No in S302), the deletion
ファイルeも、ファイルaの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため(S302でNo)、続けて、削除対象判断部424は、次のファイルである「/data/d」であるファイルdについて同様の判断処理(S302)を実行する。
Similarly to the case of the file a, since the current date has not passed the period included in the deletion condition from the “access date” (No in S302), the deletion
ファイルdについて、保持サーバはサーバB330と、サーバC340とである。ファイルdについて、サーバB330の「アクセス日」は「2006年3月3日」であり、現在の日付である「2006年3月30日」は「アクセス日」から「30日」経過していない。 For file d, the holding servers are server B330 and server C340. For the file d, the “access date” of the server B 330 is “March 3, 2006”, and the current date “March 30, 2006” has not passed “30 days” from the “access date”. .
また、ファイルdについて、サーバC340の「アクセス日」は「2006年2月20日」であり、現在の日付である「2006年3月30日」は「アクセス日」から「30日」経過している。 Further, for the file d, the “access date” of the server C 340 is “February 20, 2006”, and the current date “March 30, 2006” has passed “30 days” from the “access date”. ing.
そのため、削除対象判断部424は、ファイルdにつき、現在の日付けが「アクセス日」から削除条件情報420aに含まれる期間が経過していると判断する(S302でYes)。
Therefore, the deletion
続けて、削除対象判断部424は、ファイルdを保持しているサーバが複数あるため、ファイルdを保持するサーバである、サーバB330とサーバC340との中で、最も新しい「アクセス日」に関連するサーバであるサーバB330以外のサーバ、すなわち、サーバC340が保持するファイルdを削除の対象と決定する(S303)。
Subsequently, since there are a plurality of servers that hold the file d, the deletion
続けて、削除要求部426は、サーバC340にファイルdの削除を要求する(S304)。
Subsequently, the
続けて、更新通知受付部410は、削除要求部426からの要求に応じてファイルdを削除したサーバC340から、更新通知を受け付ける(S305)。
Subsequently, the update
ここで受信する「更新通知」は、サーバC340のファイル記憶部45が記憶しているファイルdが削除されたことを内容とする通知である。
The “update notification” received here is a notification that indicates that the file d stored in the
続けて、保持情報更新部412は、更新通知受付部410が受け付けた更新通知に従って、ファイル保持情報400bを更新して(S306)、処理を終了する。
Subsequently, the holding
ここで、図28は、ファイル保持情報400bが図23に示す内容である場合に、分散ファイル管理装置310による電子ファイルの削除処理が終了した後のファイル保持情報400cを示す図である。
Here, FIG. 28 is a diagram showing the
上述のようにファイルaと、ファイルbと、ファイルeとは削除されないため、削除処理後のファイル保持情報400bに変更はない。
As described above, since the file a, the file b, and the file e are not deleted, the
また、「サーバC」が保持していたファイルdは削除されたため、「/data/d」の保持サーバは「サーバB」のみに更新されている。 Further, since the file d held by “server C” is deleted, the holding server of “/ data / d” is updated to only “server B”.
実施の形態2において、ユーザが利用する端末60(65)に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態1において図16から図18までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。 In the second embodiment, examples of the input screen and the result display screen displayed on the monitor connected to the terminal 60 (65) used by the user will be described with reference to FIGS. 16 to 18 in the first embodiment. This is the same as the example of the input screen and the result display screen described above. Therefore, explanation here is omitted.
以上、本発明の実施の形態2に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。 The distributed file management apparatus and distributed file management system according to the second embodiment of the present invention have been described above, but the present invention is not limited to this embodiment.
例えば、実施の形態2に係る分散ファイル管理装置310は、予め定められた周期で削除処理を実行したが、サーバがユーザから更新要求を受け付けたときに、削除処理を実行してもよい。
For example, the distributed
また、分散ファイル管理装置310は、予め定められた周期と、サーバがユーザから更新要求を受け付けたときとの両方で、削除処理を実行してもよい。
Further, the distributed
(変形例1)
ここで、サーバがユーザから更新要求を受け付けたときに、削除処理を実行する場合である変形例1について、図29から図33までを参照して説明する。
(Modification 1)
Here,
図29は、変形例1に係る分散ファイル管理装置510が備える機能的構成の例を示すブロック図である。分散ファイル管理装置510は、管理するサーバのいずれかが更新要求を受け付けた場合に、アクセス元サーバ以外の保持サーバに更新要求に係る電子ファイルを削除する要求を送信する。
FIG. 29 is a block diagram illustrating an example of a functional configuration included in the distributed
分散ファイル管理装置510は、問合受付部102と、保持応答送信部106と、ファイル送信要求部108と、更新完了通知部114と、ロック要求受信部116と、ロック情報保持部118と、更新通知受付部410と、保持情報更新部412と、削除要求部426と、保持サーバ記憶部500と、保持サーバ判断部504と、削除対象判断部524とを備える。
The distributed
保持サーバ記憶部500は、実施の形態2に係る保持サーバ記憶部400と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部であり、例えば、HD(Hard Disk)により実現される。
Similar to the holding
変形例1に係る管理サーバ情報500aは、図6を参照して説明した実施の形態1に係る管理サーバ情報100aと同様であるため、ここでの説明は省略する。
Since the management server information 500a according to the first modification is the same as the
変形例1に係るファイル保持情報の具体例について、図30を参照して説明する。 A specific example of the file holding information according to the first modification will be described with reference to FIG.
図30は、保持サーバ記憶部500が記憶しているファイル保持情報500bの例を示す図である。本図に示すように、本実施の形態に係るファイル保持情報500bは、「ファイルパス」と、「サーバ名」とから構成される。
FIG. 30 is a diagram illustrating an example of the
本変形例に係るファイル保持情報500bの「ファイルパス」と、「サーバ名」とは、図23を参照して説明した実施の形態2に係るファイル保持情報400bの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納される。
The “file path” and “server name” of the
本変形例に係るファイル保持情報500bと、実施の形態2に係るファイル保持情報400bとの違いは、本変形例に係るファイル保持情報500bに「アクセス日」が含まれていない点にある。
The difference between the
実施の形態2ではアクセス日から一定期間が経過した電子ファイルを削除の候補としたのに対して、本変形例ではサーバが更新要求を受け付けた際に保持サーバの電子ファイルを削除するため、アクセス日が不要となる。 In the second embodiment, an electronic file whose fixed period has elapsed from the access date is set as a deletion candidate. In this modification, the electronic file on the holding server is deleted when the server receives an update request. Day becomes unnecessary.
ここから、図29の説明に戻る。 From here, it returns to description of FIG.
保持サーバ判断部504は、保持サーバ記憶部500を参照することにより、問合受付部102が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。
The holding
また、保持サーバ判断部504は、アクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバを判断する。
The holding
削除対象判断部524は、実施の形態2に係る削除対象判断部424と同様に、削除の対象となる電子ファイルをサーバごとに判断する部位である。本変形例に係る削除対象判断部524は、保持サーバ判断部504が判断したアクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバに関する情報を取得し、取得したサーバに関する情報を削除要求部426に引き渡す。
Similar to the deletion
続けて、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理について、図を参照して説明する。 Next, processing executed by each device according to the present modification when the server receives an update request from the user will be described with reference to the drawings.
図31は、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理の例を示すタイムチャートである。本図では、サーバA320をアクセス元サーバとし、そのサーバA320がファイルdの更新要求を受け付けた場合を例に具体的に説明する。 FIG. 31 is a time chart illustrating an example of processing executed by each device according to the present modification when the server receives an update request from the user. In this figure, the case where the server A320 is an access source server and the server A320 receives an update request for the file d will be specifically described.
本図において、図26に示す実施の形態2に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
In this figure, the process which attached | subjected the same referential mark as the process performed in each apparatus which concerns on
本図に示す処理と、図26に示す処理との違いは、アクセス元サーバ以外に保持サーバがあるか否かの判断(S212)において、アクセス元サーバ以外に保持サーバがあると判断された場合(S212でYes)以後の処理にある。 The difference between the process shown in this figure and the process shown in FIG. 26 is that in the determination of whether there is a holding server other than the access source server (S212), it is determined that there is a holding server other than the access source server. (Yes in S212) In the subsequent processing.
ここで、アクセス元サーバであるサーバA320がファイルdの更新要求を受け付けた場合に、保持サーバ判断部504がS212における判断処理を実行するときの、ファイル保持情報は、図32に示すようになる。
Here, when the server A320 as the access source server receives the update request for the file d, the file holding information when the holding
図32は、サーバA320がファイルdの更新要求を受け付けた場合に、保持サーバ判断部504がS212における判断処理を実行するときの、ファイル保持情報500cを示す図である。ファイル保持情報の初期状態は、図30に示すファイル保持情報500bとする。
FIG. 32 is a diagram illustrating the
本図に示すファイル保持情報500cは、保持情報更新処理(S208)により、ファイルdに対応する「サーバ名」に「サーバA」が追加されている。
In the
ここから、図31を参照して、アクセス元サーバ以外に保持サーバがあると判断された場合(S212でYes)以後の処理について説明する。 From here, with reference to FIG. 31, the processing after it is determined that there is a holding server other than the access source server (Yes in S212) will be described.
まず、保持サーバ判断部504は、保持情報更新部412がファイル保持情報500bを更新したことを受けて、アクセス元サーバ以外に、保持サーバがあるか否かおよび保持サーバがある場合には保持サーバがどのサーバであるかを判断する(S212)。
First, the holding
ファイルdについて、アクセス元サーバであるサーバA320以外の保持サーバは、「サーバB」と「サーバC」とであるため、保持サーバ判断部504は、アクセス元サーバ以外に、保持サーバがあり、その保持サーバは「サーバB」と「サーバC」とであると判断する。
Regarding the file d, since the holding servers other than the server A320 that is the access source server are “server B” and “server C”, the holding
続けて、削除対象判断部524は、保持サーバ判断部504の判断を受けて、削除対象を決定する(S313)。
Subsequently, the deletion
ここでは、削除対象判断部524は、保持サーバ判断部504が判断した保持サーバである「サーバB」と「サーバC」とが保持するファイルdを削除対象と決定する(S313)。
Here, the deletion
続けて、削除対象判断部524は、削除対象があるか否かを判断する(S314)。
Subsequently, the deletion
削除対象がないと判断した場合(S314でNo)、分散ファイル管理装置310は、サーバからの要求または問合せを受け付けるまで待機する。
If it is determined that there is no deletion target (No in S314), the distributed
また、削除対象があると判断した場合(S314でYes)、続けて、削除要求部426は、ファイルの削除要求を保持サーバに送信し、保持サーバの削除要求受信部322はそのファイルの削除要求を受信する(S315)。
If it is determined that there is a deletion target (Yes in S314), then the
ここでは、「サーバB」と「サーバC」とが保持するファイルdが削除対象と判断したため、削除対象判断部524は、削除対象があると判断し(S314でYes)、削除要求部426は、ファイルdの削除要求をサーバB330およびサーバC340に送信し、サーバB330およびサーバC340の削除要求受信部322は、それぞれファイルdの削除要求を受信する(S315)。
Here, since the file d held by “server B” and “server C” is determined to be a deletion target, the deletion
続けて、ファイル削除要求を受け付けた保持サーバのファイル記憶制御部77は、削除要求に係る電子ファイルを、ファイル記憶部が記憶しているファイル情報から削除する(S316)。
Subsequently, the file
ここでは、サーバB330およびサーバC340のファイル記憶制御部77が、ファイル記憶部35、45が記憶している各ファイルdを削除する(S316)。
Here, the file
続けて、保持サーバの更新通知部391は更新通知を送信し、更新通知受付部410は更新通知を受信する(S317)。ここで、「更新通知」は、保持サーバ20、30、40のファイル記憶部25、35、45が記憶している電子ファイルが削除されたことを内容とする通知である。
Subsequently, the
ここでは、サーバB330およびサーバC340の更新通知部391が、ファイル記憶部35、45が記憶しているファイルdが削除されたことを内容とする更新通知を送信し、更新通知受付部410がその更新通知を受信する(S317)。
Here, the
続けて、保持情報更新部412は、更新通知受付部410が受け付けた更新通知に従って、保持サーバ記憶部500のファイル保持情報500cを更新して(S318)、処理を終了する。
Subsequently, the holding
ここで、保持情報更新部412による更新処理をした後のファイル保持情報について、図を参照して説明する。
Here, the file holding information after the update processing by the holding
図33は、ユーザからファイルdの更新要求をサーバA320が受け付けた場合に、本変形例に係る各装置が実行する処理が終了した後のファイル保持情報500dを示す図である。本図に示すファイル保持情報500dでは、図32に示すファイル保持情報500cから、ファイルdに対応する「サーバ名」から「サーバB」と「サーバC」とが削除されており、ファイルdに対応する「サーバ名」は「サーバA」のみとなる。
FIG. 33 is a diagram illustrating the
以上に説明した変形例1では、ユーザから更新要求を受け付けたときに削除処理を実行するため、「アクセス日」が不要となる。また、更新要求を受け付けたアクセス元サーバには、処理後も、削除に係る電子ファイルが保持される。そのため、削除対象判断部424は、削除に係る電子ファイルを保持するサーバが複数のあるか否かに基づいて、削除対象を決定する必要がなく、処理を簡略化することができる。
In the first modification described above, the deletion process is executed when an update request is received from the user, so the “access date” is not required. In addition, the access source server that has received the update request holds the electronic file related to the deletion even after the processing. Therefore, the deletion
なお、上記のように、予め定められた周期と、サーバがユーザから書込要求を受け付けたときとの両方で、削除処理を実行する場合には、分散ファイル管理装置は、図22に示す実施の形態2に係る分散ファイル管理装置310が備える機能と、図29に示す変形例1に係る分散ファイル管理装置310が備える機能とを組み合わせることで実現できる。
As described above, when the deletion process is executed both in a predetermined cycle and when the server receives a write request from the user, the distributed file management apparatus performs the implementation shown in FIG. This can be realized by combining the function of the distributed
さらに、例えば、ファイル保持情報400bに、さらに、実施の形態1と同様に電子ファイルの内容が最新であるか否かを示す「フラグ」を含め、削除の対象とする電子ファイルに古い内容を有する電子ファイルを含めても構わない。
Further, for example, the
図34は、古い内容を有する電子ファイルを削除の対象とする場合のファイル保持情報400dの例を示す図である。本図に示すように、この場合のファイル保持情報400dは、「ファイルパス」と、「サーバ名」と、「フラグ」と、「アクセス日」とから構成される。
FIG. 34 is a diagram showing an example of the
ファイル保持情報400dの「ファイルパス」と、「サーバ名」と、「アクセス日」とは、図23を参照して説明した実施の形態2に係るファイル保持情報400bの「ファイルパス」と、「サーバ名」と、「アクセス日」と、それぞれ同様の情報が格納される。また、ファイル保持情報400dの「フラグ」には、図7を参照して説明した実施の形態1に係るファイル保持情報100bの「フラグ」と同様の情報が格納される。
The “file path”, “server name”, and “access date” of the
この場合の各装置の機能的構成は、実施の形態1、実施の形態2および変形例1に係る各装置が備える機能を組み合わせることによって、実現される。
The functional configuration of each device in this case is realized by combining the functions of each device according to
(実施の形態3)
実施の形態1および実施の形態2に係る分散ファイル管理システムでは、最新の内容を有する電子ファイルを複数のサーバが重複して保持する場合がある。このように重複して保持することにより、ユーザが頻繁に取得する電子ファイルについては、その取得要求に関する処理において、通信回線を移動する情報量を減少させることを可能としている。
(Embodiment 3)
In the distributed file management system according to the first and second embodiments, a plurality of servers may hold an electronic file having the latest contents in an overlapping manner. In this way, it is possible to reduce the amount of information that moves through the communication line in the processing related to the acquisition request for electronic files that are frequently acquired by the user.
しかし、実施の形態1および実施の形態2では、同一の電子ファイルを複数のサーバが重複して保持することを有効に活用していないという問題がある。 However, the first embodiment and the second embodiment have a problem that a plurality of servers do not effectively utilize the same electronic file.
そこで、実施の形態3では、複数のサーバによる重複保持を積極的に活用し、第三者による電子ファイルの改竄を防止することを可能とする分散ファイル管理システムを提供する。また、サーバやディスクの耐障害性の向上を可能とする分散ファイル管理システムを提供する。
Therefore,
図35から図47までを参照して、本発明に係る実施の形態3について説明する。 A third embodiment according to the present invention will be described with reference to FIGS.
図1に示す分散ファイル管理システムの構成の概要は、実施の形態3に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。 The outline of the configuration of the distributed file management system shown in FIG. 1 is the same as that of the distributed file management system according to the third embodiment, and thus detailed description on the outline of the configuration of the distributed file management system is omitted here. .
実施の形態3に係る分散ファイル管理システムは、ユーザが利用する端末60、65と、ファイル記憶部25、35、45をそれぞれに備え、各端末60、65からユーザの要求を受け付けるサーバA620と、サーバB630と、サーバC640と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルを管理する分散ファイル管理装置とにより構成される。
The distributed file management system according to the third embodiment includes
また、図2に示す各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成は、実施の形態3に係る分散ファイル管理システムにおいても同様であるため、フォルダ構成に関するここでの説明は省略する。 In addition, since the folder configuration common to the electronic files stored in the file storage unit provided in each server shown in FIG. 2 is the same in the distributed file management system according to the third embodiment, Description is omitted.
図35A〜図35Cは、実施の形態3に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。 FIG. 35A to FIG. 35C are diagrams illustrating specific examples of electronic files stored in a file storage unit included in each server according to the third embodiment.
図35Aは、実施の形態3に係るサーバA620が備えるファイル記憶部25が記憶している電子ファイル情報25bの例を示す図である。本図は、本実施の形態に係るファイル記憶部25が「ファイルa」と、「ファイルb」とを記憶している例を示す。
FIG. 35A is a diagram illustrating an example of the
図35Bは、実施の形態3に係るサーバB630が備えるファイル記憶部35が記憶している電子ファイル情報35bの例を示す図である。本図は、本実施の形態に係るファイル記憶部35が「ファイルa」と、「ファイルd」と、「ファイルe」とを記憶している例を示す。
FIG. 35B is a diagram illustrating an example of the
図35Cは、実施の形態3に係るサーバC640が備えるファイル記憶部45が記憶している電子ファイル情報45bの例を示す図である。本図は、本実施の形態に係るファイル記憶部45が「ファイルb」と、「ファイルd」と、「ファイルe」とを記憶している例を示す。
FIG. 35C is a diagram illustrating an example of the
図36は、実施の形態3に係るサーバA620が備える機能的構成の例を示すブロック図である。サーバA620は、実施の形態1に係るサーバA20と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に関連する電子ファイルを分散ファイル管理装置610の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態3に係るサーバA620は、実施の形態1に係るサーバA20とは異なり、改竄を検知するために電子ファイルのハッシュ値を計算する。
FIG. 36 is a block diagram illustrating an example of a functional configuration included in the
サーバA620は、ファイル記憶部25と、ユーザ要求受信部71と、要求種別判断部73と、要求情報保持部75と、保持サーバ問合部79と、保持応答受信部81と、ファイル送信要求受信部83と、ファイル送信部85と、ファイル受信部87と、ロック要求送信部89と、更新通知部91と、完了通知受信部93と、ユーザ要求応答部95と、ハッシュ値要求受信部624と、ハッシュ値計算部626と、ハッシュ値送信部628と、記憶部情報要求受信部630と、記憶部情報送信部632と、複写先受信部634と、ファイル記憶制御部677とを備える。
The
実施の形態3に係るサーバA620について、実施の形態1に係るサーバA20と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。 In the server A620 according to the third embodiment, parts having the same functions as those of the server A20 according to the first embodiment are denoted by the same reference numerals, and description thereof is omitted here.
ハッシュ値要求受信部624は、分散ファイル管理装置610から、特定の電子ファイルのハッシュ値の要求を受信する部位である。
The hash value
ハッシュ値計算部626は、ハッシュ値要求受信部624が受信した要求に係る電子ファイルをファイル記憶制御部77を介して取得し、その電子ファイルのハッシュ値を計算する部位である。
The hash
ハッシュ値送信部628は、ハッシュ値計算部626が計算したハッシュ値を分散ファイル管理装置610に送信する部位である。
The hash
記憶部情報要求受信部630は、自身が備えるファイル記憶部25の状態に関する情報、例えば、空き容量などの要求を受信する部位である。
The storage unit information
記憶部情報送信部632は、後述するファイル記憶制御部677からファイル記憶部25の状態を示す情報を取得し、分散ファイル管理装置610に送信する部位である。
The storage unit
複写先受信部634は、書込要求に係る電子ファイルが、いずれのサーバにも保持されていない新規に格納される電子ファイルである場合、その電子ファイルのコピーを格納するサーバ(以下、「複写先サーバ」という。)に関する情報を受信する部位である。
When the electronic file related to the write request is a newly stored electronic file that is not held by any server, the copy
これにより、新規格納に係る電子ファイルは複写先サーバにコピーされるため、同一の電子ファイルを少なくとも2つ以上のサーバが保持することとなる。そのため、ユーザの取得要求に係る電子ファイルを保持するいずれか1つのサーバ、または、サーバが備えるファイル記憶部に障害が発生しても、その電子ファイルは他のサーバにも保持されているため、ユーザは他のサーバから要求に係る電子ファイルを取得することができる。 Thereby, since the electronic file related to the new storage is copied to the copy destination server, at least two or more servers hold the same electronic file. Therefore, even if a failure occurs in any one server that holds the electronic file related to the user's acquisition request or the file storage unit provided in the server, the electronic file is also held in another server, The user can obtain an electronic file related to the request from another server.
ファイル記憶制御部677は、実施の形態1に係るファイル記憶制御部77と同様に、ファイル記憶部25を制御する部位であり、ファイル記憶部25が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部25が記憶している電子ファイルを読み出し、ファイル記憶部25が記憶している電子ファイルを更新し、また、ファイル記憶部25に新たな電子ファイルを格納し、さらに、ファイル記憶部25の空き容量などファイル記憶部25の状態を示す情報を取得する。
Similarly to the file
以上が、本実施の形態に係るサーバA620が備える機能的構成である。サーバB630およびサーバC640も、サーバA620と同様の機能的構成を備える。
The above is the functional configuration of the
図37は、実施の形態3に係る分散ファイル管理装置610が備える機能的構成の例を示すブロック図である。実施の形態3に係る分散ファイル管理装置610と、実施の形態1に係る分散ファイル管理装置10との違いは、実施の形態3に係る分散ファイル管理装置610が、取得要求に係る電子ファイルのハッシュ値をサーバから取得することにより、最新かつ正しい内容を有する電子ファイルをユーザに送信し、また、1つの電子ファイルを少なくとも2つのサーバが保持するように管理することである。
FIG. 37 is a block diagram illustrating an example of a functional configuration included in the distributed
分散ファイル管理装置610は、問合受付部102と、保持応答送信部106と、ファイル送信要求部108と、更新通知受付部110と、保持情報更新部112と、更新完了通知部114と、ロック要求受信部116と、ロック情報保持部118と、保持サーバ記憶部700と、保持サーバ判断部704と、ハッシュ値要求部728と、ハッシュ値受信部730と、更新許可要求受信部732と、ハッシュ値初期化部734と、更新許可送信部736と、記憶部情報要求部738と、記憶部情報受信部740と、複写先判定部742と、複写先送信部744とを備える。
The distributed
保持サーバ記憶部700は、実施の形態1に係る保持サーバ記憶部100と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部である。保持サーバ記憶部700は、例えば、HDにより実現される。
The holding
実施の形態3に係る管理サーバ情報700aは、図6を参照して説明した実施の形態1に係る管理サーバ情報100aと同様であるため、ここでの説明は省略する。
Since the management server information 700a according to the third embodiment is the same as the
実施の形態3に係るファイル保持情報の具体例について、図38を参照して説明する。 A specific example of the file holding information according to the third embodiment will be described with reference to FIG.
図38は、保持サーバ記憶部700が記憶しているファイル保持情報700bの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報700bは、「ファイルパス」と、「サーバ名」と、「ハッシュ値」とから構成される。
FIG. 38 is a diagram illustrating an example of the
本実施の形態に係るファイル保持情報700bの「ファイルパス」と、「サーバ名」とは、図7を参照して説明した実施の形態1に係るファイル保持情報100bの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
The “file path” and “server name” of the
「ハッシュ値」には、サーバにおいて算出された正規の電子ファイルのハッシュ値が格納される。ここで、「正規の電子ファイル」とは、その電子ファイルを作成または変更する権限を有する者により、作成または変更された電子ファイルをいう。また、本実施の形態に係るハッシュ値は、例えば、予め定められたハッシュ関数を用いて、電子ファイルの全てまたは一部を入力値として算出される値である。ハッシュ関数は全てのサーバにおいて共通して予め定められており、また、入力値が、電子ファイルの全てであるか、または、一部であるか、さらに、一部の場合にはいずれの部分であるかも、全てのサーバにおいて共通して予め定められている。 The “hash value” stores the hash value of the regular electronic file calculated by the server. Here, the “regular electronic file” refers to an electronic file created or changed by a person who has authority to create or change the electronic file. In addition, the hash value according to the present embodiment is a value calculated using, for example, all or part of the electronic file as an input value using a predetermined hash function. The hash function is predetermined in common in all servers, and the input value is all or a part of the electronic file, and in some cases in any part. It may be predetermined in common for all servers.
本図は、例えば、「/data/a」で示されるファイルaについて、「ハッシュ値」が「1932066」であり、保持サーバが「サーバA」および「サーバB」であることを示す。 This figure shows that, for example, for the file a indicated by “/ data / a”, the “hash value” is “19332066” and the holding servers are “server A” and “server B”.
また、本図に示すように、全ての電子ファイルが2つ以上のサーバに保持されている。そのため、例えば、「サーバA」に障害が発生した場合であっても、ファイルaは「サーバB」から、ファイルbは「サーバC」から取得することができる。したがって、異なるサーバが電子ファイルを重複して保持することにより、システム全体での耐障害性が向上する。 Also, as shown in the figure, all electronic files are held in two or more servers. Therefore, for example, even when a failure occurs in “server A”, file a can be acquired from “server B” and file b can be acquired from “server C”. Therefore, fault tolerance in the entire system is improved by holding different electronic files in different servers.
ここから、図37の説明に戻る。 From here, it returns to description of FIG.
保持サーバ判断部704は、保持サーバ記憶部700を参照することにより、問合受付部102が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。本実施の形態に係る保持サーバ判断部704は、ユーザの取得要求に係る電子ファイルの保持サーバを判断する場合、正規の内容を有する電子ファイルを保持するサーバを保持サーバと判断する。
The holding
ハッシュ値要求部728は、保持サーバ判断部704が取得要求に係る電子ファイルの保持サーバの候補として判断したサーバに、そのサーバが保持する取得要求に係る電子ファイルのハッシュ値を要求する部位である。
The hash
ハッシュ値受信部730は、ハッシュ値要求部728が要求を送信したサーバから、ハッシュ値を受信する部位である。
The hash
更新許可要求受信部732は、ユーザが電子ファイルを更新する場合に、ユーザが利用する端末60(65)から、その電子ファイルの更新に関する許可の要求を受信する部位である。
The update permission
ハッシュ値初期化部734は、更新許可要求受信部732が更新許可要求を受信した場合に、その更新に係る電子ファイルに対応するファイル保持情報700bの「ハッシュ値」を初期化する部位である。本実施の形態のハッシュ値の初期化では、「ハッシュ値」を「−1」で更新する。
When the update permission
更新許可送信部736は、ハッシュ値初期化部734が「ハッシュ値」を初期化したことを受けて、更新許可要求受信部732が受信した更新許可要求の送信元である端末60(65)に、更新を許可することを内容とする情報を送信する部位である。
In response to the fact that the hash
記憶部情報要求部738は、保持情報更新部112が新規格納に係る更新をした場合に、分散ファイル管理装置610の管理下にある各サーバに、各サーバが備えるファイル記憶部の状態を示す情報(以下、「記憶部情報」という。)を要求する部位である。
The storage unit
本実施の形態に係る「記憶部情報」は、例えば、各ファイル記憶部の空き容量に関連する情報であり、具体的には、全記憶容量に対する空き容量の割合などである。 The “storage unit information” according to the present embodiment is, for example, information related to the free capacity of each file storage unit, and specifically, the ratio of the free capacity to the total storage capacity.
記憶部情報受信部740は、記憶部情報要求部738からの要求に応じて各サーバから送信される記憶部情報を受信する部位である。
The storage unit
複写先判定部742は、記憶部情報受信部740が受信した記憶部情報に基づいて、複写先サーバを判定する部位である。本実施の形態に係る複写先判定部742は、記憶部情報に含まれる空き容量の割合が最大であるサーバを、複写先サーバとする。
The copy
複写先送信部744は、複写先判定部742により複写先サーバと判定されたサーバに関する情報を、アクセス元サーバに送信する部位である。
The copy
以上のような機能を分散ファイル管理装置610および各サーバ620、630、640が備えることにより、実施の形態1と同様に、ユーザは、自己の利用する端末60、65からいずれのサーバにアクセスするかにかかわらず、各サーバ620、630、640のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。
Since the distributed
また、実施の形態2と同様に、複数のサーバが保持する同一の電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。 Further, as in the second embodiment, since the same electronic file held by a plurality of servers is synchronized, the user is conscious of which server holds the electronic file having the latest contents. In addition, an electronic file having the latest contents can be obtained by accessing an arbitrary server.
さらに、同一の電子ファイルを少なくとも2つのサーバが保持するため、もし、1つの保持サーバや保持サーバの記憶部に障害が生じた場合であっても、他の保持サーバから電子ファイルを取得することができ、システム全体での耐障害性を向上させることが可能となる。 Furthermore, since at least two servers hold the same electronic file, even if a failure occurs in one holding server or the storage unit of the holding server, the electronic file is acquired from another holding server. It is possible to improve the fault tolerance of the entire system.
さらに、分散ファイル管理装置610が各ファイルのハッシュ値を保持している。そのため、ハッシュ値を参照して、各サーバが保持する電子ファイルが正規であるか否かを判断でき、電子ファイルの不正な書き換えを防止することが可能となる。
Further, the distributed
図39は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 39 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to
本図に示す「端末」、「アクセス元サーバ」、「保持サーバ」は、図8と同様である。そのため、これらに関するここでの説明は省略する。 The “terminal”, “access source server”, and “holding server” shown in the figure are the same as those in FIG. Therefore, the description here regarding these is omitted.
まず、アクセス元サーバ20(30、40)のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された取得要求を、通信回線50を介して受信する(S401)。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求を内容とする情報である。
First, the user
次に、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
Next, the request
続けて、ファイル記憶制御部677は、自身のファイル記憶部25を参照することにより、自身のファイル記憶部25が取得要求に係る電子ファイルを記憶保持しているか否かを判断する(S402)。
Subsequently, the file
電子ファイルを保持していないと判断した場合(S402でNo)、続けて、保持サーバ問合部79は分散ファイル管理装置10に保持サーバを問合せ、問合受付部102は保持サーバの問合わせを受け付ける(S403)。
When it is determined that the electronic file is not held (No in S402), the holding
続けて、保持サーバ判断部704は、保持サーバ記憶部100のファイル保持情報100bを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する(S404)。
Subsequently, the holding
アクセス元サーバ以外に保持サーバがないと判断した場合(S404でNo)、続けて、保持応答送信部106は不保持通知を送信し、保持応答受信部81は不保持通知を受信する(S405)。
If it is determined that there is no holding server other than the access source server (No in S404), then the holding
続けて、ユーザ要求応答部95は、不保持通知をファイル記憶制御部77を介して取得すると、取得要求を送信した端末60(65)に不保持通知を送信して(S406)、処理を終了する。
Subsequently, when the user
また、アクセス元サーバ以外に保持サーバがあると判断した場合(S404でYes)、続けて、ハッシュ値要求部728は、取得要求に係る電子ファイルのハッシュ値の要求を保持サーバに送信し、保持サーバのハッシュ値要求受信部624はハッシュ値の要求を受信する(S407)。
If it is determined that there is a holding server other than the access source server (Yes in S404), the hash
続けて、ハッシュ値計算部626は、ファイル記憶制御部677にファイル記憶部25から取得要求に係る電子ファイルを取得させ、ファイル記憶制御部677からその電子ファイルを取得し、その電子ファイルのハッシュ値を計算する(S408)。
Subsequently, the hash
続けて、ハッシュ値送信部628はハッシュ値計算部626が計算したハッシュ値を送信し、ハッシュ値受信部730はハッシュ値を受信する(S409)。
Subsequently, the hash
続けて、保持サーバ判断部704は、保持サーバ記憶部700のファイル保持情報700bに含まれるハッシュ値と、ハッシュ値受信部730が受信したハッシュ値とが一致するか否かにより、保持サーバが保持する電子ファイルが正規であるか否かを判断する(S410)。
Subsequently, the holding
ファイル保持情報700bに含まれるハッシュ値と、ハッシュ値受信部730が受信したハッシュ値とが一致しない場合、保持サーバ判断部704は正規ではないと判断する(S410でNo)。
If the hash value included in the
この場合、続けて、保持応答送信部106は不保持通知を送信し、保持応答受信部81は不保持通知を受信する(S411)。
In this case, subsequently, the holding
続けて、ユーザ要求応答部95は、不保持通知をファイル記憶制御部677を介して取得すると、取得要求を送信した端末60(65)に不保持通知を送信して(S412)、処理を終了する。
Subsequently, when the non-holding notification is acquired via the file
また、ファイル保持情報700bに含まれるハッシュ値と、ハッシュ値受信部730が受信したハッシュ値とが一致する場合、保持サーバ判断部704は正規であると判断する(S410でYes)。
If the hash value included in the
この場合、続けて、ファイル送信要求部108は、保持サーバにファイル送信要求を送信し、ファイル送信要求受信部83はファイル送信要求を受信する(S413)。ここで、「ファイル送信要求」とは、ユーザの取得要求に係る電子ファイルをアクセス元サーバに送信することを内容とし、保持サーバに送信される要求である。
In this case, subsequently, the file
続けて、ファイル記憶制御部677は、ファイル送信要求部108が受信したファイル送信要求を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部から読み出す(S414)。
Subsequently, the file
続けて、保持サーバのファイル送信部85はユーザの取得要求に係る電子ファイルを送信し、アクセス元サーバのファイル受信部87はその電子ファイルを受信する(S415)。
Subsequently, the
続けて、アクセス元サーバのファイル記憶制御部677は、ファイル受信部87が受信した電子ファイルを自身のファイル記憶部25に格納する(S416)。
Subsequently, the file
続けて、アクセス元サーバのユーザ要求応答部95は、ユーザの取得要求に係る電子ファイルをファイル記憶制御部677から取得し、ユーザが利用する端末60(65)に送信する(S417)。
Subsequently, the user
続けて、アクセス元サーバの更新通知部91はファイル記憶制御部677の格納処理(S416)が終了したことを受けて、更新通知を送信し、更新通知受付部110は更新通知を受け付ける(S418)。
Subsequently, the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部700のファイル保持情報700bを更新し(S419)、処理を終了する。
Subsequently, the holding
また、電子ファイルを保持していると判断した場合(S402でYes)、続けて、ハッシュ値計算部626は、その電子ファイルのハッシュ値を計算する(S420)。
If it is determined that the electronic file is held (Yes in S402), the hash
続けて、ハッシュ値送信部628はハッシュ値計算部626が計算したハッシュ値を送信し、ハッシュ値受信部730はハッシュ値を受信する(S421)。
Subsequently, the hash
続けて、保持サーバ判断部704は、S410における判断処理と同様に、保持サーバが保持する電子ファイルが正規であるか否かを判断する(S422)。
Subsequently, the holding
保持サーバ判断部704が正規であると判断した場合(S422でYes)、続けて、保持応答送信部106は、アクセス元サーバに保持通知を送信し、保持応答受信部81は保持通知を受信する(S423)。
If the holding
続けて、ファイル記憶制御部677は、保持応答受信部81が受信した保持通知を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部25から読み出す(S424)。
Subsequently, in response to the holding notification received by the holding
続けて、ユーザ要求応答部95はユーザの取得要求に係る電子ファイルをファイル記憶制御部677から取得し、ユーザが利用する端末60(65)に送信し(S425)、アクセス元サーバは処理を終了する。
Subsequently, the user
また、保持サーバ判断部704が正規ではないと判断した場合(S410でNo)、続けて、保持サーバ判断部704は、S404における判断処理と同様に、保持サーバ記憶部100のファイル保持情報100bを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する(S426)。
Further, when the holding
アクセス元サーバ以外に保持サーバがないと判断した場合(S426でNo)、続けて、保持応答送信部106は不保持通知を送信し、保持応答受信部81は不保持通知を受信する(S427)。
If it is determined that there is no holding server other than the access source server (No in S426), then the holding
続けて、ユーザ要求応答部95は、不保持通知をファイル記憶制御部677を介して取得すると、取得要求を送信した端末60(65)に不保持通知を送信し(S428)、アクセス元サーバは処理を終了する。
Subsequently, when the non-holding notification is acquired via the file
アクセス元サーバ以外に保持サーバがあると判断した場合(S426でYes)、続けて、ハッシュ値送信部628はS407と同様に、ハッシュ値要求部728と保持サーバのハッシュ値要求受信部624とは、取得要求に係る電子ファイルのハッシュ値の要求を送受信する(S429)。
If it is determined that there is a holding server other than the access source server (Yes in S426), the hash
本図に示す、S430以降における処理は、上記のS408以降における処理と同様である。詳しくは、S430からS432までの処理はS408からS410までの処理とそれぞれ同じであり、S427とS428とにおける処理はS411とS412とにおける処理とそれぞれ同じであり、S433からS437までの処理はS413からS417までの処理とそれぞれ同じである。そのため、これらの処理に関するここでの説明は、省略する。 The processing after S430 shown in the figure is the same as the processing after S408. Specifically, the processing from S430 to S432 is the same as the processing from S408 to S410, the processing at S427 and S428 is the same as the processing at S411 and S412, respectively, and the processing from S433 to S437 is from S413. The processing is the same as the processing up to S417. Therefore, the description here regarding these processes is omitted.
図40は、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 40 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to
本図に示す「端末」と、「アクセス元サーバ」とは、図8に示す「端末」と、「アクセス元サーバ」と、それぞれ同様であるため、ここでの説明は省略する。 The “terminal” and the “access source server” shown in the figure are the same as the “terminal” and the “access source server” shown in FIG. 8, respectively, and thus description thereof is omitted here.
本図に示す「複写先サーバ」は、分散ファイル管理装置610により新規格納に係る電子ファイルの複写先と判断されたサーバである。本実施の形態における複写先サーバは、サーバA620、サーバB630またはサーバC640のいずれか1つである。
The “copy destination server” shown in this figure is a server determined by the distributed
まず、アクセス元サーバ20(30、40)のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された格納要求を、通信回線50を介して受信する(S501)。ここで、「格納要求」とは、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
First, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「書込要求」と「格納要求」とのいずれであるかを判断する。本図は、格納要求に係る処理のタイムチャートであるため、この判断を省略している。
Subsequently, the request
続けて、要求種別判断部73は、要求情報保持部75に格納要求に係る電子ファイルを保持させる(S502)。
Subsequently, the request
続けて、まず、ロック要求送信部89は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、ロック要求を分散ファイル管理装置10に送信し、ロック要求受信部116はロック要求を受信する(S503)。
Subsequently, the lock
続けて、ロック要求受信部116は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部118に保持させる。これにより、ロック要求に係る電子ファイルの書込要求はロックされる(S504)。
Subsequently, the lock
また、ファイル記憶制御部677は、取得した要求が格納要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部25、35、45に新規格納する(S505)。
Further, the file
続けて、ハッシュ値計算部626は新規格納した電子ファイルのハッシュ値を計算する(S506)。
Subsequently, the hash
続けて、更新通知部91は、分散ファイル管理装置10に更新通知とハッシュ値とを送信し、分散ファイル管理装置10の更新通知受付部110は更新通知とハッシュ値とを受け付ける(S507)。
Subsequently, the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部700のファイル保持情報700bを更新する(S508)。
Subsequently, the holding
続けて、保持情報更新部112は、ロック情報保持部118が保持している情報を消去することにより、ロックを解除する(S509)。
Subsequently, the holding
続けて、更新完了通知部114は、ファイル記憶制御部677から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部93は完了の通知を受信する(S510)。
Subsequently, the update
続けて、アクセス元サーバのユーザ要求応答部95は、完了通知受信部93が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末60(65)に送信する(S511)。これにより、端末60(65)とアクセス元サーバとの間で実行される処理は終了する。
Subsequently, the user
分散ファイル管理装置610は、S510における更新完了通知部114による完了通知の送信に続けて、複写先判定部742が各サーバのファイル記憶部の空き容量に基づいて複写先サーバを決定する(S512)。この処理の詳細は後述する。
In the distributed
続けて、複写先送信部744は、アクセス元サーバが新規格納した電子ファイルを複写先サーバに送信する要求を、アクセス元サーバに送信し、複写先受信部634はこのファイルの送信要求を受信する(S513)。
Subsequently, the copy
続けて、ファイル記憶制御部677は、自身のファイル記憶部25から新規格納した電子ファイルを読み出す(S514)。
Subsequently, the file
続けて、アクセス元サーバのファイル送信部85は複写先サーバに新規格納した電子ファイルを送信し、複写先サーバのファイル受信部87は新規格納した電子ファイルを受信する(S515)。
Subsequently, the
続けて、複写先サーバのファイル記憶制御部677はファイル記憶部35にファイル受信部87が受信した電子ファイルを新規格納する(S516)。
Subsequently, the file
続けて、複写先サーバの更新通知部91は更新通知を分散ファイル管理装置610に送信し、更新通知受付部110は更新通知を受信する(S517)。
Subsequently, the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部700のファイル保持情報700bを更新して(S518)、処理を終了する。
Subsequently, the holding
図41は、図40に示す複写先決定処理(S512)の詳細であり、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 41 shows details of the copy destination determination processing (S512) shown in FIG. 40, and is a time chart showing an example of processing executed in each device constituting the distributed file management system according to
まず、記憶部情報要求部738は、各サーバ、すなわち、本実施の形態ではサーバA620と、サーバB630と、サーバC640とに記憶部情報の送信要求を送信し、各サーバの記憶部情報要求受信部630はその送信要求を受信する(それぞれ、S551と、S552と、S553とに対応する。)。
First, the storage unit
続けて、サーバA620のファイル記憶制御部677は自身のファイル記憶部25を参照することにより記憶部情報を取得または算出する(S554)。
Subsequently, the file
サーバB630とサーバC640とのファイル記憶制御部677も、同様に記憶部情報を取得する(それぞれ、S555と、S556とに対応する。)。
Similarly, the file
続けて、記憶部情報受信部740は、各サーバ、すなわち、本実施の形態ではサーバA620と、サーバB630と、サーバC640から、各サーバのファイル記憶部25と、ファイル記憶部35と、ファイル記憶部45とに関する記憶部情報を受信する(それぞれ、S557と、S558と、S559とに対応する。)。
Subsequently, the storage unit
続けて、複写先判定部742は分散ファイル管理装置610が管理する全てのサーバから記憶部情報を受信したか否かを判断する(S560)。
Subsequently, the copy
記憶部情報を受信していないサーバが1つでもある場合、全てのサーバから記憶部情報を受信していないと判断し(S560でNo)、複写先判定部742は待機する。
If there is even one server that has not received the storage unit information, it is determined that the storage unit information has not been received from all servers (No in S560), and the copy
全てのサーバから記憶部情報を受信したと判断した場合(S560でYes)、複写先判定部742は取得した記憶部情報に基づいて複写先サーバを決定する(S561)。
If it is determined that storage unit information has been received from all servers (Yes in S560), the copy
以上が、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、ファイル保持情報700bの初期状態を図38に示す内容であるとして、ユーザが端末からファイルfの格納要求をサーバA620に送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的に説明する。
The above is the processing executed in each device constituting the distributed file management system according to the third embodiment of the present invention when the user transmits a storage request from the terminal. Subsequently, assuming that the initial state of the
まず、サーバA620のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信されたファイルfの格納要求を、通信回線50を介して受信する(S501)。
First, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「格納要求」であると判断する。続けて、要求種別判断部73は、要求情報保持部75に格納要求に係るファイルfを保持させる(S502)。
Subsequently, the request
続けて、まず、ロック要求送信部89は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、ロック要求を分散ファイル管理装置10に送信し、ロック要求受信部116はロック要求を受信し(S503)、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部118に保持させる。これにより、ファイルfの書込要求はロックされる(S504)。
Subsequently, the lock
ファイル記憶制御部677は、取得した要求が格納要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部25に新規格納する(S505)。
The file
続けて、ハッシュ値計算部626は新規格納した電子ファイルのハッシュ値を計算する(S506)。ここで算出されたファイルfのハッシュ値は、「1814680」であるとする。
Subsequently, the hash
続けて、更新通知部91は、分散ファイル管理装置10に更新通知とハッシュ値とを送信し、分散ファイル管理装置10の更新通知受付部110は更新通知とハッシュ値とを受け付ける(S507)。
Subsequently, the
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部700のファイル保持情報700bを更新する(S508)。
Subsequently, the holding
ここで、図42は、ユーザが端末60からサーバA620にファイルfの更新要求を送信した場合に、サーバA620から送信された更新通知およびハッシュ値に従って更新された保持サーバ記憶部700のファイル保持情報700cの例を示す図である。
Here, FIG. 42 shows the file holding information of the holding
本図に示すファイル保持情報700cと図38に示すファイル保持情報700bの初期状態との違いは、ファイル保持情報700cでは「ファイルパス」が「/data/f」であり、「ハッシュ値」が「1814680」であり、「サーバ名」が「サーバA」である情報が追加されている点にある。
The difference between the
このようにファイル保持情報を更新(S508)した後、保持情報更新部112はロックを解除し(S509)、更新完了通知部114とアクセス元サーバの完了通知受信部93とは完了通知を送受信し(S510)、アクセス元サーバのユーザ要求応答部95は、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末60(65)に送信する(S511)。
After updating the file holding information in this way (S508), the holding
続けて、分散ファイル管理装置610は複写先サーバを決定する(S512)。
Subsequently, the distributed
複写先決定処理(S512)において、記憶部情報の送信要求の送受信(S551からS553まで)と、記憶部情報の取得処理(S554からS556まで)と、記憶部情報の送受信処理(S557からS559まで)とが実行される。 In the copy destination determination process (S512), transmission / reception of storage unit information transmission requests (from S551 to S553), storage unit information acquisition processing (from S554 to S556), and storage unit information transmission / reception processing (from S557 to S559) ) And are executed.
続けて、複写先判定部742は全てのサーバから記憶部情報を受信するまで待機し(S560でNo)、全てのサーバから記憶部情報を受信した場合(S560でYes)、取得した記憶部情報に基づいて複写先サーバを決定する(S561)。
Subsequently, the copy
ここで、複写先判定部742が取得した記憶部情報が図43に示す内容である場合を例に、複写先サーバを決定する具体例について説明する。
Here, a specific example in which the copy destination server is determined will be described taking the case where the storage unit information acquired by the copy
図43は、記憶部情報を説明するための具体例を示す図である。本実施の形態では、「空き割合」に記載の各割合が、各サーバが備える各ファイル記憶部25、35、45の記憶部情報となる。「空き割合」は、各ファイル記憶部の空き容量の総容量に対する割り合いである。このような、ファイル記憶部の空き容量および総容量の取得と、空き割合の算出とは、ファイル記憶制御部677が行う(S554からS556まで)。
FIG. 43 is a diagram illustrating a specific example for explaining the storage unit information. In the present embodiment, each ratio described in the “vacancy ratio” is storage unit information of each
本図では、例えば、「サーバA」が備えるファイル記憶部25の「記憶部総容量」が「184256MB」(Mega Byte)であり、「記憶部空容量」が「120789MB」であるため、「空き容量」は120789を184256で割った値である「66%」である例を示す。
In this figure, for example, the “total storage capacity” of the
そして、本図では「サーバB」に対応する「空き割合」が「73%」であり、各サーバの中で最大である。 In this figure, the “free ratio” corresponding to “server B” is “73%”, which is the largest among the servers.
そのため、空き割合が本図に示す内容である場合、複写先判定部742は、「サーバB」を複写先サーバと決定する(S561)。
Therefore, when the empty ratio is the content shown in the figure, the copy
このように複写先サーバが決定されると、複写先送信部744とアクセス元サーバであるサーバA620の複写先受信部634とは、ファイルfをサーバB630に送信する要求を送受信する(S513)。
When the copy destination server is determined in this way, the copy
続けて、ファイル記憶制御部677は、自身のファイル記憶部25からファイルfを読み出し(S514)、サーバA620のファイル送信部85とサーバB630のファイル受信部87とはファイルfを送受信する(S515)。
Subsequently, the file
続けて、サーバB630のファイル記憶制御部677はファイル記憶部35にファイルfを格納し(S516)、サーバB630の更新通知部91と更新通知受付部110とは更新通知を送受信する(S517)。
Subsequently, the file
続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知に従って、保持サーバ記憶部700のファイル保持情報700bを更新して(S518)、処理を終了する。
Subsequently, the holding
ここで、図44は、ユーザが端末60からサーバA620にファイルfの更新要求を送信した場合に、各装置における処理が終了した後の保持サーバ記憶部700のファイル保持情報700dの例を示す図である。
Here, FIG. 44 is a diagram illustrating an example of the
本図に示すファイル保持情報700dでは、「ファイルパス」が「/data/f」である情報に対応付けられた「サーバ名」に、図42に示すファイル保持情報700cの「サーバA」に加えて「サーバB」が格納されている。
In the
以上が、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理である。次に、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理について説明する。
The above is the processing executed in each device constituting the distributed file management system according to
図45は、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態3に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
FIG. 45 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to
まず、更新許可要求受信部732は、ユーザが利用する端末60(65)から、特定の電子ファイルの更新の許可の要求を受信する(S601)。
First, the update permission
続けて、ハッシュ値初期化部734は、更新許可要求受信部732が受信した要求に含まれる電子ファイルに対応付けられた、ファイル保持情報700bのハッシュ値を初期化する(S602)。
Subsequently, the hash
ここで、図46は、実施の形態3に係る分散ファイル管理装置610が更新許可要求を受信することにより、ハッシュ値が初期化されたファイル保持情報700eの例を示す図である。
Here, FIG. 46 is a diagram illustrating an example of the
本図は、ハッシュ値が初期化される前のファイル保持情報700bが図38に示す内容である場合に、ファイルbの更新許可要求を受信した分散ファイル管理装置610がファイル保持情報700bを更新した例を示す。
In this figure, when the
本実施の形態では、ハッシュ値初期化部734は、更新許可要求に係る「ハッシュ値」に「−1」を格納することにより、ハッシュ値を初期化する。
In the present embodiment, the hash
本図では、ファイルbの更新許可要求であるため、「ファイルパス」が「/data/b」であるファイルbの「ハッシュ値」に「−1」が格納されている。 In this figure, since it is an update permission request for the file b, “−1” is stored in the “hash value” of the file b whose “file path” is “/ data / b”.
ここから、図45の説明に戻る。 From here, it returns to description of FIG.
続けて、更新許可送信部736は、ユーザが利用する端末60(65)に、更新許可要求受信部732が要求を受けた電子ファイルの更新の許可を送信する(S603)。
Subsequently, the update
続けて、アクセス元サーバ20(30、40)のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された更新要求を、通信回線50を介して受信する(S201)。ここで、「更新要求」とは、アクセス元サーバが保持している電子ファイルを更新する要求を内容とする情報である。
Subsequently, the user
続けて、要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「更新要求」と「格納要求」とのいずれであるかを判断する。本図は、更新要求に係る処理のタイムチャートであるため、この判断を省略している。
Subsequently, the request
続けて、要求種別判断部73は、要求情報保持部75に更新要求に係る電子ファイルを保持させる(S605)。
Subsequently, the request
続く、ロック要求の送受信処理(S606)と、ロック処理(S607)とは、図9に示すロック要求の送受信処理(S203)と、ロック処理(S204)と、それぞれ同じである。そのため、これらに関するここでの説明は省略する。 The lock request transmission / reception process (S606) and the lock process (S607) are the same as the lock request transmission / reception process (S203) and the lock process (S204) shown in FIG. Therefore, the description here regarding these is omitted.
続けて、ファイル記憶制御部677は、取得した要求が更新要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持している電子ファイルを取得し、取得したその電子ファイルにより、自身のファイル記憶部25、35、45が記憶している電子ファイルを更新する(S608)。
Subsequently, the file
続けて、ファイル記憶制御部677は、更新が完了したか否かを判断する(S609)。
Subsequently, the file
まず、更新が完了していないと判断した場合(S609でNo)、ハッシュ値計算部626は待機する。
First, when it is determined that the update has not been completed (No in S609), the hash
また、更新が完了したと判断した場合(S609でYes)、ハッシュ値計算部626は、ファイル記憶制御部677から更新に係る新たな電子ファイルを取得し、その電子ファイルのハッシュ値を計算する(S610)。
If it is determined that the update has been completed (Yes in S609), the hash
続けて、図40に示すS507およびS508における処理と同様に、アクセス元サーバの更新通知部91と分散ファイル管理装置610の更新通知受付部110とは、更新通知とハッシュ値とを送受信し(S611)、続けて、保持情報更新部112は、更新通知受付部110から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部700のファイル保持情報700bを更新する(S612)。
Subsequently, similarly to the processing in S507 and S508 shown in FIG. 40, the
ここで、図47は、実施の形態3において、ユーザが端末から更新要求を送信した場合に、その要求に係る電子ファイルの更新処理を実行した後のファイル保持情報の例を示す図である。本図は、ファイルbを更新した場合の例であり、新たなファイルbの「ハッシュ値」が「3417510」である例を示す。 Here, FIG. 47 is a diagram illustrating an example of the file holding information after executing the update process of the electronic file related to the request when the user transmits an update request from the terminal in the third embodiment. This figure is an example when the file b is updated, and shows an example in which the “hash value” of the new file b is “3417510”.
ここから、図45の説明に戻る。 From here, it returns to description of FIG.
続けて、保持情報更新部112によるロック解除処理(S613)から、アクセス元サーバのユーザ要求応答部95によるユーザが利用する端末60(65)への完了通知の送信処理(S615)までは、図40に示すS509からS511までにおける処理とそれぞれ同様であるため、ここでの説明は省略する。
Subsequently, from the unlocking process (S613) by the holding
続けて、保持サーバ判断部704は、保持情報更新部112がファイル保持情報500bを更新したことを受けて、保持サーバを抽出する(S616)。
Subsequently, the holding
続けて、ファイル送信要求部108は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ320のファイル送信要求受信部83はファイル送信要求を受信する(S617)。
Subsequently, the file
続けて、ファイル記憶制御部677は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部25から読み出す(S618)。
Subsequently, the file
続けて、アクセス元サーバ320のファイル送信部85は、ファイル記憶制御部677が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部87はその電子ファイルを受信する(S619)。
Subsequently, the
続けて、保持サーバのファイル記憶制御部677は、ファイル受信部87が受信した電子ファイルにより自身のファイル記憶部25が記憶している電子ファイルを更新する(S620)。
Subsequently, the file
実施の形態3において、ユーザが利用する端末60(65)に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態1において図16から図18までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。 In the third embodiment, examples of the input screen and the result display screen displayed on the monitor connected to the terminal 60 (65) used by the user are described with reference to FIGS. 16 to 18 in the first embodiment. This is the same as the example of the input screen and the result display screen described above. Therefore, explanation here is omitted.
以上、本発明の実施の形態3に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
The distributed file management device and the distributed file management system according to
例えば、本実施の形態では、「記憶部情報」を記憶部の「空き容量の割合」としたが、「記憶部情報」は「空き容量」そのものでもよい。 For example, in this embodiment, “storage unit information” is “ratio of free space” of the storage unit, but “storage unit information” may be “free space” itself.
また例えば、本実施の形態では、図46に示すようにファイル保持情報700eの「ハッシュ値」に「−1」を格納することによりハッシュ値を初期化することとしたが、初期化のためにハッシュ値に格納される値は「−1」に限られず、ハッシュ値としてとり得ない値であればよい。また、NULL値が格納されてもよい。
For example, in the present embodiment, as shown in FIG. 46, the hash value is initialized by storing “−1” in the “hash value” of the
(実施の形態4)
実施の形態1から実施の形態3までに説明したように、本発明に係る分散ファイル管理システムでは、電子ファイルに係るユーザの要求を処理するためには分散ファイル管理装置が不可欠である。そのため、障害などにより分散ファイル管理装置が機能しなくなると電子ファイルに係るユーザの要求を処理できず、そのため、分散ファイル管理システムも機能しなくなるという問題がある。
(Embodiment 4)
As described in the first to third embodiments, in the distributed file management system according to the present invention, a distributed file management apparatus is indispensable for processing a user request related to an electronic file. For this reason, if the distributed file management apparatus does not function due to a failure or the like, there is a problem that the user's request regarding the electronic file cannot be processed, and therefore the distributed file management system also does not function.
そこで、実施の形態4では、耐障害性に優れた分散ファイル管理システムを提供する。 Therefore, in the fourth embodiment, a distributed file management system having excellent fault tolerance is provided.
図48から図62までを参照して、本発明に係る実施の形態4について説明する。 A fourth embodiment according to the present invention will be described with reference to FIGS. 48 to 62. FIG.
図48は、本発明の実施の形態4に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態4に係る分散ファイル管理システムは、実施の形態1から実施の形態3までと同様に、アクセス元サーバがいずれであるかにかかわらず、電子ファイルに関するユーザの要求に応じるシステムである。 FIG. 48 is a diagram showing an outline of the configuration of the distributed file management system according to Embodiment 4 of the present invention. Similar to the first to third embodiments, the distributed file management system according to the fourth embodiment is a system that responds to user requests regarding electronic files, regardless of which access server is the one.
本実施の形態に係る分散ファイル管理システムは、通信回線50を介して接続された、サーバA820、サーバB830およびサーバC840と、端末a60および端末b65とから構成される。本実施の形態に係る分散ファイル管理システムを構成する要素について、実施の形態1に係る分散ファイル管理システムを構成する要素と同様の機能を有する要素には、同一の参照符号を付しており、これらの要素に関する説明は省略する。
The distributed file management system according to the present embodiment includes a
本実施の形態に係る各サーバ820、830、840は、各サーバに保持されている電子ファイルを管理する分散ファイル管理装置の機能を備え、また、電子ファイルを保持し、ユーザの要求を受け付け、ユーザの要求を受け付けた場合に分散ファイル管理装置または他のサーバと連携してその要求に対する応答をするファイルサーバの機能をも備える。
Each
各サーバのいずれか1台が分散ファイル管理装置として機能する。本実施の形態ではサーバが分散ファイル管理装置となる順位が予め定められ、稼動しているサーバの中で最も順位の高いサーバが分散ファイル管理装置として機能する。これにより、分散ファイル管理装置として機能しているサーバが障害などのために稼動を停止しても、他のサーバが分散ファイル管理装置となることができ、耐障害性を向上させることが可能となる。 Any one of the servers functions as a distributed file management device. In the present embodiment, the order in which servers are distributed file management apparatuses is determined in advance, and the server having the highest rank among the operating servers functions as the distributed file management apparatus. As a result, even if a server functioning as a distributed file management device stops operating due to a failure or the like, another server can become a distributed file management device, and fault tolerance can be improved. Become.
本実施の形態では、分散ファイル管理装置として機能しているサーバを「管理装置サーバ」という。 In the present embodiment, a server functioning as a distributed file management device is referred to as a “management device server”.
また、各サーバは電子ファイルを記憶保持するためのファイル記憶部を備え、本実施の形態に係るサーバA820はファイル記憶部25を備え、サーバB830はファイル記憶部35を備え、サーバC840はファイル記憶部45を備える。
Each server includes a file storage unit for storing and holding electronic files, the
ここで、実施の形態4に係る分散ファイル管理システムにおいても各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は共通しており、具体的には、図2に示すフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。 Here, also in the distributed file management system according to the fourth embodiment, the folder structure of the electronic file stored in the file storage unit provided in each server is common, and specifically, the folder structure shown in FIG. It is the same. Therefore, the description here regarding the folder structure is omitted.
また、実施の形態4に係る各ファイル記憶部25、35、45が記憶している電子ファイルの具体例について、図を参照して説明する。
A specific example of the electronic file stored in each
図49A〜図49Cは、実施の形態4に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。 49A to 49C are diagrams illustrating specific examples of electronic files stored in a file storage unit included in each server according to the fourth embodiment.
図49Aは、実施の形態4に係るサーバA820が備えるファイル記憶部25が記憶している電子ファイル情報25dの例を示す図である。本図は、本実施の形態に係るファイル記憶部25が「ファイルa」と、「ファイルb」とを記憶している例を示す。
FIG. 49A is a diagram illustrating an example of the
図49Bは、実施の形態4に係るサーバB830が備えるファイル記憶部35が記憶している電子ファイル情報35dの例を示す図である。本図は、本実施の形態に係るファイル記憶部35が「ファイルa」と、「ファイルd」と、「ファイルe」とを記憶している例を示す。
FIG. 49B is a diagram illustrating an example of the
図49Cは、実施の形態4に係るサーバC840が備えるファイル記憶部45が記憶している電子ファイル情報45dの例を示す図である。本図は、本実施の形態に係るファイル記憶部45が「ファイルd」を記憶している例を示す。
FIG. 49C is a diagram illustrating an example of the
続けて、各サーバが備える機能的構成の例について、サーバA820を例に図を参照して説明する。
Subsequently, an example of a functional configuration included in each server will be described with reference to the drawings by taking the
図50は、実施の形態4に係るサーバA820が備える機能的構成の概要の一例を示すブロック図である。サーバAは電子ファイルを保持するファイルサーバの機能と複数のファイルサーバが保持する電子ファイルを管理する分散ファイル管理装置の機能とをともに備える。
FIG. 50 is a block diagram illustrating an example of an outline of a functional configuration included in the
サーバA820は、ファイルサーバ部900と、管理装置部910と、管理装置判定部920とを備える。
The
ファイルサーバ部900と、管理装置部910と、管理装置判定部920とは内部バス(図示しない)を介して相互に接続される。したがって、ファイルサーバ部900と、管理装置部910と、管理装置判定部920とが有する各部位は、サーバA820の内部では内部バスを介して情報を送受信する。ファイルサーバ部900と、管理装置部910と、管理装置判定部920とに含まれる部位の詳細については後述する。
The
また、ファイルサーバ部900と、管理装置部910と、管理装置判定部920とは、通信回線50を介して、端末60、65または他のサーバと情報を送受信する。
In addition, the
ファイルサーバ部900は、ファイルサーバとしての機能を実現する部位である。すなわち、ファイルサーバ部900は、ユーザの要求または管理装置サーバから送信される要求を受信する。そして、ファイルサーバ部900は、受信したこれらの要求に応じた処理を実行する。
The
管理装置部910は、分散ファイル管理装置としての機能を実現する部位である。すなわち、管理装置部910は、サーバA820、サーバB830、または、サーバC840が保持する電子ファイルに関する情報を管理し、また、サーバA820が管理装置サーバである場合には、他のサーバからの問合せを受け付ける。
The
管理装置判定部920は、他のサーバが備える管理装置判定部と送受信される情報に基づいて、管理装置サーバを判定する部位である。
The management
以上が、本実施の形態に係るサーバA820が備える機能的構成の概要である。次に、各部位が有する機能の詳細を、図を参照して説明する。
The above is the outline of the functional configuration provided in the
図51は、実施の形態4に係るサーバA820のファイルサーバ部900が備える機能的構成の詳細について、その一例を示す図である。
FIG. 51 is a diagram illustrating an example of the details of the functional configuration of the
ファイルサーバ部900は、ファイル記憶部25と、ユーザ要求受信部71と、要求種別判断部73と、要求情報保持部75と、ファイル記憶制御部77と、保持応答受信部81と、ファイル送信要求受信部83と、ファイル送信部85と、ファイル受信部87と、ロック要求送信部89と、完了通知受信部93と、ユーザ要求応答部95と、保持サーバ問合部1079と、更新通知部1091とを有し、これらは、上記のように、管理装置部910および管理装置判定部920と内部バス(図示しない)を介して相互に情報を送受信する。
The
本実施の形態に係るファイルサーバ部900が有する各部位について、図4に示す実施の形態1に係るサーバが備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。
About each part which the
保持サーバ問合部1079は、実施の形態1に係る保持サーバ問合部79と同様に、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線50を介して管理装置910に問い合わせる部位である。保持サーバ問合部1079は、実施の形態1に係る保持サーバ問合部79と異なり、ファイル記憶制御部77から取得する指示に従って、保持サーバを管理装置910に問い合わせる。
Similar to the holding
更新通知部1091は、ファイル記憶制御部77が電子ファイルを格納または更新した場合に、格納または更新された内容を各サーバに通知する部位である。これにより、全てのサーバが、保持サーバに関する最新の情報を保持することが可能となる。
The
図52は、実施の形態4に係るサーバA820の管理装置部910と管理装置判定部920とが備える機能的構成の詳細について、その一例を示す図である。
FIG. 52 is a diagram illustrating an example of the functional configuration of the
まず、管理装置部910は、問合受付部102と、保持サーバ判断部104と、保持応答送信部106と、ファイル送信要求部108と、更新通知受付部110と、保持情報更新部112と、更新完了通知部114と、ロック要求受信部116と、ロック情報保持部118と、保持サーバ記憶部1000とを有し、これらは、上記のように、ファイルサーバ部900および管理装置判定部920と内部バス(図示しない)を介して相互に情報を送受信する。
First, the
本実施の形態に係る管理装置部910が有する各部位について、図5に示す実施の形態1に係る分散ファイル管理装置10が備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。
About each part which the
保持サーバ記憶部1000は、実施の形態1の保持サーバ記憶部100と同様に、管理サーバ情報とファイル保持情報とを記憶している記憶部であり、例えば、HDにより実現される。実施の形態1の保持サーバ記憶部100とは、各情報の内容が異なる。各情報の詳細について図を参照して説明する。
The holding
ここで、図53は、実施の形態4に係る保持サーバ記憶部1000が記憶している管理サーバ情報1000aの一例を示す図である。管理サーバ情報1000aには、管理対象として設定されているサーバを特定するための情報に加えて、各サーバが分散ファイル管理装置として機能する順位を示す情報が含まれる。
FIG. 53 is a diagram illustrating an example of the
本図に示す管理サーバ情報1000aは、「サーバ名」と、「IPアドレス」と、「順位」とにより構成される。「サーバ名」および「IPアドレス」は、実施の形態1に係る「サーバ名」および「IPアドレス」と、それぞれ同一であるため、これらに関するここでの説明は省略する。
The
「順位」は、各サーバが分散ファイル管理装置として機能する順位を内容とする。 The “order” includes the order in which each server functions as a distributed file management apparatus.
本図は、例えば、「サーバ名」が「サーバA」であるサーバの「IPアドレス」が「192.168.xxx.1」であり、その「順位」が「3」である管理サーバ情報を含む。 In this figure, for example, management server information whose “IP address” is “192.168..xxx.1” and whose “rank” is “3” is “server name” is “server A”. Including.
また、「順位」についてみると、「サーバB」が「1」、「サーバC」が「2」、「サーバA」が「3」である。これは、「サーバB」がまず管理装置サーバとなり、「サーバB」が稼動を停止した場合には、次に、「サーバC」が管理装置サーバとなり、さらに、「サーバC」をも稼動を停止した場合には、「サーバA」が管理装置サーバとなることを示す。このような順位は、本実施の形態に係る分散ファイル管理システムの管理者などにより、予め定められる。 Further, regarding “order”, “server B” is “1”, “server C” is “2”, and “server A” is “3”. This is because “server B” first becomes the management device server, and when “server B” stops operating, then “server C” becomes the management device server, and “server C” also operates. When stopped, it indicates that “server A” becomes a management apparatus server. Such an order is predetermined by an administrator of the distributed file management system according to the present embodiment.
次に、図54は、実施の形態4に係る保持サーバ記憶部1000が記憶しているファイル保持情報1000bの一例を示す図である。本実施の形態に係るファイル保持情報1000bの「ファイルパス」と、「サーバ名」とは、図7を参照して説明した実施の形態1に係るファイル保持情報100bの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
Next, FIG. 54 is a diagram illustrating an example of the
本図は、例えば、「サーバA」と「サーバB」とが、「ファイルパス」が「/data/a」である電子ファイルを保持していることを示すファイル保持情報を含む例である。 This figure is an example including file holding information indicating that “server A” and “server B” hold an electronic file whose “file path” is “/ data / a”, for example.
次に、図52に示す管理装置判定部920について説明する。
Next, the management
管理装置判定部920は、管理装置保持部1200と、管理装置通知部1202と、管理装置通知受付部1204と、変更判断部1206と、管理装置決定部1208と、保持サーバ情報取得部1210と、サーバ応答部1212と、サーバ応答受付部1214と、を有する。
The management
管理装置保持部1200は、現在の管理装置サーバを特定するための情報(以下、「管理装置情報」という)を保持している部位である。
The management
管理装置通知部1202は、管理装置保持部1200を参照することにより、自身を備えるサーバが管理装置サーバであるか否かを判断し、自身を備えるサーバが管理装置サーバである場合には、予め定められた時間間隔で各サーバに自身を備えるサーバが現在の管理装置サーバであることを通知する部位である。
The management
ここで、管理装置通知部1202は、管理装置保持部1200に自身を備えるサーバを示す情報が保持されている場合には自身を備えるサーバが管理装置サーバであると判断し、管理装置保持部1200に自身を備えるサーバを示す情報が保持されていない場合には自身を備えるサーバが管理装置サーバでないと判断する。
Here, if the management
管理装置通知受付部1204は、管理装置サーバの管理装置通知部1202からの通知を受け付ける部位である。
The management device
変更判断部1206は、管理装置通知受付部1204が受け付けた通知に基づいて、管理装置サーバの変更が必要か否かを判断する部位である。
The
具体的には、まず、変更判断部1206は、管理装置通知受付部1204が受け付けた応答の送信元が、管理装置保持部1200が保持している情報が示すサーバより順位が高いサーバである場合に、変更が必要であると判断する。このとき、順位を判断するために、保持サーバ記憶部1000の管理サーバ情報1000aを参照する。このように、管理装置保持部1200が保持している情報が示すサーバより順位が高いサーバからの応答を受け付けるのは、一旦ダウンしたサーバが復旧した場合である。従って、各サーバは、ダウンしていたサーバの復旧を検知できる。
Specifically, first, the
次に、変更判断部1206は、管理装置通知受付部1204が通知を受け付けることなく予め定められた時間が経過した場合に、変更が必要であると判断する。このように管理装置通知受付部1204が一定時間通知を受け付けないのは、管理装置サーバに障害が発生するなど、そのサーバの稼動が停止した場合である。従って、各サーバは、管理装置サーバの稼動停止を検知することができる。
Next, the
管理装置決定部1208は、変更判断部1206が分散ファイル管理装置として機能するサーバの変更が必要であると判断した場合に、次の管理装置サーバを、保持サーバ記憶部1000の管理サーバ情報1000aを参照することにより決定し、決定したサーバを特定する情報を管理装置保持部1200に格納する。ここで、管理装置決定部1208は、稼動しているサーバのうち、管理サーバ情報1000aの順位が最も上位のサーバを次の管理装置サーバとして決定する。
When the
保持サーバ情報取得部1210は、サーバの復旧により変更判断部1206が管理装置サーバの変更が必要と判断したことによって、管理装置決定部1208がサーバを決定した場合に、保持サーバ記憶部1000のファイル保持情報1000bを取得する。
The holding server
サーバ応答部1212は、管理装置通知受付部1204が通知を受け付けた場合に、変更判断部1206の判断に従って、管理装置サーバに応答する部位である。
The
まず、サーバ応答部1212は、変更判断部1206が変更の必要がないと判断した場合には、管理装置通知受付部1204が受け付けた通知の送信元に、応答する。
First, when the
また、サーバ応答部1212は、サーバの復旧により変更判断部1206が管理装置サーバの変更が必要と判断した場合には、管理装置決定部1208が決定したサーバに、保持サーバ情報取得部1210が取得したファイル保持情報1000bを含む応答を送信する。
In addition, when the
サーバ応答受付部1214は、他のサーバのサーバ応答部1212から送信された応答を受け付ける部位である。
The server
ここで、受け付けた応答にファイル保持情報1000bが含まれていた場合には、サーバ応答受付部1214は、そのファイル保持情報1000bにより自身の保持サーバ記憶部1000のファイル保持情報1000bを更新する。
Here, when the
応答にファイル保持情報1000bが含まれるのは、応答を受け付けたサーバに障害が発生していた場合である。障害が発生していた間、そのサーバが保持するファイル保持情報1000bは更新できないため、内容が古い場合がある。このように、サーバの復旧時にファイル保持情報1000bを更新することにより、復旧したサーバが直ちに管理装置サーバとして正しく機能することが可能となる。
The
以上が、本実施の形態に係るサーバA820が備える機能的構成である。ここで説明したサーバA820の機能的構成は、ファイルサーバ部900のファイル記憶部25がサーバB830ではファイル記憶部35であり、サーバC840ではファイル記憶部45であることを除いて、共通する。そのため、サーバB830およびサーバC840の機能的構成の説明は省略する。
The above is the functional configuration of the
次に、本実施の形態に係る分散ファイル管理システムにおいて実行される処理について、図を参照して説明する。 Next, processing executed in the distributed file management system according to the present embodiment will be described with reference to the drawings.
図55は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態4に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。 FIG. 55 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to the fourth embodiment of the present invention when the user transmits an acquisition request from the terminal.
本実施の形態では、管理サーバ情報1000aは図53に示す内容であり、従って、順位が最も高い「サーバB」を管理装置サーバとし、各サーバの管理装置保持部1200には「サーバB」を示す情報が保持されているとする。
In the present embodiment, the
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末a60または端末b65のいずれかである。さらに、本図は、サーバA820がアクセス元サーバである例を示す。 Also, the “terminal” shown in the figure is a terminal used by the user, and is either the terminal a60 or the terminal b65 in the present embodiment. Furthermore, this figure shows an example in which the server A820 is an access source server.
従って、本図および本図の説明における、「サーバA」820の処理は「アクセス元サーバ」が実行する処理であり、「サーバB」830の処理は「管理装置サーバ」が実行する処理である。 Therefore, in this figure and the description of this figure, the process of “server A” 820 is a process executed by “access source server”, and the process of “server B” 830 is a process executed by “management device server”. .
まず、サーバB830の管理装置通知部1202が「通知1」を他のサーバに送信し、サーバA820およびサーバC840の管理装置通知受付部1204が「通知1」を、それぞれ受け付ける(S701およびS702)。
First, the management
ここで、「通知1」とは、管理装置サーバであるサーバB830の管理装置通知部1202が、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報をいう。
Here, “
続けて、管理装置保持部1200に保持されている情報により示されるサーバと、管理装置通知受付部1204が「通知1」を受け付けたサーバとは、ともに「サーバB」であるため、サーバA820およびサーバC840の変更判断部1206は変更の必要がないと判断し、この判断を受けたサーバA820およびサーバC840のサーバ応答部1212は「応答1」をサーバB830に送信する。そして、サーバB830のサーバ応答受付部1214は「応答1」を受け付ける(S703およびS704)。
Subsequently, since the server indicated by the information held in the management
ここまでのS701からS704までの処理は、各サーバの管理装置判定部920が管理装置サーバを判定するために継続されている処理である。
The processes from S701 to S704 so far are processes that are continued for the management
続けて、アクセス元サーバであるサーバA820のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された取得要求を、通信回線50を介して受信する(S705)。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルをユーザが利用する端末が取得する要求である。
Subsequently, the user
続けて、サーバA820の要求種別判断部73は、ユーザ要求受信部71が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
Subsequently, the request
続けて、サーバA820のファイル記憶制御部77は、自身のファイル記憶部25が取得要求に係る電子ファイルを記憶しているか否かを判断する(S706)。
Subsequently, the file
自身のファイル記憶部25が取得要求に係る電子ファイルを記憶していると判断した場合(S706でYes)、サーバA820のファイル記憶制御部77は、続けて、ファイル記憶部25から取得要求に係る電子ファイルを読み出す(S707)。
When it is determined that the own
続けて、サーバA820のユーザ要求応答部95は、自身のファイル記憶制御部77から取得要求に係る電子ファイルを取得し、その電子ファイルをユーザが利用する端末60(65)に送信する(S708)。
Subsequently, the user
続けて、自身のファイル記憶部25が取得要求に係る電子ファイルを記憶していないと判断した場合(S706でNo)、サーバA820の保持サーバ問合部1079はサーバB830に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバB830の問合受付部102はその保持サーバの問合せを受け付ける(S709)。
Subsequently, when it is determined that the
続けて、サーバB830の保持サーバ判断部104は、保持サーバ記憶部1000のファイル保持情報1000bを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する(S710)。
Subsequently, the retention
保持サーバがないと判断した場合(S710でNo)、サーバB830の保持応答送信部106はサーバA820に不保持通知を送信する(S711)。
When it is determined that there is no holding server (No in S710), the holding
続けて、サーバA820のユーザ要求応答部95は、ユーザが利用する端末60(65)に不保持通知を送信する(S712)。
Subsequently, the user
また、保持サーバがあると判断した場合(S710でYes)、続けて、サーバB830の保持サーバ判断部104は、サーバB830自身が保持サーバであるか否かを判断する(S713)。
If it is determined that there is a holding server (Yes in S710), the holding
自身が保持サーバであると判断した場合(S713でYes)、続けて、サーバB830のファイル記憶制御部77は、自身の管理装置部910の要求に基づいて、ファイル記憶部35から取得要求に係る電子ファイルを読み出す(S714)。
If it is determined that the server itself is a holding server (Yes in S713), then the file
続けて、サーバB830のファイル送信部85は、自身のファイル記憶制御部77から取得要求に係る電子ファイルを取得し、サーバA820に送信する。そして、サーバA820のファイル受信部87は、サーバBのファイル送信部85が送信した電子ファイルを受信する(S715)。
Subsequently, the
続けて、サーバA820のユーザ要求応答部95は、取得要求に係る電子ファイルをファイル記憶制御部77を介して取得し、ユーザが利用する端末60(65)に送信する(S716)。
Subsequently, the user
続けて、サーバA820のファイル記憶制御部77は、自身のファイル受信部87から取得した電子ファイルを自身のファイル記憶部25に格納する(S717)。
Subsequently, the file
続けて、サーバA820の更新通知部1091は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバB830およびサーバC840に送信し、サーバB830およびサーバC840の更新通知受付部110はその更新通知を受け付ける(S718およびS719)。
Subsequently, the
続けて、サーバA820の更新通知受付部110は上記の更新通知を内部バスを介して自身の更新通知部1091から取得し、サーバA820の保持情報更新部112は、更新通知受付部110から取得した更新通知に従って自身の保持サーバ記憶部1000のファイル保持情報1000bを更新する(S720)。
Subsequently, the update
また、サーバB830およびサーバC840の保持情報更新部112は、それぞれの更新通知受付部110から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部1000のファイル保持情報1000bを更新する(S721およびS722)。
Further, the holding
続けて、S701からS704までにおける処理と同様に、サーバB830とサーバA820との間、および、サーバB830とサーバC840との間で「通知1」が送受信され、また、「応答1」が送受信される(S723からS726まで)。S723はS701に、S724はS702に、S725はS703に、S726はS704に、それぞれ対応する同様の処理であるため、ここでの詳しい説明は省略する。さらに、各サーバの管理装置判定部920は管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。
Subsequently, “
また、自身が保持サーバでないと判断した場合(S713でNo)、続けて、サーバB830のファイル送信要求部108は、取得要求に係る電子ファイルをアクセス元サーバであるサーバA820に送信する要求を、保持サーバに送信する(S727)。ここでは、サーバC840が保持サーバであるとする。
If it is determined that the server itself is not a holding server (No in S713), the file
続けて、保持サーバであるサーバC840のファイル記憶制御部77は、ファイル記憶部25から取得要求に係る電子ファイルを読み出す(S728)。
Subsequently, the file
続けて、サーバC840のファイル送信部85は取得要求に係る電子ファイルをファイル記憶制御部77から取得し、取得した電子ファイルをサーバA820に送信する(S729)。
Subsequently, the
続けて、サーバA820のユーザ要求応答部95は、取得要求に係る電子ファイルをファイル記憶制御部77を介して取得し、ユーザが利用する端末60(65)に送信する(S730)。
Subsequently, the user
続けて、S717以降の処理を実行する。S717以降の処理については、既に説明したため、ここでの説明は省略する。 Subsequently, the processing after S717 is executed. Since the processing after S717 has already been described, description thereof is omitted here.
図56は、ユーザが端末から書込要求を送信した場合に、本発明の実施の形態4に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。 FIG. 56 is a time chart showing an example of processing executed in each device constituting the distributed file management system according to Embodiment 4 of the present invention when the user transmits a write request from the terminal.
ここでも、図55の場合と同様に、管理サーバ情報1000aは図53に示す内容であり、従って、順位が最も高い「サーバB」を管理装置サーバとし、各サーバの管理装置保持部1200には「サーバB」を示す情報が保持されているとする。
Here, as in the case of FIG. 55, the
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末a60または端末b65のいずれかである。さらに、本図は、サーバA820がアクセス元サーバである例を示す。 Also, the “terminal” shown in the figure is a terminal used by the user, and is either the terminal a60 or the terminal b65 in the present embodiment. Furthermore, this figure shows an example in which the server A820 is an access source server.
従って、本図および本図の説明における、「サーバA」820の処理は「アクセス元サーバ」が実行する処理であり、「サーバB」830の処理は「管理装置サーバ」が実行する処理である。 Therefore, in this figure and the description of this figure, the process of “server A” 820 is a process executed by “access source server”, and the process of “server B” 830 is a process executed by “management device server”. .
まず、本図に示すS701からS704までの処理は、分散ファイル管理装置として機能するサーバを各サーバが判定するために継続されている処理であり、図55において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。 First, the processing from S701 to S704 shown in this drawing is processing that is continued for each server to determine the server that functions as the distributed file management device, and is the processing with the same reference numerals in FIG. Each is the same. Therefore, explanation here is omitted.
続けて、アクセス元サーバであるサーバA820のユーザ要求受信部71は、ユーザが利用する端末60(65)から送信された書込要求を、通信回線50を介して受信する(S801)。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
Subsequently, the user
続けて、サーバA820の要求種別判断部73は、自身の要求情報保持部75に書込要求に係る電子ファイルを保持させる(S802)。
Subsequently, the request
続けて、まず、サーバA820のロック要求送信部89は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、ロック要求を分散ファイル管理装置として機能しているサーバB830に送信し、サーバB830のロック要求受信部116はロック要求を受信する(S803)。
Subsequently, first, the lock
続けて、サーバB830のロック要求受信部116は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部118に保持させることにより、ロックする(S804)。
Subsequently, the lock
また、サーバA820のファイル記憶制御部77は、取得した要求が書込要求であるという要求種別判断部73の判断を受けて、要求情報保持部75が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部25に書き込む(S805)。
Further, the file
続けて、サーバA820のファイル記憶制御部77は、書き込みが完了したか否かを判断する(S806)。
Subsequently, the file
書き込みが完了していないと判断した場合(S806でNo)、サーバA820の更新通知部1091は待機する。
When it is determined that the writing has not been completed (No in S806), the
また、書き込みが完了したと判断した場合(S806でYes)、サーバA820の更新通知部1091は、自身のファイル記憶制御部77から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバB830に送信し、サーバB830の更新通知受付部110は更新通知を受け付ける(S807)。
If it is determined that the writing has been completed (Yes in S806), the
続けて、サーバA820の保持サーバ問合部1079は、自身のファイル記憶制御部77から完了の通知を受けて、書込要求に係る電子ファイルの保持サーバの問合せを、サーバB830に送信し、サーバB830の問合受付部102は保持サーバの問合せを受け付ける(S808)。
Subsequently, the holding
続けて、サーバA820の更新通知部1091は、自身のファイル記憶制御部77から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバC840に送信し、サーバC840の更新通知受付部110は更新通知を受け付ける(S809)。
Subsequently, the
続けて、サーバA820の更新通知受付部110は上記の更新通知を内部バスを介して自身の更新通知部1091から取得し、サーバA820の保持情報更新部112は、更新通知受付部110から取得した更新通知に従って自身の保持サーバ記憶部1000のファイル保持情報1000bを更新する(S810)。
Subsequently, the update
また、サーバB830およびサーバC840の保持情報更新部112は、それぞれの更新通知受付部110から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部1000のファイル保持情報1000bを更新する(S811およびS812)。
Further, the holding
続けて、保持情報更新部112は、ロック情報保持部118が保持している情報を消去することにより、ロックを解除する(S813)。
Subsequently, the holding
続けて、更新完了通知部114は、ファイル記憶制御部77から完了の通知を受けて、更新処理の完了をサーバA820に通知し、サーバA820の完了通知受信部93は完了の通知を受信する(S814)。
Subsequently, the update
続けて、サーバA820のユーザ要求応答部95は、完了通知受信部93が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末60(65)に送信する(S815)。
Subsequently, the user
続けて、サーバB830の保持サーバ判断部104は、自身の保持サーバ記憶部1000のファイル保持情報1000bを参照することにより、アクセス元サーバであるサーバA820以外の保持サーバの有無を判断する(S816)。
Subsequently, the holding
保持サーバがあると判断した場合(S816でYes)、サーバB830のファイル送信要求部108は、保持サーバを特定する情報を自身の保持サーバ判断部104から取得することにより、書込要求に係る電子ファイルを保持サーバに送信することを内容とするファイル送信要求をサーバA820に送信し、サーバA820のファイル送信要求受信部83は、ファイルの送信要求を受信する(S817)。本図は、S816で肯定判断された場合の保持サーバが「サーバC」840である場合の例を示す。したがって、以下の「サーバC」840の処理は、「保持サーバ」が実行する処理である。
If it is determined that there is a holding server (Yes in S816), the file
続けて、サーバA820のファイル記憶制御部77は、ファイル送信要求受信部83が受信したファイル送信要求をファイル送信要求受信部83から取得し、自身のファイル記憶部25から書込要求に係る電子ファイルを読み出す(S818)。
Subsequently, the file
続けて、サーバA820のファイル送信部85は、書込要求に係る電子ファイルおよびファイル送信要求をファイル記憶制御部77から取得し、書込要求に係る電子ファイルをサーバC840に送信し、サーバC840のファイル受信部87はその電子ファイルを受信する(S819)。
Subsequently, the
続けて、サーバC840のファイル記憶制御部77は、自身のファイル受信部87からファイル受信部87が受信した電子ファイルを取得し、その電子ファイルにより自身のファイル記憶部45を更新する(S820)。
Subsequently, the file
続けて、本図に示すS722からS725までの処理が継続される。これらの処理は、管理装置サーバを各サーバが判定するために継続されている処理であり、図55において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。さらに、各サーバの管理装置判定部920が管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。
Subsequently, the processing from S722 to S725 shown in the figure is continued. These processes are processes that are continued for each server to determine the management apparatus server, and are the same as the processes denoted by the same reference numerals in FIG. Therefore, explanation here is omitted. Further, the management
次に、各サーバの管理装置判定部920による管理装置判定処理に関連する手順について、図を参照して説明する。
Next, a procedure related to management device determination processing by the management
図57は、管理装置サーバを判定するために各サーバにおいて実行される処理のタイムチャートである。本図は、管理装置サーバであるサーバB830の稼動が停止し、その後、普及した場合に、管理装置サーバを判定するために各サーバにおいて実行される処理の具体例を示すタイムチャートである。
FIG. 57 is a time chart of processing executed in each server to determine the management apparatus server. This figure is a time chart showing a specific example of processing executed in each server in order to determine the management apparatus server when the operation of the
本図では、サーバA820、サーバB830およびサーバC840の保持サーバ記憶部1000の管理サーバ情報1000aは、図53に示す内容であることとする。従って、サーバB830が停止した場合、次の管理装置サーバはサーバC840である。
In this figure, it is assumed that the
まず、管理装置サーバであるサーバB830が停止する(S901)。そのため、サーバB830は、サーバA820およびサーバC840に「通知1」を送信できない。「通知1」に×印を付した本図の記載は、これを表す。
First, the
次に、サーバA820の管理装置判定部920は、管理装置サーバであるサーバB830から一定時間内に通知を受信することができず、そのため、管理装置サーバは、次の順位のサーバであるサーバC840を管理装置サーバと判定し、自身が保持する管理装置情報をサーバB830からサーバC840に変更する(S902)。
Next, the management
ここで、管理装置サーバではない各サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第1管理装置判定処理」といい、その詳細は後述する。 Here, the process that each server that is not the management apparatus server determines the current management apparatus server and intermittently executes it in order to retain the correct management apparatus information is referred to as a “first management apparatus determination process”. Will be described later.
また、サーバC840の管理装置判定部920も、同様に、第1管理装置判定処理において、サーバC840を管理装置サーバと判定し、自身が保持する管理装置情報をサーバB830からサーバC840に変更する(S903)。
Similarly, in the first management device determination process, the management
続けて、管理装置サーバとなったサーバC840の管理装置通知部1202が「通知2」を他のサーバに送信し、サーバA820の管理装置通知受付部1204が「通知2」を受け付ける(S904)。サーバB830は、停止しているため、「通知2」を受け付けることができない(S905)。本図の「通知2」の矢印に付した×は、これを表す。
Subsequently, the management
ここで、「通知2」とは、「通知1」と同様に、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報であり、管理装置サーバであるサーバC840の管理装置通知部1202が送信する通知である。
Here, “
続けて、サーバA820の管理装置判定部920は、第1管理装置判定処理において、管理装置の変更は必要ないと判定する(S906)。
Subsequently, the management
続けて、A820のサーバ応答部1212は「応答2」をサーバC840に送信し、サーバC840のサーバ応答受付部1214は「応答2」を受け付ける(S907)。
Subsequently, the
続けて、サーバA820の管理装置判定部920は第1装置判定処理を継続し、サーバA820およびサーバC840の管理装置判定部920は、「通知2」と「応答2」との送受信を繰り返す(図示していない)。
Subsequently, the management
続けて、サーバB830が復旧したとする(S908)。
Subsequently, it is assumed that the
復旧したサーバB830の管理装置通知部1202は「通知1」を他のサーバに送信し、サーバA820およびサーバC840の管理装置通知受付部1204は「通知1」を、それぞれ受け付ける(S909およびS910)。
The management
続けて、サーバA820の管理装置判定部920は、第1管理装置判定処理において、現在の管理装置サーバとして保持している情報が示すサーバC840よりも順位が上位であるサーバB830から通知を受け付けたため、サーバB830を管理装置サーバと判定し、自身が保持する管理装置情報をサーバC840からサーバB830に変更する(S911)。
Subsequently, because the management
続けて、サーバA820のサーバ応答部1212は「応答1」を送信し、サーバB830のサーバ応答受付部1214は「応答1」をサーバA820から受け付ける(S912)。
Subsequently, the
また、サーバC840の管理装置判定部920は、自身より順位の高いサーバB830から通知を受け付けたため、サーバB830を管理装置サーバと判定し、自身が保持する管理装置情報をサーバC840からサーバB830に変更する(S913)。
Further, since the management
ここで、管理装置サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第2管理装置判定処理」といい、その詳細は後述する。 Here, a process that the management apparatus server determines intermittently in order to determine the current management apparatus server and retain correct management apparatus information is referred to as a “second management apparatus determination process”, and details thereof will be described later.
続けて、サーバC840のサーバ応答部1212は自身の保持サーバ記憶部1000が記憶しているファイル保持情報1000bを含む「応答1」を送信し、サーバB830のサーバ応答受付部1214はファイル保持情報1000bを含む「応答1」をサーバC840から受け付ける(S914)。
Subsequently, the
続けて、ファイル保持情報1000bを含む「応答1」を受け付けたサーバB830のサーバ応答受付部1214は、そのファイル保持情報1000bにより、自身の保持サーバ記憶部1000が記憶しているファイル保持情報1000bを更新する(S915)。これにより、サーバB830が保持するファイル保持情報1000bは最新の内容となる。
Subsequently, the server
続けて、サーバB830の管理装置通知部1202が「通知1」を他のサーバに送信し、サーバA820およびサーバC840の管理装置通知受付部1204が「通知1」を、それぞれ受け付ける(S916およびS917)。
Subsequently, the management
続けて、サーバA820およびサーバC840の管理装置判定部920は、それぞれ、第1管理装置判定処理において、管理装置の変更は必要ないと判定する(S918およびS919)。
Subsequently, the management
続けて、サーバA820およびサーバC840のサーバ応答部1212は「応答1」をサーバB830に送信する。そして、サーバB830のサーバ応答受付部1214は「応答1」を受け付ける(S920およびS921)。
Subsequently, the
続けて、サーバA820およびサーバC840の管理装置判定部920は第1装置判定処理を継続し、サーバA820およびサーバC840の管理装置判定部920は、「通知1」と「応答1」との送受信を繰り返す(図示していない)。
Subsequently, the management
図58は、通常のサーバの管理装置判定部920が実行する第1管理装置処理の詳細なフローチャートである。
FIG. 58 is a detailed flowchart of the first management apparatus process executed by the management
まず、変更判断部1206は、管理装置通知受付部1204が直前に通知を受け付けてから予め定められた一定の時間が経過したか否かを判断する(S1001)。この一定時間は、変更判断部1206が保持している。
First, the
一定時間が経過していないと判断した場合(S1001でNo)、すなわち、直前の通知から一定の時間内に次の通知を受け付けた場合、続けて、変更判断部1206は、管理装置保持部1200が保持している情報と、保持サーバ記憶部1000の管理サーバ情報1000aとを取得し、次の通知の送信元のサーバの順位が、管理装置保持部1200が保持している管理装置情報が示すサーバより上位であるか否かを判断する(S1002)。
When it is determined that the predetermined time has not elapsed (No in S1001), that is, when the next notification is received within a predetermined time from the immediately preceding notification, the
送信元であるサーバが管理装置情報が示すサーバより上位でないと判断した場合(S1002でNo)、変更判断部1206は、管理装置サーバの変更が必要がないと判断し、時間経過の判断処理(S1001)に戻る。
When it is determined that the server that is the transmission source is not higher than the server indicated by the management apparatus information (No in S1002), the
また、一定時間が経過したと判断した場合(S1001でYes)、または、一定時間が経過していないと判断し(S1001でNo)、かつ、送信元であるサーバが管理装置情報が示すサーバより上位であると判断した場合(S1002でYes)、変更判断部1206は管理装置サーバの変更が必要であると判断し、この判断を受けた管理装置決定部1208は管理装置サーバを決定する(S1003)。
If it is determined that a certain time has elapsed (Yes in S1001), or it is determined that the certain time has not elapsed (No in S1001), and the server that is the transmission source is from the server indicated by the management device information If it is determined that the host is higher (Yes in S1002), the
ここで、一定時間が経過したために(S1001でYes)、管理装置サーバの変更が必要と判断された場合には、管理装置決定部1208は、この判断と、管理装置保持部1200が保持している管理装置情報とを変更判断部1206から取得し、さらに、保持サーバ記憶部1000から管理サーバ情報1000aの「順位」を取得し、管理装置情報が示すサーバの次の順位に対応するサーバを、新たな管理装置サーバとして決定する。
Here, when it is determined that the management apparatus server needs to be changed because a certain time has elapsed (Yes in S1001), the management
また、送信元であるサーバが管理装置情報が示すサーバより上位であるために(S1002でYes)、管理装置サーバの変更が必要と判断された場合には、管理装置決定部1208は、この判断と、送信元であるサーバを特定するための情報とを変更判断部1206から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する。
In addition, since the server that is the transmission source is higher than the server indicated by the management device information (Yes in S1002), if it is determined that the management device server needs to be changed, the management
続けて、管理装置決定部1208は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部1200が保持する管理装置情報を更新し、保持させる(S1004)。これにより、通常のサーバの管理装置判定部920による、第1管理装置判定処理は終了する。
Subsequently, the management
図59は、管理装置サーバの管理装置判定部920が実行する第2管理装置処理の詳細なフローチャートである。
FIG. 59 is a detailed flowchart of the second management device process executed by the management
まず、変更判断部1206は、管理装置通知受付部1204が通知を受け付けた場合、その通知の送信元が、自身を備えるサーバより上位であるか否かを判断する(S1100)。
First, when the management device
送信元が自身を備えるサーバより上位ではないと判断した場合(S1100でNo)、変更判断部1206は待機する。
When it is determined that the transmission source is not higher than the server including the transmission source (No in S1100), the
送信元が自身を備えるサーバより上位であると判断した場合(S1100でYes)、管理装置決定部1208は、この判断と、送信元であるサーバを特定するための情報とを変更判断部1206から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する(S1101)。
If it is determined that the transmission source is higher than the server including the transmission source (Yes in S1100), the management
続けて、管理装置決定部1208は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部1200が保持する管理装置情報を更新し、保持させる(S1102)。
Subsequently, the management
続けて、保持サーバ情報取得部1210は、管理装置決定部1208が新たな管理装置サーバとして決定したサーバを特定するための情報を取得すると、自身の保持サーバ記憶部1000のファイル保持情報1000bを取得し、取得したファイル保持情報1000bとサーバを特定するための情報とをサーバ応答部1212に引き渡す(S1103)。
Subsequently, when the management
これにより、管理装置サーバの管理装置判定部920による、第1管理装置判定処理は終了する。
Accordingly, the first management device determination process by the management
次に、実施の形態4に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的な一例を挙げて説明する。 Next, processing executed in each device constituting the distributed file management system according to Embodiment 4 will be described with a more specific example.
図60は、サーバB830の停止中にサーバA820がファイルdの取得要求を受け付けた後に、サーバB830が復旧した場合に、本発明の実施の形態4に係る分散ファイル管理システムを構成する各装置において実行される処理の具体例を示すタイムチャートである。
FIG. 60 shows the configuration of each device constituting the distributed file management system according to the fourth embodiment of the present invention when the
ここでも、各サーバの保持サーバ記憶部1000の管理サーバ情報は、図53に示す管理サーバ情報1000aであるとする。また、各サーバの保持サーバ記憶部1000のファイル保持情報の初めの内容は、図54に示すファイル保持情報1000bであるとする。さらに、各サーバのファイル記憶部25、35、45が記憶している電子ファイル情報の初めの内容は、図49に示す内容であるとする。
Also here, it is assumed that the management server information in the holding
まず、管理装置サーバであるサーバB830が停止してから(S901)、サーバA820が新たに管理装置サーバとなったサーバC840に「応答2」を送信するまで(S907)の処理は、図57において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。この時点での管理装置サーバは、サーバC840に変更されている。
First, after the
続けて、サーバA820のユーザ要求受信部71は、ユーザが利用する端末60(65)から、ファイルdの取得要求を受け付ける(S1201)。
Subsequently, the user
続けて、サーバA820の要求種別判断部73は、ユーザ要求受信部71が受信した要求が「取得要求」であるかを判断し(図示していない)、続けて、サーバA820のファイル記憶制御部77は、自身のファイル記憶部25が取得要求に係る電子ファイルを記憶しているか否かを判断する(S1202)。
Subsequently, the request
図49Aに示すように、サーバA820のファイル記憶部25はファイルdを記憶していない。そのため、サーバA820のファイル記憶制御部77は、自身のファイル記憶部25が取得要求に係る電子ファイルを記憶していないと判断する(S1202でNo)。
As shown in FIG. 49A, the
サーバA820の保持サーバ問合部1079は、ファイル記憶制御部77の判断を受けて、サーバC840に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバB830の問合受付部102はその保持サーバの問合せを受け付ける(S1203)。
In response to the determination of the file
続けて、サーバC840の保持サーバ判断部104は、保持サーバ記憶部1000のファイル保持情報1000bを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する(S1204)。
Subsequently, the holding
図54に示すように、ファイルdの保持サーバは「サーバB」と「サーバC」とであるため、サーバC840の保持サーバ判断部104は、保持サーバがあると判断し(S1204でYes)、続けて、サーバC840自身が保持サーバであるか否かを判断する(S1205)。
As shown in FIG. 54, since the holding servers of the file d are “server B” and “server C”, the holding
上記のように、「サーバC」が保持サーバであるため、自身が保持サーバであると判断し(S1205でYes)、続けて、サーバC840のファイル記憶制御部77は、自身の管理装置部910の要求により、ファイル記憶部45からファイルdを読み出す(S1206)。
As described above, since “Server C” is a holding server, it is determined that the server C is a holding server (Yes in S1205), and then the file
続けて、サーバC840のファイル送信部85は、自身のファイル記憶制御部77からファイルdを取得し、サーバA820に送信する。そして、サーバA820のファイル受信部87はそのファイルdを受信する(S1207)。
Subsequently, the
続けて、サーバA820のユーザ要求応答部95は、ファイルdをファイル記憶制御部77を介して取得し、ユーザが利用する端末60(65)に送信する(S1208)。
Subsequently, the user
続けて、サーバA820のファイル記憶制御部77は、自身のファイル受信部87から取得した電子ファイルを自身のファイル記憶部25に格納する(S1209)。
Subsequently, the file
続けて、サーバA820の更新通知部1091は、自身がファイルdの保持サーバとなったことを内容とする更新通知を、サーバC840に送信し、サーバC840の更新通知受付部110はその更新通知を受け付ける(S1210)。
Subsequently, the
続けて、サーバA820の更新通知受付部110は上記の更新通知を内部バスを介して自身の更新通知部1091から取得し、サーバA820の保持情報更新部112は、更新通知受付部110から取得した更新通知に従って自身の保持サーバ記憶部1000のファイル保持情報1000bを更新する(S1211)。
Subsequently, the update
また、サーバC840の保持情報更新部112は、それぞれの更新通知受付部110から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部1000のファイル保持情報1000bを更新する(S1212)。
Also, the holding
この後、サーバC840とサーバA820とは「通知2」の送受信から(S904)、「応答2」の送受信まで(S907)の処理を継続する。
Thereafter, the
ここまでの処理を終えた時に、各サーバが保持しているファイル保持情報について、図を参照して説明する。 The file holding information held by each server when the processing so far is finished will be described with reference to the drawings.
図61は、サーバB830の停止中に実行されたファイルdの取得要求に関する処理が終了した後の、サーバA820およびサーバC840の保持サーバ記憶部の保持サーバ情報1000cの例を示す図である。サーバA820およびサーバC840の保持サーバ情報1000cには、「ファイルd」の保持サーバに「サーバA」が新たに追加されている。
FIG. 61 is a diagram illustrating an example of the holding
また、図62は、サーバB830の停止中に実行されたファイルdの取得要求に関する処理が終了した後の、サーバB830の保持サーバ記憶部の保持サーバ情報1000bの例を示す図である。サーバB830は停止しているため保持サーバ情報1000dが更新されておらず、「ファイルd」の保持サーバに「サーバA」が新たに追加されていない。
FIG. 62 is a diagram illustrating an example of the holding
このように、停止中のサーバが保持するファイル保持情報1000dは、正しい情報を保持していないことがある。そのため、以下に説明する処理が実行される。 Thus, the file holding information 1000d held by the stopped server may not hold correct information. Therefore, the process described below is executed.
ここから、図60の説明に戻る。 From here, it returns to description of FIG.
サーバB830が復旧したとする(S908)。
It is assumed that the
続けて、サーバB830とサーバA820との「通知1」の送受信から(S909)、サーバBによる保持サーバ情報の更新までは(S915)、図57において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。
Subsequently, the transmission and reception of “
ここで、S914においてサーバC840のサーバ応答部1212が送信する「応答1」には、図61に示す最新のファイル保持情報1000cが含まれる。そのため、「応答1」を受信したサーバB830は、S915において、ファイル保持情報1000cにより、自身の保持サーバ記憶部1000が記憶しているファイル保持情報1000bを更新することができ、復旧したサーバB830は管理装置サーバとして正しく機能することが可能となる。
Here, the “
実施の形態2において、ユーザが利用する端末60(65)に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態1において図16から図18までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。 In the second embodiment, examples of the input screen and the result display screen displayed on the monitor connected to the terminal 60 (65) used by the user will be described with reference to FIGS. 16 to 18 in the first embodiment. This is the same as the example of the input screen and the result display screen described above. Therefore, explanation here is omitted.
以上、本発明の実施の形態4に係る分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。 The distributed file management system according to Embodiment 4 of the present invention has been described above, but the present invention is not limited to this embodiment.
(変形例2)
例えば、本実施の形態に係る分散ファイル管理システムを構成するサーバに、分散ファイル管理装置としての機能を有しないサーバが含まれても構わない。
(Modification 2)
For example, the server constituting the distributed file management system according to the present embodiment may include a server that does not have a function as a distributed file management apparatus.
実施の形態4では、分散ファイル管理システムを構成するサーバが3台の場合を例に説明した。しかし、分散ファイル管理システムを構成するサーバの台数は、より多くても構わない。分散ファイル管理装置としての機能を備えたサーバは、保持サーバ記憶部1000にファイル保持情報を記憶しており、サーバのいずれかのファイル記憶部に変更があると、すべての分散ファイル管理装置としての機能を備えたサーバのファイル保持情報が、同期を保つために、更新される。多数のサーバにより分散ファイル管理システムが構成される場合、このファイル保持情報の同期のための処理および通信情報量が増加する。
In the fourth embodiment, the case where there are three servers constituting the distributed file management system has been described as an example. However, the number of servers constituting the distributed file management system may be larger. A server having a function as a distributed file management device stores file retention information in the retention
したがって、分散ファイル管理システムが多数のサーバにより構成される場合には、そのサーバ群の一部に分散ファイル管理装置の機能を有するサーバを含むことにより、分散ファイル管理システムの耐障害性を向上させることが可能になるとともに、そのサーバ群の一部に分散ファイル管理装置の機能を有しないサーバを含むことにより、各サーバの処理に係る負荷の増加と通信情報量が増加とを抑えることが可能となる。 Therefore, when the distributed file management system is configured by a large number of servers, the fault tolerance of the distributed file management system is improved by including a server having a function of the distributed file management device in a part of the server group. In addition, by including a server that does not have the function of a distributed file management device as part of its server group, it is possible to suppress an increase in the load related to the processing of each server and an increase in the amount of communication information It becomes.
このような実施の形態4に係る一変形例について、図63から図65までを参照して説明する。 Such a modification according to the fourth embodiment will be described with reference to FIGS. 63 to 65. FIG.
図63は、本発明の変形例2に係る分散ファイル管理システムの構成の概要を示す図である。本図に示す分散ファイル管理システムは、サーバA820と、サーバB830と、サーバC840と、サーバD850と、端末a60と、端末b65とから構成され、これらの各装置は通信回線50介して接続されている。すなわち、本図に示す分散ファイル管理システムの構成は、実施の形態4に係る分散ファイル管理システムの構成に、さらに、サーバD850を追加したものである。サーバD850以外の装置は実施の形態4と同様であるため、ここでの詳しい説明は省略する。
FIG. 63 is a diagram showing an outline of the configuration of the distributed file management system according to the second modification of the present invention. The distributed file management system shown in this figure includes a
サーバD850は、他のサーバと同様に、電子ファイルを記憶している記憶部であるファイル記憶部855を備える。サーバD850が他のサーバと異なる点は、分散ファイル管理装置としての機能を備えていないことにある。
The server D850 includes a
そのため、分散ファイル管理装置としての機能を備えるサーバであるサーバA820と、サーバB830と、サーバC840とが備える保持サーバ記憶部1000の管理サーバ情報は、サーバD850が分散ファイル管理装置としての機能を備えていないことが識別できるようになっている。
Therefore, the management server information of the holding
図64は、本発明の変形例2に係る分散ファイル管理装置として機能するサーバが備える保持サーバ記憶部1000の管理サーバ情報1000eの一例を示す図である。
FIG. 64 is a diagram showing an example of
本図に示す管理サーバ情報1000eは、図53に示す実施の形態4に係る管理サーバ情報1000aと同様に、「サーバ名」と、「IPアドレス」と、「順位」とから構成される。本変形において、これらに格納される情報も、実施の形態と同様である。違いは、分散ファイル管理装置としての機能を備えないサーバを識別できるようにするため、そのサーバに対応する「順位」に情報を含まないことである。
The
例えば、本図では、「サーバD」に対応付けて格納されている情報は「IPアドレス」のみであり、「順位」はNULL値である。このように、「順位」がNULL値であることにより、分散ファイル管理装置としての機能を備えたサーバは、「サーバD」が分散ファイル管理装置としての機能を備えないサーバであることを識別でき、例えば、管理装置サーバが停止した場合、サーバD850は次の管理装置サーバの候補とならない。 For example, in this figure, the only information stored in association with “Server D” is “IP address”, and “Rank” is a NULL value. As described above, when “rank” is a NULL value, a server having a function as a distributed file management apparatus can identify that “server D” is a server not having a function as a distributed file management apparatus. For example, when the management apparatus server is stopped, the server D850 is not a candidate for the next management apparatus server.
なお、サーバが分散ファイル管理装置としての機能を備えないことを示す方法は、これに限られない。「順位」がNULL値である他、「順位」を「−1」とするなど、分散ファイル管理装置の機能を備えるサーバに対応付けられた「順位」に付与されない値でもよい。また、分散ファイル管理装置としての機能を有するサーバであるか否かを示すフラグを、さらに追加してもよい。 Note that the method of indicating that the server does not have a function as a distributed file management device is not limited to this. In addition to the “rank” being a NULL value, a value not assigned to the “rank” associated with the server having the function of the distributed file management device, such as “−1” as the “rank”, may be used. In addition, a flag indicating whether the server has a function as a distributed file management apparatus may be further added.
図65は、本発明の変形例2に係る分散ファイル管理装置として機能しないサーバであるサーバD850が備える機能的構成を示すブロック図である。 FIG. 65 is a block diagram showing a functional configuration of a server D850 that is a server that does not function as the distributed file management apparatus according to the second modification of the present invention.
サーバD850は、ファイルサーバ部900と、管理装置判定部1300とから構成される。また、各部位は内部バスで接続されている(図示しない)。
The server D850 includes a
サーバD850のファイルサーバ部900は、図51に示すサーバA820のファイルサーバ部820と同様に、ファイルサーバとしての機能を実現する部位であり、サーバA820のファイルサーバ部820と同様の機能的構成を備える。本図に示すファイルサーバ部900の各部位が備える機能は、図51において同一の参照符号を付したサーバA820のファイルサーバ部820の各部位が備える機能と同様である。そのため、ここでサーバD850のファイルサーバ部900の各部位が備える機能に関する詳細な説明は省略する。
Similar to the
管理装置判定部1300は、図52に示すサーバA820の管理装置判定部920と同様に、管理装置サーバとの間で送受信される情報に基づいて、管理装置サーバを判定する部位である。
Similar to the management
本変形例に係るサーバD850の管理装置判定部1300は、管理装置保持部1400と、管理装置通知受付部1402と、サーバ応答部1412とを有する。
The management
管理装置保持部1400は、図52に示す管理装置保持部1200と同様に、管理装置情報を保持している部位である。
Similar to the management
管理装置通知受付部1402は、図52に示す管理装置通知受付部1204と同様に、管理装置サーバの管理装置通知部1202からの通知を受け付ける部位である。管理装置通知受付部1402は、受け付けた通知の送信元であるサーバを示す情報を管理装置情報として管理装置保持部1400に保持させる。
Similar to the management device
すなわち、分散ファイル管理装置としての機能を備えないサーバの管理装置判定部1300は、通知元であるサーバが管理装置サーバであると判定する。
That is, the management
サーバ応答部1412は、管理装置通知受付部1402が通知を受け付けた場合に、管理装置サーバに応答する部位である。サーバ応答部1412は、管理装置保持部1400が保持している管理装置情報を取得し、取得した管理装置情報により示されるサーバを、応答先である管理装置サーバとする。
The
このような機能を備えることにより、分散ファイル管理装置の機能を有しないサーバは、分散ファイル管理サーバを検知することができ、ユーザからの要求を受け付けた場合には、必要に応じて分散ファイル管理サーバにユーザの要求に係る電子ファイルの保持サーバを問い合わせることができる。 By providing such a function, a server that does not have the function of the distributed file management apparatus can detect the distributed file management server, and if a request from the user is accepted, the distributed file management is performed as necessary. The server can be inquired about the electronic file holding server according to the user's request.
なお、本変形例では分散ファイル管理装置の機能を有しないサーバを1台である場合を例にしたが、複数台であってもよいのはもちろんである。 In this modification, the case where there is one server that does not have the function of the distributed file management apparatus is taken as an example, but it goes without saying that there may be a plurality of servers.
以上、本発明の実施の形態1から実施の形態4までに係る分散ファイル管理システムについて説明したが、本発明は、これらの実施の形態に限定されるものではない。 The distributed file management system according to the first to fourth embodiments of the present invention has been described above, but the present invention is not limited to these embodiments.
例えば、実施の形態1から実施の形態3まででは、分散ファイル管理装置の管理下にあるサーバが3台である場合を例に説明したが、サーバは複数あればよい。また、サーバの台数が多い程、ユーザは電子ファイルの所在を意識することなく所望の電子ファイルを取得することが可能となるなど、各実施の形態における効果は顕著になる。 For example, in the first to third embodiments, the case where there are three servers under the management of the distributed file management apparatus has been described as an example. However, there may be a plurality of servers. In addition, as the number of servers increases, the effect of each embodiment becomes more prominent, such as the user being able to acquire a desired electronic file without being aware of the location of the electronic file.
本発明は、複数のサーバで分散して保持されている電子ファイル群を管理する装置またはシステム等に適用でき、特に、複数のファイルサーバおよび各ファイルサーバを管理する装置により構成されるシステムや、複数のWWW(World Wide Web)サーバおよび各WWWサーバを管理する装置により構成されるシステム等に適用できる。 The present invention can be applied to an apparatus or system for managing an electronic file group distributed and held by a plurality of servers, in particular, a system configured by a plurality of file servers and an apparatus for managing each file server, The present invention can be applied to a system composed of a plurality of WWW (World Wide Web) servers and devices that manage the respective WWW servers.
10、310、510、610 分散ファイル管理装置
15、50 通信回線
20、30、40、320、620、820 サーバ
25、35、45、855 ファイル記憶部
60、65 端末
71 ユーザ要求受信部
73 要求種別判断部
75 要求情報保持部
77、677 ファイル記憶制御部
79、1079 保持サーバ問合部
81 保持応答受信部
83 ファイル送信要求受信部
85 ファイル送信部
87 ファイル受信部
89 ロック要求送信部
91、391、1091 更新通知部
93 完了通知受信部
95 ユーザ要求応答部
100、400、500、700、1000 保持サーバ記憶部
102 問合受付部
104、404、504、704 保持サーバ判断部
106 保持応答送信部
108 ファイル送信要求部
110、410 更新通知受付部
112、412 保持情報更新部
114 更新完了通知部
116 ロック要求受信部
118 ロック情報保持部
322 削除要求受信部
420 削除条件記憶部
422 時計部
424、524 削除対象判断部
426 削除要求部
624 ハッシュ値要求受信部
626 ハッシュ値計算部
628 ハッシュ値送信部
630 記憶部情報要求受信部
632 記憶部情報送信部
634 複写先受信部
728 ハッシュ値要求部
730 ハッシュ値受信部
732 更新許可要求受信部
734 ハッシュ値初期化部
736 更新許可送信部
738 記憶部情報要求部
740 記憶部情報受信部
742 複写先判定部
744 複写先送信部
820、900 ファイルサーバ部
910 管理装置部
920、1300 管理装置判定部
1200、1400 管理装置保持部
1202 管理装置通知部
1204、1402 管理装置通知受付部
1206 変更判断部
1208 管理装置決定部
1210 保持サーバ情報取得部
1212、1412 サーバ応答部
1214 サーバ応答受付部
10, 310, 510, 610 Distributed file management device 15, 50 Communication line 20, 30, 40, 320, 620, 820 Server 25, 35, 45, 855 File storage unit 60, 65 Terminal 71 User request reception unit 73 Request type Determination unit 75 Request information holding unit 77, 677 File storage control unit 79, 1079 Holding server inquiry unit 81 Holding response receiving unit 83 File transmission request receiving unit 85 File transmitting unit 87 File receiving unit 89 Lock request transmitting unit 91, 391, 1091 Update notification unit 93 Completion notification reception unit 95 User request response unit 100, 400, 500, 700, 1000 Retention server storage unit 102 Inquiry reception unit 104, 404, 504, 704 Retention server determination unit 106 Retention response transmission unit 108 File Transmission request unit 110, 410 Update notification Attachment unit 112, 412 Holding information update unit 114 Update completion notification unit 116 Lock request receiving unit 118 Lock information holding unit 322 Deletion request receiving unit 420 Deletion condition storage unit 422 Clock unit 424, 524 Deletion target determination unit 426 Deletion request unit 624 Hash Value request reception unit 626 Hash value calculation unit 628 Hash value transmission unit 630 Storage unit information request reception unit 632 Storage unit information transmission unit 634 Copy destination reception unit 728 Hash value request unit 730 Hash value reception unit 732 Update permission request reception unit 734 Hash Value initialization unit 736 Update permission transmission unit 738 Storage unit information request unit 740 Storage unit information reception unit 742 Copy destination determination unit 744 Copy destination transmission unit 820, 900 File server unit 910 Management device unit 920, 1300 Management device determination unit 1200, 1400 management device holding unit 1202 Management device notification unit 1204, 1402 Management device notification reception unit 1206 Change determination unit 1208 Management device determination unit 1210 Retention server information acquisition unit 1212, 1412 Server response unit 1214 Server response reception unit
Claims (11)
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか1つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。 A distributed file management system for managing electronic files held by a plurality of servers,
The distributed file management system includes: a plurality of servers connected by communication lines; a terminal used by a user who acquires the electronic file from any one of the plurality of servers; and a distributed file management device. Configured,
The distributed file management device includes:
Created by an authorized person that includes the identifier when the terminal receives the request that the terminal obtains the electronic file that includes the user-specified identifier, when the access source server that has received the user's request related to the electronic file Inquiry accepting means for accepting an inquiry as to which holding server is a server holding a genuine electronic file from the access source server;
Holding server storage means for storing file holding information which is information indicating which server holds an electronic file;
A holding server determination unit that determines which of the holding servers is by referring to the file holding information when the inquiry receiving unit receives an inquiry;
File transmission request means for transmitting a file transmission request, which is a request for transmitting an electronic file including the user-specified identifier to the access source server, to a server determined to be a holding server by the holding server determination means. ,
Each of the servers
File storage means for storing the electronic file;
A file transmission request receiving means for receiving the file transmission request transmitted by the file transmission request means;
File storage control means for reading out the electronic file related to the file transmission request from the file storage means;
A file transmission means for acquiring the electronic file read by the file storage control means, and transmitting the acquired electronic file to the access source server;
User request receiving means for receiving a user request related to the electronic file from the terminal;
When the request received by the user request receiving unit is the acquisition request, the electronic request file is transmitted to the terminal that is the transmission source of the acquisition request, and the request received by the user request receiving unit is When the request is a write request, the completion of writing of the electronic file related to the write request is received from the file storage control means, and the terminal that is the source of the write request is notified that the writing has been completed A distributed file management system, comprising: a user request response means for performing
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する
ことを特徴とする請求項1に記載の分散ファイル管理システム。 The holding server storage unit stores file holding information which is information in which the server, an identifier of the electronic file, and a hash value of the electronic file are associated with each other,
The holding server determination unit refers to the file holding information when the inquiry receiving unit receives an inquiry, and the hash value of the electronic file held by the server associated with the user-specified identifier If the hash value associated with the user-specified identifier matches the acquired hash value, the server associated with the user-specified identifier is determined as a holding server. The distributed file management system according to claim 1, wherein:
前記第1判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第1判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第2の判断部とを有し、
前記分散ファイル管理装置は、さらに、
前記問合受付手段が問合せを受け付けることにより、前記第1の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、
前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、
前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、
前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える
ことを特徴とする請求項2に記載の分散ファイル管理システム。 The holding server determining unit refers to the file holding information when the inquiry receiving unit receives an inquiry, and determines a server that holds an electronic file including a user-specified identifier. When,
When the hash value of the electronic file held by the server that is determined to hold the electronic file by the first determination unit is acquired, and the hash value included in the file holding information matches And a second determination unit that determines the server determined to hold the electronic file by the first determination unit as a holding server,
The distributed file management device further includes:
A hash value requesting unit that requests a hash value of the electronic file held by the server to a server that is determined by the first determination unit to hold the electronic file when the inquiry receiving unit receives the inquiry. When,
A hash value receiving means for receiving the hash value of the electronic file related to the request from the server to which the hash value requesting means has transmitted the request;
Each of the servers
File storage means for storing electronic files;
A hash value request receiving means for receiving a request for a hash value of a specific electronic file from the hash value requesting means;
A hash value calculating means for obtaining the specific electronic file included in the request received by the hash value request receiving means from the file storage means and calculating a hash value of the specific electronic file;
The distributed file management system according to claim 2, further comprising: a hash value transmitting unit that transmits the hash value calculated by the hash value calculating unit to the hash value receiving unit.
前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、
前記分散ファイル管理装置は、さらに、
前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、
前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える
ことを特徴とする請求項1から請求項3までのいずれか1項に記載の分散ファイル管理システム。 The inquiry accepting unit may further include an access source server that has received a request to write an electronic file in a file storage unit included in the access source server, and a server that holds the electronic file related to the write request. We accept inquiries about whether
The holding server determining unit further refers to the file holding information when the inquiry receiving unit receives an inquiry based on the write request, thereby identifying the same as the identifier of the electronic file related to the write request. Determine the server that holds the electronic file containing the identifier of
The distributed file management device further includes:
When it is determined by the holding server determination means that there is no server that holds the electronic file, the server determines the server having the largest value indicating the free state of the file storage means provided for storing the electronic file by each server, A copy destination determination unit that determines a server having the largest value indicating an empty state as a server that holds a copy of the electronic file related to the write request;
The copy destination determination unit includes a copy destination transmission unit that transmits to the access source server transmission of an electronic file related to the write request to the server that is determined to hold a copy by the copy destination determination unit. The distributed file management system according to any one of claims 1 to 3.
ことを特徴とする請求項4に記載の分散ファイル管理システム。 The copy destination determining unit, when the holding server determining unit determines that there is no server holding the electronic file, the free capacity of the file storage unit provided for storing the electronic file in each server. 5. The distributed file management system according to claim 4, wherein a server having the largest ratio is determined, and a server having the largest ratio is determined as a server that holds a copy of the electronic file related to the write request.
ことを特徴とする請求項4に記載の分散ファイル管理システム。 The copy destination determination unit is a server having the largest free space in the file storage means provided for each server to store the electronic file when the holding server determination means determines that there is no server holding the electronic file. The distributed file management system according to claim 4, wherein the server having the largest free space is determined as a server that holds a copy of the electronic file related to the write request.
前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項1から請求項6までのいずれか1項に記載の分散ファイル管理システム。 Each of the servers
A file transmission request receiving means for receiving a file transmission request including an identifier of the electronic file transmitted by the file transmission request means;
A file storage control means for reading out an electronic file including the identifier included in the file transmission request from the file storage means;
The file storage control unit includes a file transmission unit that acquires the electronic file read out and transmits the acquired electronic file to the access source server. 7. Distributed file management system described in the section.
他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項1から請求項7までのいずれか1項に記載の分散ファイル管理システム。 Each server further includes:
Comprising file receiving means for receiving an electronic file transmitted from the file transmitting means of another server;
The distributed file management system according to any one of claims 1 to 7, wherein the file storage control unit further writes the electronic file received by the file receiving unit into the file storage unit. .
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項1から請求項8までのいずれか1項に記載の分散ファイル管理システム。 Each server further includes:
An update notification means for notifying the distributed file management device of the difference between the file storage means before and after writing when the file storage control means writes an electronic file to the file storage means;
The distributed file management device includes:
The update notification receiving means for receiving notification by the update notification means, and the holding information updating means for updating the file holding information based on the difference included in the notification received by the update notification receiving means. The distributed file management system according to any one of claims 1 to 8.
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項9に記載の分散ファイル管理システム。 The update notification means writes the electronic file related to the request to the file storage means provided in the access source server when the access source server accepts a request for the terminal to acquire an electronic file including a user-specified identifier. The electronic file identifier related to the acquisition request is notified to the distributed file management device as the difference,
The update notification receiving means receives notification from the update notification means,
In accordance with the notification received by the update notification reception unit, the holding information update unit adds information indicating the access source server and information that associates the identifier of the electronic file included in the difference, The distributed file management system according to claim 9, wherein the file holding information is updated.
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項9に記載の分散ファイル管理システム。 The update notification means writes the electronic file related to the request to the file storage means provided in the access source server when the access source server accepts a request to write the electronic file in the file storage means provided in the access source server. The distributed file management device is notified of the electronic file identifier and hash value related to the write request as the difference,
The update notification receiving means receives notification from the update notification means,
The holding information update unit is configured to receive information indicating the access source server, an identifier of an electronic file included in the difference, and an identifier of the electronic file included in the difference, in response to the notification including the hash value included in the difference received by the update notification receiving unit The distributed file management system according to claim 9, wherein the file holding information is updated by adding a hash value of an electronic file included in the difference.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009165295A JP2009259265A (en) | 2006-07-19 | 2009-07-14 | System for managing distributed files |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006197465 | 2006-07-19 | ||
JP2009165295A JP2009259265A (en) | 2006-07-19 | 2009-07-14 | System for managing distributed files |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008525854A Division JPWO2008010473A1 (en) | 2006-07-19 | 2007-07-17 | Distributed file management system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009259265A true JP2009259265A (en) | 2009-11-05 |
Family
ID=38956804
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008525854A Pending JPWO2008010473A1 (en) | 2006-07-19 | 2007-07-17 | Distributed file management system |
JP2009165295A Pending JP2009259265A (en) | 2006-07-19 | 2009-07-14 | System for managing distributed files |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008525854A Pending JPWO2008010473A1 (en) | 2006-07-19 | 2007-07-17 | Distributed file management system |
Country Status (2)
Country | Link |
---|---|
JP (2) | JPWO2008010473A1 (en) |
WO (1) | WO2008010473A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014533413A (en) * | 2011-11-15 | 2014-12-11 | アルカテル−ルーセント | Method and apparatus for intermediate primary backup replication |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4737283B2 (en) * | 2008-12-19 | 2011-07-27 | 富士ゼロックス株式会社 | Program, information processing apparatus and information processing system |
WO2012108015A1 (en) * | 2011-02-09 | 2012-08-16 | 富士通株式会社 | Data synchronization method, data synchronization program, and data synchronization control device |
US9396277B2 (en) * | 2011-12-09 | 2016-07-19 | Microsoft Technology Licensing, Llc | Access to supplemental data based on identifier derived from corresponding primary application data |
CN111147515B (en) * | 2019-12-31 | 2021-12-17 | 北京深思数盾科技股份有限公司 | Access control method and device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266600A (en) * | 1993-03-12 | 1994-09-22 | Hitachi Ltd | Distributed file system |
JP2002351729A (en) * | 2001-05-22 | 2002-12-06 | Nec Corp | Data sharing system |
JP2003162441A (en) * | 2001-11-28 | 2003-06-06 | Oki Electric Ind Co Ltd | Distributed file-sharing system and file-access control method therefor |
JP2003256144A (en) * | 2002-02-28 | 2003-09-10 | Hitachi Ltd | Storage device |
JP2003296167A (en) * | 2002-03-29 | 2003-10-17 | Fujitsu Social Science Laboratory Ltd | File management system and file management method |
JP2004185263A (en) * | 2002-12-03 | 2004-07-02 | Oki Electric Ind Co Ltd | Dispersed cooperative content delivery system |
JP2005292868A (en) * | 2004-03-31 | 2005-10-20 | Japan Research Institute Ltd | File sharing control system, shared control server and shared control program |
-
2007
- 2007-07-17 JP JP2008525854A patent/JPWO2008010473A1/en active Pending
- 2007-07-17 WO PCT/JP2007/064057 patent/WO2008010473A1/en active Search and Examination
-
2009
- 2009-07-14 JP JP2009165295A patent/JP2009259265A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266600A (en) * | 1993-03-12 | 1994-09-22 | Hitachi Ltd | Distributed file system |
JP2002351729A (en) * | 2001-05-22 | 2002-12-06 | Nec Corp | Data sharing system |
JP2003162441A (en) * | 2001-11-28 | 2003-06-06 | Oki Electric Ind Co Ltd | Distributed file-sharing system and file-access control method therefor |
JP2003256144A (en) * | 2002-02-28 | 2003-09-10 | Hitachi Ltd | Storage device |
JP2003296167A (en) * | 2002-03-29 | 2003-10-17 | Fujitsu Social Science Laboratory Ltd | File management system and file management method |
JP2004185263A (en) * | 2002-12-03 | 2004-07-02 | Oki Electric Ind Co Ltd | Dispersed cooperative content delivery system |
JP2005292868A (en) * | 2004-03-31 | 2005-10-20 | Japan Research Institute Ltd | File sharing control system, shared control server and shared control program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014533413A (en) * | 2011-11-15 | 2014-12-11 | アルカテル−ルーセント | Method and apparatus for intermediate primary backup replication |
Also Published As
Publication number | Publication date |
---|---|
JPWO2008010473A1 (en) | 2009-12-17 |
WO2008010473A1 (en) | 2008-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4931660B2 (en) | Data migration processing device | |
KR101453425B1 (en) | Metadata Server And Metadata Management Method | |
JP5661188B2 (en) | File system and data processing method | |
JP4714778B2 (en) | Archive device, conversion device, and conversion program | |
US8631209B2 (en) | Reusable content addressable stores as building blocks for creating large scale storage infrastructures | |
CN106446159B (en) | A kind of method of storage file, the first virtual machine and name node | |
JP2008204206A (en) | Data distribution and storage system, data distribution method, device to be used for this and its program | |
CN103605726A (en) | Method and system for accessing small files, control node and storage node | |
JP2012089094A5 (en) | ||
JP2009259265A (en) | System for managing distributed files | |
JP2013222373A (en) | Storage system, cache control program, and cache control method | |
KR100977159B1 (en) | Method And System Of File Metadata Management Transparent About Address Changing Of Data Servers And Their Disk Movements | |
JP4713257B2 (en) | Data storage device and version management program | |
CN104951475A (en) | Distributed file system and implementation method | |
JP6836643B1 (en) | Management server, document file management system, document file management method, and document file management program | |
CN101065726A (en) | Usage history based content exchange between a base system and a mobile system | |
JP4241200B2 (en) | Data sharing system and method, and data sharing program | |
JP6241449B2 (en) | Data management system and data management method | |
JP2005063374A (en) | Data management method, data management device, program for the same, and recording medium | |
JP2008250864A (en) | Data storing method, data storing system and information processor | |
JPS63289657A (en) | Common file access system | |
JP6770244B2 (en) | Storage system | |
CN112181899A (en) | Metadata processing method and device and computer readable storage medium | |
WO2021189314A1 (en) | Data server crash recovery in object storage system using enhanced meta structure | |
JP6773931B1 (en) | Document management system, management server, document management method, and document management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111018 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120321 |