JP2009157880A - Server device and file system - Google Patents
Server device and file system Download PDFInfo
- Publication number
- JP2009157880A JP2009157880A JP2007338774A JP2007338774A JP2009157880A JP 2009157880 A JP2009157880 A JP 2009157880A JP 2007338774 A JP2007338774 A JP 2007338774A JP 2007338774 A JP2007338774 A JP 2007338774A JP 2009157880 A JP2009157880 A JP 2009157880A
- Authority
- JP
- Japan
- Prior art keywords
- server device
- file
- network
- update
- memory
- 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
Abstract
Description
本発明は、複数のサーバ(コンピュータ)において、同一のファイルを2台以上のサーバのメモリを用いて共用することを可能とする、サーバ間ファイル共用に関する。 The present invention relates to inter-server file sharing that enables a plurality of servers (computers) to share the same file using the memory of two or more servers.
ファイルを共用するシステムにおいて、それぞれのサーバにディスクを置き、それぞれのサーバに二重書きするという手段がある。 In a system that shares files, there is a means of placing a disk on each server and writing to each server.
記憶制御装置間で遠隔二重書きを行うと共に、それぞれの上位装置からのファイル共用に際して、ファイル単位の排他制御を可能とするシステム等が特開2003−84917号公報(特許文献1)に記載されている。すなわち、ファイル管理情報は第1ネットワーク経由で共用する一方、第2ネットワーク(SAN)を通じて2台のファイルサーバの遠隔二重書き装置間でデータを複製することでデータ転送負荷を軽減し、二重書きのためのデータ転送を妨げないというものである。
上述の通り、特許文献1記載の発明では、遠隔のディスク及び遠隔のコンピュータに対して、第1ネットワークで排他制御し、データは第2ネットワークで二重書きするという方法で、複数の記録装置に同じ内容のファイルを共有する方法を取っている。しかし、第1ネットワークで制御情報のやり取りをし、第2ネットワークを使ってデータのやり取りを行っているため、排他の間隔が長いという問題がある。また、この方法では、排他の制御もファイル単位でしか行うことができない。
As described above, in the invention described in
本発明の目的は、全てのファイルや制御情報をメモリ上におき、2台以上のコンピュータで高速に共用ファイルをアクセスするサーバ装置及びファイルシステムを提供することにある。 An object of the present invention is to provide a server device and a file system in which all files and control information are stored in a memory and a shared file is accessed at high speed by two or more computers.
また、本発明の別の目的はサーバダウン時に記録情報がなくなってしまった場合にそれを復旧させるためのシステムを提供することにある。 Another object of the present invention is to provide a system for recovering recorded information when it is lost when the server is down.
更に、本発明の別の目的としては、ファイルの部分的な排他を可能ならしめる方法を提供することにある。 Furthermore, it is another object of the present invention to provide a method that enables partial exclusion of files.
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。 Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.
本発明の代表的な実施の形態に関わるサーバ装置は、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有し、メモリには該サーバ装置外に同一のデータが複製されるファイルが格納されており、第1ネットワーク経由で送信される前記ファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムが前記ファイルの更新を該サーバ装置上で動作するデーモンに要求し、このデーモンが該サーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で該サーバ装置外の複製された前記ファイルの更新を要求することを特徴とする。 A server device according to a representative embodiment of the present invention has a memory, an interface with a first network, and an interface with a second network, and the same data is duplicated outside the server device in the memory. The user program operating on the server device receives an update request for the file transmitted via the first network, and the user program operates on the server device to update the file. Requesting a daemon to perform update of the file in the server device, and requesting update of the replicated file outside the server device via the second network. .
本発明の代表的な実施の形態に関わる別のサーバ装置は、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有し、メモリには該サーバ装置外に同一のデータが複製されるファイルが格納されており、第1ネットワーク経由で送信されるメモリ上のファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、このユーザプログラムがファイルの更新を該サーバ装置上で動作するデーモンに要求し、このデーモンは該サーバ装置内のファイルの排他・アクセス権情報、及び、第2ネットワーク経由で該サーバ装置外の複製されたファイルの排他・アクセス権情報を確認し、該サーバ装置内の前記ファイルの排他・アクセス権情報、及び、該サーバ装置外の前記ファイルの排他・アクセス権情報の更新要件をいずれも具備している場合に、デーモンが該サーバ装置内のメモリ上の前記ファイルの更新を実行し、かつ、第2ネットワーク経由で該サーバ装置外の複製されたファイルの更新を要求することを特徴とする。 Another server device according to a representative embodiment of the present invention has a memory, an interface with a first network, and an interface with a second network, and the same data is stored in the memory outside the server device. A file to be copied is stored, a user program operating on the server device receives an update request to the file on the memory transmitted via the first network, and the user program updates the file to the server This daemon requests a daemon operating on the device, and this daemon checks the exclusive / access right information of the file in the server device and the exclusive / access right information of the copied file outside the server device via the second network. And the exclusive / access right information of the file in the server device and the exclusive / access right of the file outside the server device. When both the access right information update requirements are satisfied, the daemon updates the file on the memory in the server device, and the copied file outside the server device via the second network It is characterized by requesting the update.
このサーバ装置は、第1ネットワーク経由で送信されるメモリ上のファイルの参照要求を該サーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムがファイルの参照を該サーバ装置上で動作するデーモンに要求し、このデーモンが該サーバ装置内のファイルを参照することを特徴としても良い。 In this server device, a user program operating on the server device receives a file reference request transmitted via the first network, and the user program sends a file reference to a daemon operating on the server device. The daemon may request and refer to a file in the server device.
本発明の代表的な実施の形態に関わる別のサーバ装置は、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有し、メモリには該サーバ装置外に同一のデータが複製されるファイルが格納されており、第1ネットワーク経由で送信されるメモリ上のファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムがファイルの更新を該サーバ装置上で動作するデーモンに要求し、デーモンは該サーバ装置内のファイルの排他・アクセス権情報、及び、該サーバ装置外の複製されたファイルの排他・アクセス権情報を第2ネットワーク経由で確認し、該サーバ装置内のファイルの排他・アクセス権情報、及び、該サーバ装置外の複製されたファイルの排他・アクセス権情報の更新条件のいずれも具備している場合に、デーモンが該サーバ装置内のファイルの更新を実行し、かつ、第2ネットワーク経由で該サーバ装置外の複製されたファイルの更新を要求することを特徴とする。 Another server device according to a representative embodiment of the present invention has a memory, an interface with a first network, and an interface with a second network, and the same data is stored in the memory outside the server device. A file to be copied is stored, a user program operating on the server device receives an update request to the file on the memory transmitted via the first network, and the user program updates the file. Requesting the daemon operating above, the daemon checks the exclusive / access right information of the file in the server device and the exclusive / access right information of the copied file outside the server device via the second network, Exclusive / access right information of files in the server device, and exclusive / access of copied files outside the server device If any of the right information update conditions is satisfied, the daemon updates the file in the server device, and requests update of a replicated file outside the server device via the second network. It is characterized by that.
このサーバ装置は、ファイルの排他・アクセス権情報はファイル単位での管理及びファイルの所定の容量単位での管理を可能にすることを特徴としても良い。 This server device may be characterized in that file exclusion / access right information can be managed in units of files and in units of a predetermined capacity of files.
また、このサーバ装置は、第2ネットワーク経由での所定のファイルの排他・アクセス権情報の確認要求に応じて、要求に関する排他・アクセス権情報をデーモンが確認し、確認結果を第2ネットワーク経由で送出することを特徴としても良い。 In addition, in response to a confirmation request for exclusion / access right information of a predetermined file via the second network, the server device confirms the exclusion / access right information regarding the request, and the confirmation result is transmitted via the second network. It is good also as sending out.
本発明の代表的な実施の形態に関わるファイルシステムは、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有する第1のサーバ装置、及びメモリと、第1ネットワークとのインターフェイスと、第2ネットワークのインターフェイスを有する第2のサーバ装置を含み、第2のサーバの前記メモリに同一のデータが複製されるファイルが第1のサーバのメモリに格納されており、第1ネットワーク経由で送信されるファイルへの更新要求を第1のサーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムがファイルの更新を第1のサーバ装置上で動作するデーモンに要求し、このデーモンは第1のサーバ装置内のファイルの排他・アクセス権情報を確認し、あわせて、第2のサーバ装置の複製されたファイルの排他・アクセス権情報を第2ネットワーク経由で前記第2のサーバ装置内で動作するデーモンに確認し、第1のサーバ装置内のファイルの排他・アクセス権情報、及び、第2のサーバ装置内の複製されたファイルの排他・アクセス権情報の更新条件をいずれも具備している場合に、デーモンが第1のサーバ装置内のファイルの更新を実行し、かつ、第2ネットワーク経由で第2のサーバ装置上の複製されたファイルの更新を要求することを特徴とする。
A file system according to an exemplary embodiment of the present invention includes a memory, an interface with a first network, a first server device having an interface with a second network, and an interface between the memory and the first network. And a second server device having an interface of the second network, and a file in which the same data is replicated in the memory of the second server is stored in the memory of the first server, via the first network The user program operating on the first server device receives the update request for the file transmitted in
このファイルシステムは、第2のサーバ装置上でもユーザプログラム及びデーモンが動作し、第1のサーバ装置で障害が発生した際に、第2のユーザプログラムが第1ネットワークを経由して処理を引き継ぐことを特徴としても良い。 In this file system, the user program and daemon operate on the second server device, and when a failure occurs in the first server device, the second user program takes over processing via the first network. It may be characterized.
このファイルシステムは、第1のサーバ装置の障害が復旧した際に第1のサーバ装置上で動作するデーモンが第2のサーバ装置上で動作するデーモンに第1のサーバ装置のメモリ上のファイルと第2のサーバ装置のメモリ上のファイルの同期状態を第2ネットワークを経由して確認することを特徴としても良い。 In this file system, when a failure of the first server device is recovered, a daemon operating on the first server device is transferred to a daemon operating on the second server device as a file on the memory of the first server device. The synchronization state of the file on the memory of the second server device may be confirmed via the second network.
本発明の代表的な実施の形態に関わる別のファイルシステムは、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有する第1のサーバ装置と、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有する第2のサーバ装置、メモリと、第1ネットワークとのインターフェイスと、第2ネットワークとのインターフェイスを有する第3のサーバ装置と、を含み、第2のサーバ装置のメモリに同一のデータが複製されるファイルが第1のサーバ装置のメモリに格納され、かつ、第3のサーバ装置のメモリに同一のデータが複製されるファイルが第2のサーバ装置のメモリに格納され、第1ネットワーク経由で送信されるファイルへの更新要求を前記第1のサーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムがファイルの更新を第1のサーバ装置上で動作するデーモンに要求し、第1のサーバ装置上で動作するデーモンは第1のサーバ装置内のファイルの排他・アクセス権情報を確認し、あわせて、第2のサーバ装置の複製されたファイルの排他・アクセス権情報を第2ネットワーク経由で第2のサーバ装置内で動作するデーモンに確認し、第1のサーバ装置内のファイルの排他・アクセス権情報、及び、第2のサーバ装置内の複製されたファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、第1のサーバ装置上で動作するデーモンが第1のサーバ装置内のファイルの更新を実行し、かつ、第2ネットワーク経由で第2のサーバ装置上の複製されたファイルの更新を要求し、第1ネットワーク経由で送信されるファイルへの更新要求を第2のサーバ装置上で動作するユーザプログラムが受信し、ユーザプログラムがファイルの更新を第2のサーバ装置上で動作するデーモンに要求し、第2のサーバ装置上で動作するデーモンは第2のサーバ装置内のファイルの排他・アクセス権情報を確認し、あわせて、第3のサーバ装置の複製されたファイルの排他・アクセス権情報を前記第2ネットワーク経由で前記第3のサーバ装置内で動作するデーモンに確認し、第2のサーバ装置内のファイルの排他・アクセス権情報、及び、第3のサーバ装置内の複製されたファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、第2のサーバ装置上で動作するデーモンが第2のサーバ装置内のファイルの更新を実行し、かつ、第2ネットワーク経由で第3のサーバ装置上の複製されたファイルの更新を要求することを特徴とする。 Another file system according to the representative embodiment of the present invention includes a memory, an interface with a first network, a first server device having an interface with a second network, a memory, and a first network. And a second server device having an interface with the second network, a memory, an interface with the first network, and a third server device having an interface with the second network, A file in which the same data is replicated in the memory of the server device is stored in the memory of the first server device, and a file in which the same data is replicated in the memory of the third server device is stored in the second server device. An update request to the file stored in the memory and transmitted via the first network is sent to the first The user program that operates on the server device receives, the user program requests the daemon that operates on the first server device to update the file, and the daemon that operates on the first server device is in the first server device. Confirm the exclusive / access right information of the file, and confirm the exclusive / access right information of the duplicated file of the second server device with the daemon operating in the second server device via the second network. When the exclusive / access right information of the file in the first server device and the exclusive / access right information of the duplicated file in the second server device both have the update conditions, the first A daemon running on the first server device updates the file in the first server device, and replicates the file on the second server device via the second network. The user program operating on the second server device receives the update request for the file transmitted via the first network, and the user program updates the file on the second server device. The daemon that operates on the second server device confirms the exclusive / access right information of the file in the second server device, and, at the same time, the copied file of the third server device. The exclusive / access right information is confirmed with the daemon operating in the third server device via the second network, and the exclusive / access right information of the file in the second server device and the third server device If the exclusive / access right information of the copied file has both update conditions, a daemon that operates on the second server device is stored in the second server device. Run the update Airu and wherein the request to update the replicated files on the third server device via the second network.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。 The effects obtained by typical ones of the inventions disclosed in the present application will be briefly described as follows.
本発明の代表的な実施の形態に関わるファイルシステムにおいては、各サーバのメモリファイルを同期することで、各サーバとも同じ内容として参照可能になる。 In the file system according to the representative embodiment of the present invention, it is possible to refer to each server as the same content by synchronizing the memory file of each server.
また、本発明の代表的な実施の形態に関わるファイルシステムにおいては、他のサーバにファイル内容を同期しているため、障害などで他のサーバに引き継ぐ際のデータの回復を高速に行うことが可能になる。 Further, in the file system according to the representative embodiment of the present invention, since the file contents are synchronized with other servers, it is possible to perform high speed data recovery when taking over to another server due to a failure or the like. It becomes possible.
更に、本発明の代表的な実施の形態に関わるファイルシステムにおいては、障害となっていないサーバのメモリ内容を再同期することによって、ファイルの状況を維持することができる。 Furthermore, in the file system according to the representative embodiment of the present invention, the file status can be maintained by resynchronizing the memory contents of the server that has not failed.
以下、この発明を実施するための最良の形態を図面に基づいて詳細に説明する。 Hereinafter, the best mode for carrying out the present invention will be described in detail with reference to the drawings.
(第1の実施の形態)
(本実施の形態の通常時の処理)
図1は、本発明の第1の実施の形態であるサーバ間メモリ共用ファイルシステムの構成を示す構成図である。このサーバ間メモリ共用ファイルシステムは第1サーバ101と第2サーバ102、及びこれらにデータの参照や更新を要求する上位装置121、122、123、124より構成される。なお、図面上では3台のサーバ(上述の2つに加えて第nサーバ)しか表していないが、4台以上のサーバがあっても良い。
(First embodiment)
(Normal processing of the present embodiment)
FIG. 1 is a configuration diagram showing the configuration of the inter-server memory shared file system according to the first embodiment of the present invention. This inter-server memory shared file system includes a
第1サーバ101と第2サーバ102は第1ネットワーク(LAN)1と第2ネットワーク2によって接続されている。また第1ネットワーク1を経由して上位装置121、122、123、124と接続されている。
The
なお、第2ネットワーク2としてはSAN(Strage Area Network)等の使用が考えられるが、必ずしもこれにはこだわらない。また、図面上ではネットワーク・トポロジーをバス型として表現しているが、環状接続のリング型であっても良い。
The
本実施の形態においては第1サーバ101と第2サーバ102は、それぞれ内部にユーザプログラム1002と、デーモン(Daemon)1003が動作する図示しない処理装置(CPUやDSP)及びメモリ1007を含む。
In the present embodiment, each of the
ユーザプログラム1002は、上位装置からのアクセスや起動指示、または図示しないタイマによる割り込み等で起動する。デーモン1003を経由して、ユーザプログラム1002は排他処理、書き込み処理、読み込み処理、アクセス権限の変更を実行する。
The
一般的に「デーモン」とは、マルチタスク環境下においてバックグラウンドで特定の処理をするプログラムのことである。本実施の形態のデーモン1003はユーザプログラム1002からの命令を受け、メモリ1007へのアクセスや第2ネットワーク2経由のコマンドの送信、戻り値の受信等を行う。なお、第1サーバ101のデーモン1003と第2サーバ102のデーモン1003との間には正副の区別は無い。第1サーバ101のデーモン1003と第2サーバ102のそれは同じ動作が可能である。
In general, a “daemon” is a program that performs specific processing in the background in a multitasking environment. The
メモリ1007には処理装置の動作領域である作業エリア1008、排他、アクセス権限に関する情報を格納する制御データ1009、参照・更新の対象となるファイル1010が含まれる。
The
メモリ1007にアクセスするために、デーモン1003中にはサーバ受付処理モジュール1004、更新準備/更新確定モジュール1005、参照モジュール1006がプログラムとして含まれる。
In order to access the
サーバ受付処理モジュール1004は、ユーザプログラム1002から受け取ったコマンドが更新系処理か参照系処理かを判断する。
The server
ユーザプログラム1002からのコマンドが更新系処理であれば、更新準備/更新確定モジュール1005への更新準備指示を行う。また併せて、第2ネットワーク2を経由してファイル同期の対象である他のサーバのデーモン1003内の更新準備/更新確定モジュール1005への更新準備指示を行う。
If the command from the
サーバ受付処理モジュール1004が更新系の処理を受け取り、更新準備/更新確定モジュール1005に更新要求を送出すると、更新準備/更新確定モジュール1005は排他状況やアクセス権を確認し、メモリ1007中のファイル1010を更新するためのデータを、メモリ1007中の作業エリア1008に格納する。同様に、第2ネットワーク2を経由で送られてきた他のサーバからの更新要求に際しても、更新準備/更新確定モジュール1005は排他状況やアクセス権を確認し、メモリ1007中のファイル1010を更新するためのデータを、メモリ1007中の作業エリア1008に格納する。
When the server
すでに他のモジュールによって希望するファイルに対して排他処理が行われている状況にある場合には、更新準備/更新確定モジュール1005はサーバ受付処理モジュール1004にエラーを返す。また、更新用のデータが作業エリア1008に格納できたときには、自サーバもしくは他のサーバの要求元のサーバ受付処理1004に対してエラーが無く正常に作業エリアへの書き込みが終了した旨通知する。
If the exclusive processing has already been performed on the desired file by another module, the update preparation /
全ての要求先が更新用のデータを作業エリア1008に書き込めたことが確認できた後に、サーバ受付処理モジュール1004は各更新準備/更新確定モジュール1005に対して更新データの確定を指示する。
After confirming that all the request destinations have written update data in the
一方、更新の要求先の一つから作業エリアへの書き込みでエラーが発生した旨返ってきた場合、サーバ受付処理モジュール1004は更新準備/更新確定モジュール1005に対して更新の取り消しを指示すると共に、要求元のユーザプログラム1002に対して、エラーを返す。
On the other hand, when one of the update request destinations returns that an error has occurred in writing to the work area, the server
ユーザプログラム1002からのコマンドが参照系処理であれば、サーバ受付処理モジュール1004は自サーバの参照モジュール1006に対してのみ参照指示を行う。自サーバの更新準備/更新確定モジュール1005に対して排他状況やアクセス権を確認し、その後、自サーバのメモリ1007中のファイルの内容を参照モジュール1006経由で参照し、要求元のユーザプログラム1002に応答を返す。
If the command from the
図2は第1サーバ101のユーザプログラム1002がデーモン1003を経由してメモリ1007上のファイル1010を更新・参照するまでの処理を表すフローチャートである。
FIG. 2 is a flowchart showing processing until the
この図において破線で囲ったステップS203、ステップS204、ステップS207は図1のサーバの数が増えると、処理の主体が増えるステップを指す。 In this figure, steps S203, S204, and S207 surrounded by a broken line indicate steps where the number of processing subjects increases as the number of servers in FIG. 1 increases.
以下、この処理について説明する。 Hereinafter, this process will be described.
各上位装置からのファイル1010の操作に関する要求、または、タイマによる割り込み処理によって第1サーバ101のユーザプログラム1002が起動する(ステップS200)。
The
続いて第1サーバ101のユーザプログラム1002からデーモン1003のサーバ受付処理モジュール1004に対してコマンド及び必要なパラメータを発行する(ステップS201)。図3は、ユーザプログラム1002からサーバ受付処理モジュール1004に対して送信されるデーモンを制御するためのパラメータ(データ)の構造を示す概念図である。
Subsequently, a command and necessary parameters are issued from the
ここで必要なパラメータとは、デーモン1003を制御するための制御フラグ802、ファイル名803、制御データの更新内容804、ファイルへの書き込みデータ805等である。
The necessary parameters here include a
制御フラグ802は、制御内容を示すパラメータである。ここでは、「書き込み」の時は1、「読み込み」の時は2、「排他制御」の時は3のパラメータが設定される。
The
ファイル名803はアクセス対象となるファイルのファイル名である。
A
制御データの更新内容804は制御データ1009を更新する際に用いる内容を示すパラメータである。
The control
ファイルへの書き込みデータ805は、制御フラグ802が「1」の際に該ファイルに書き込む内容を示す。
The
これらのパラメータにより、ユーザプログラム1002とのインターフェイスが確立される。
With these parameters, an interface with the
このコマンドを受けてサーバ受付処理モジュール1004がサーバ受付処理モジュール1004からのコマンドがファイルの更新処理に関わるものか、参照処理に関わるものか、制御データの更新に関わるものか、を解釈し、処理を要求するモジュールを決定する(ステップS202)。上述の例では、制御フラグが2であれば参照モジュール1006に対する処理要求であり、他のものであれば、更新準備/更新確定モジュール1005に対するものである、とサーバ受付処理モジュール1004は判断する。
Upon receiving this command, the server
ファイルの参照処理の場合(制御フラグ802が2のとき)、サーバ受付処理モジュール1004は参照モジュール1006に対して、ファイル名803を用いて該ファイルの排他情報、アクセス権限、メモリ1007中のアドレスの特定などを要求する(ステップS211)。
In the case of a file reference process (when the
ここでアクセス権限を確認する際に用いる各サーバのメモリ1007中の制御データ1009を表すのが図4である。制御データ1009は、ファイル全体の制御データ70とファイルの部分的な制御データ71に分けることができる。このうちファイル全体の制御データ70は必ず存在するが、ファイルの部分的な制御データ71は部分的な排他制御を行わないときには存在しなくとも良い。また、同一ファイルの部分的な制御を複数の箇所で行う場合にはファイルの部分的な制御データ71は複数存在することも可能である。
FIG. 4 shows the
まずファイル全体の制御データ70について説明する。
First, the
ファイル名702は当該制御データが管理する対象のファイル名を表すデータフィールドである。
A
サイズ703は当該制御データが管理する対象のファイルのデータ量を表すデータフィールドである。
The
ファイル作成者704は当該制御データが管理する対象のファイルの作成者を示す情報を格納するデータフィールドである。
The
アクセス権限705は当該制御データが管理するファイル全体のアクセス権限を規定するデータフィールドである。
The
作成、更新、参照日時706は該ファイルの作成等された日時を現すデータフィールドである。
Creation, update, and reference date /
メモリ先頭アドレス707は当該制御データが管理する対象のファイルの先頭がメモリ中のどこの番地から記憶されているかを現すデータフィールドである。
The
ファイル全体の排他フラグ708は該ファイルの排他制御をどのように行うかを規定するデータフィールドである。このデータフィールド中には、ファイル作成者からのアクセスの排他制御、ファイル作成者以外からの排他制御、2ユーザ以上が同時にアクセスした際の排他制御をビットで表している。本図では各2ビットずつ、計6ビット構成としているが、これ以上のパラメータを盛り込むことも可能である。
An
ファイル全体の排他フラグ708はファイルの操作状況に応じて、静的な、または動的に変化するフラグである。具体的には、作成者以外は参照のみを許可する設定(静的の例)や、同時に更新されるとアトミック性等の問題が生じる場合に6ビット目(10進表記で32)を「1」(セット状態)にし、排他状態であることを表示する(動的の例)等が考えられる。
The
ファイル全体の排他フラグ708のいずれかのフラグが「1」(セット状態)の場合には、該当する処理の実行は行えない。たとえば3ビット目(10進表記で4)が1の場合には、ファイル作成者以外の者は当該ファイルの参照はできない。排他フラグ708のいずれのフラグも「0」(非セット状態)の場合には、他のユーザプログラムがファイルにアクセスしていない、または該ユーザプログラムのアクセスが許可されている状態であるため、参照モジュール1006または更新準備/更新確定モジュール1005は参照・書込処理を行う。この際、ファイル全体の排他フラグ708の動的に変化するフラグを「1」にセットすること、参照・書き込み処理終了時に動的に変化するフラグを「0」にセットする(同時アクセス制限の解除する)ことなども考慮されるべきである。
If any one of the
このファイル全体の排他フラグ708とアクセス権限705が排他・アクセス権情報の中核となる。
The
部分排他制御先頭アドレス709はファイルの部分的な制御データ71がある際に、その格納されているメモリのアドレスを指標するデータフィールドである。ファイルの部分的な制御データ71が存在しない場合にはNULLが入力されることで部分的な制御データ71が存在しないことを表現しても良い。
The partial exclusive
続いて、ファイルの部分的な制御データ71について説明する。
Next, the
部分排他アドレス710は部分排他を行うメモリ領域の先頭アドレスを指標するデータフィールドであり、また、部分排他サイズ711は該部分排他の対象となるデータ量を表すデータフィールドである。
The
ファイルの部分的な排他フラグ712は該部分排他の対象の排他制御をどのように行うかを規定するデータフィールドである。本図では、このフィールドのビット構成はファイル全体の排他フラグ708と対応させているが、必ずしもファイルの部分的な排他フラグ712とファイル全体の排他フラグ708とのビット配置を対応させる必要は無い。
The
ファイルの部分的な制御データ71が存在する場合には、参照モジュール1006または更新準備/更新確定モジュール1005は、このファイルの部分的な排他フラグ712をも排他・アクセス権情報の一つとして参照する。なお、この項目の確認はファイル全体の排他フラグ708同様に行えばよいのでここでは省略する。
When the
部分排他制御先頭アドレス713は異なるファイルの部分的な制御データ71がある際に、その格納されているメモリのアドレスを指標するデータフィールドである。ファイルの部分的な制御データ71が存在しない場合にはNULLが入力される。
The partial exclusive
このように異なるファイルの部分的な制御データ71を数珠繋ぎに記憶し管理することで排他制御をきめ細かく行うことを可能にする。
Thus, by storing and managing
図2の説明に戻る。 Returning to the description of FIG.
ファイルの参照処理に際しては、各サーバの参照モジュール1006は、自サーバのメモリ1007中の制御データ1009からアクセス権限705、ファイル全体の排他フラグ708、ファイルの部分的な排他フラグ712を主に参照して、アクセス権限の有無の確認を行う。
In the file reference process, the
この際、排他情報等から該ユーザプログラム1002から該ファイルへのアクセスが認められるようであれば(ステップS212:Yes)、サーバ受付処理モジュール1004がI/O(インプット/アウトプット)完了をユーザプログラム1002に返す(ステップS213)。逆に、該ファイルへのアクセスが認められない場合には(ステップS212:No)、サーバ受付処理モジュール1004がI/Oエラーをユーザプログラム1002に返す(ステップS206)。
At this time, if access from the
ファイルの更新処理の場合(制御フラグ802が1のとき)、サーバ受付処理モジュール1004は自身の更新準備/更新確定モジュール1005に更新コマンド及び図3のファイルへの書き込みデータ805相当のデータを出力すると共に、第2ネットワーク2を経由して第2サーバ102の更新準備/更新確定モジュール1005に更新コマンド及びデータを出力する。各サーバの更新準備/更新確定モジュール1005は要求元(ここでは第1サーバ101のサーバ受付処理モジュール1004)がアクセス権を有しているか、あるいは、アクセス対象のファイルが排他処理下に置かれているかを確認する。要求元のアクセスが認められなければこの時点でその旨を第1サーバ101のサーバ受付処理モジュール1004に返す(ステップS203)。なお、ここでは第2サーバ102に送ることとしているが、更に多くのサーバがある際にはそれらの全てに、あるいは一部に更新コマンド及びデータを出力しても良い。
In the case of file update processing (when the
その後、受け取ったデータをメモリ1007の作業エリア1008に書き込む処理を各サーバの更新準備/更新確定モジュール1005が実行する(ステップS204)。メモリ容量の不足等により作業エリア1008に書き込めなかったときにはエラーが生じた旨を、問題なく書き込めたときにも問題なく書き込めた旨を要求元のサーバ受付処理モジュール1004に返す。
Thereafter, the update preparation /
要求元である第1サーバ101のサーバ受付処理モジュール1004は各サーバから寄せられるステップS203またはステップS204の戻り値を検証する(ステップS205)。戻り値に一つでも問題(アクセス権限がない、又は更新ファイルが作業エリア1008に書き込めないなど)があった場合には(ステップS205:No)、エラーの内容に応じて、サーバ受付処理モジュール1004がユーザプログラム1002にI/Oエラーを返し処理を終了する(ステップS206)。
The server
全ての戻り値が適正であった場合には(ステップS205:Yes)、全サーバにおいてアクセス権限があることとなる。サーバ受付処理モジュール1004は各サーバの更新準備/更新確定モジュール1005に対して、作業エリア1008からファイル1010への更新を行う(ステップS207)。具体的には、作業エリア1008から該データの複製を行ったり、また、制御データ1009中のメモリ先頭アドレス707を書き換えたりなどが考えられるが、具体的な更新方法は設計事項である。
If all return values are appropriate (step S205: Yes), all servers have access authority. The server
更新の成否は戻り値として、各サーバの更新準備/更新確定モジュール1005から要求元である第1サーバのサーバ受付処理モジュール1004に戻される。これらを参照して第1サーバのサーバ受付処理モジュール1004は全サーバのデータの更新が適正であったか確認する(ステップS208)。全サーバで更新が適式に行われていれば(ステップS208:Yes)、第1サーバのサーバ受付処理モジュール1004はユーザプログラム1002にI/O完了を通知する(ステップS209)。また、一つのサーバでもエラーが発生していれば(ステップS208:No)、第1サーバのサーバ受付処理モジュール1004はユーザプログラム1002にI/Oエラーを通知する(ステップS210)。
The success or failure of the update is returned as a return value from the update preparation /
図3の制御フラグ802が「3」であったときは、図4の部分排他等の制御データ1009の更新を行う。具体的処理は制御フラグ802が「1」のときと同じであるが、処理の対象がファイル1010ではなく制御データ1009に変わる。また、更新データはファイルへの書き込みデータ805ではなく、制御データの更新内容804になる。
When the
このように、ユーザプログラム1002で意識することなく同一のファイルについて異なるサーバのメモリ上に複製を取ることが可能になる。この利点については以下で説明する。
In this way, it is possible to copy the same file on the memory of a different server without being conscious of the
(本実施の形態の障害発生時の処理)
図5は本実施の形態の障害発生時の動作を表す概念図である。
(Processing when a failure occurs in this embodiment)
FIG. 5 is a conceptual diagram showing the operation when a failure occurs according to this embodiment.
この図においては、第1サーバ101に障害が発生し、第2サーバ102に処理を引き継ぐことを想定している。また、第1サーバ101と第2サーバ102との間には正副の区別は無く、また、便宜的にサーバが2台の構成で説明しているが、3台以上のサーバについても同じ操作が可能となっている。
In this figure, it is assumed that a failure occurs in the
本図の最初の状況は、第1サーバ101及び第1サーバ101のユーザプログラム1002が正常に稼動している。また、第2サーバ102及び第2サーバのユーザプログラム1002が稼動している。
In the initial situation of this figure, the
第1サーバ101内のメモリ1007には、編集中のファイル2001やファイル更新履歴(ジャーナル)2002が記録され、上述のように、これらについても第2サーバ102のメモリ1007に同期を取って記録されているものとする。
In the
サーバ受付処理モジュール1004からの戻り値が返ってこない、または、戻り値が常にエラーを示すなど、第1サーバ101に障害が発生したとき、第1サーバ101のユーザプログラム1002は有効なファイル処理が補償できなくなる。
When a failure occurs in the
第1サーバ101のユーザプログラム1002は第2サーバ102で待機中のユーザプログラム1002にサービスを引き継ぐ。この際、第2サーバ102のメモリ1007中には、第1サーバ101で障害が発生する直前までの編集中のファイル2001やファイル更新履歴(ジャーナル)2002が記録されている。これにより、第2サーバ102で待機中のユーザプログラム1002は、ファイルの引継ぎを行うことなく、引き継いだ処理を開始すればよいこととなり、高速な障害回復が可能となる。
The
なお、引継ぎ後、障害の発生元である第1サーバ101に対して、第2サーバ102のユーザプログラム1002が更新処理を試みるか否かは設計事項である。また、何を持って障害とするか(たとえば上述のメモリ容量の不足を引き継ぎ対象の障害とみなすか)は設計者に委ねられるものであり、ここでは考慮しない。
Note that it is a design matter whether the
(本実施の形態の障害回復時の処理)
図6は第1サーバ101が障害から回復し、第2サーバ102のメモリ1007の情報からファイルの複写を行う動作を表す概念図である。
(Processing during failure recovery in this embodiment)
FIG. 6 is a conceptual diagram showing an operation in which the
障害回復のために各サーバのデーモン1003中にはメモリ回復処理モジュール1011が含まれる。障害が発生していた第1サーバ101のユーザプログラム1002が再起動する過程において、デーモン1003が起動する。ただし、この段階ではメモリの内容、制御データやファイルなど、が適当なものであるかが不確定である。
A memory
再起動中の第1サーバ101のメモリ回復処理モジュール1011は、他の同期対象である第2サーバ102上のメモリ回復処理モジュール1011を介して、第2ネットワーク経由で第2サーバ102のメモリ1007中の制御データ1009やファイル1010を自身のメモリ1007上に複製する。複製完了後に、デーモンはサービスを再開し、上位のユーザプログラム1002からの応答に反応する。以降、問題が解消されていれば、ユーザプログラム1002のコマンドに対するサーバ受付処理モジュール1004からの戻り値が正常になり、特に意識することなく障害回復処理が可能となる。
The memory
このように、デーモン側で複製を行うようにすれば、ユーザプログラムで対応を取ることなく障害回復処理を行うことが可能となる。 In this way, if replication is performed on the daemon side, it is possible to perform failure recovery processing without taking action by the user program.
(本実施の形態の読み出し時のシステム全体の処理)
図7は本実施の形態における複数の上位装置からサーバに対するファイル読み出しを説明する概念図である。
(Processing of the entire system at the time of reading in this embodiment)
FIG. 7 is a conceptual diagram illustrating file reading from a plurality of higher-level devices in the present embodiment to the server.
図2でも述べたとおり、書き込みについては全サーバの同期を補償している。一方で、読み出しについては、参照モジュール1006は各サーバ自身のメモリ1007からのみ読み出しを行う。
As described in FIG. 2, the write is compensated for the synchronization of all servers. On the other hand, for reading, the
これを利用し、上位装置から読み出しを行うサーバを決めておく。図7では上位装置121は第1サーバ101のユーザプログラム1002に、上位装置122と上位装置123は第2サーバ102のユーザプログラム1002に、上位装置124は第3サーバ103のユーザプログラム1002に読み出しを行うよう設定されている。
Using this, a server to read from the host device is determined. In FIG. 7, the
このようにすることでどの上位装置から書き込んだ内容も、どの上位装置からも読み込むことができる。あわせて、読み出し要求の分散による負荷集中が回避される。 In this way, the contents written from any host device can be read from any host device. In addition, load concentration due to distribution of read requests is avoided.
以上のように、1つのサーバに対して更新処理を要求することで連携して動く全てのサーバのデータが同期して更新可能となる。また、複数の上位端末から別個のサーバに存在する同一の同期したファイルにアクセスを行っていても、同期を妨げるようなアクセスに対しては更新を防ぐことができるため、同期の維持を容易に達成することができる。更には制御データ中にファイルの部分的な制御データ71を設けることで、ファイルの部分的なアクセス制御を行うことが可能となる。また、障害発生及び復旧時にユーザプログラムではなくデーモンで障害への対応を行うことで、上位のユーザプログラムに障害への対応を意識させること無くシステムの復旧を行うことが可能となる。
As described above, by requesting an update process for one server, data of all servers operating in cooperation can be updated synchronously. In addition, even when accessing the same synchronized file that exists on separate servers from a plurality of higher-level terminals, it is possible to prevent updates for access that interferes with synchronization, making it easy to maintain synchronization Can be achieved. Further, by providing
(第2の実施の形態)
次に本発明の第2の実施の形態について説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.
図8は本発明の第2の実施の形態におけるファイル複製の制御方法についての概念図である。 FIG. 8 is a conceptual diagram of a file duplication control method according to the second embodiment of the present invention.
本実施の形態では、第1の実施の形態と異なり、全てのサーバに全てのメモリファイルを有さないことを目的している。 In the present embodiment, unlike the first embodiment, it is intended that not all servers have all memory files.
本実施の形態におけるハードウェア及びソフトウェアの構成と制御方式は、図1及び図2を使用する。ただし、サーバに格納するファイルを分散させることでメモリの効率的な利用を実現できる。 FIG. 1 and FIG. 2 are used as the hardware and software configuration and control method in the present embodiment. However, efficient use of memory can be realized by distributing files stored in the server.
本実施の形態の制御方法の例について図8を用いて説明する。この例では、サーバは第1サーバ501、第2サーバ502、第3サーバ503の3台より構成されているものとする。
An example of the control method of the present embodiment will be described with reference to FIG. In this example, it is assumed that the server is composed of three servers: a
第1サーバ501のデーモン1003に対してユーザプログラム1002が#1ファイルの書き込みを行うとき、該デーモン1003のサーバ受付処理モジュール1004は自身のメモリ1007と第2サーバ502のメモリ1007に対してファイルの更新を行う。一方、第1サーバ501のサーバ受付処理モジュール1004は第3サーバ503に対してはファイルの複製・同期・更新は行わない。
When the
第2サーバ502のデーモン1003に対してユーザプログラム1002が#2ファイルの書き込みを行うとき、該デーモン1003のサーバ受付処理モジュール1004は自身のメモリ1007と第3サーバ503のメモリ1007に対してファイルの更新を行う。一方、第1サーバ501に対してはファイルの複製・同期・更新は行わない。
When the
第3サーバ503のデーモン1003に対してユーザプログラム1002が#3ファイルの書き込みを行うとき、該デーモン1003のサーバ受付処理モジュール1004は自身のメモリ1007と第1サーバ501のメモリ1007に対してファイルの更新を行う。第2サーバ502に対してはファイルの複製・同期・更新は行わない。
When the
以上のように制御することで、バックアップ用のファイルの量を減らすことができ効率良く各サーバ内のメモリを利用することが可能になる。 By controlling as described above, the amount of backup files can be reduced, and the memory in each server can be used efficiently.
なお、上記はあくまでもファイルの複製量を減らす一例であり、他にも各サーバのメモリの空き容量の多いものに複製を行うような制御でも良い。 Note that the above is merely an example of reducing the amount of file replication, and other control may be performed such that replication is performed on a server having a large free space in the memory.
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更が可能であることは言うまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiments. However, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. Needless to say.
本発明は安価大容量化がなされたメモリをディスク装置に代えて用いるサーバ、及び該サーバ複数台から構成され、複数のサーバで処理を分散するシステム(たとえばWave Serverを用いたコンテンツの利用、買い物、株取引などのシステム)下での高速なファイルの共用に用いることができる。 The present invention relates to a server that uses inexpensive and large-capacity memory in place of a disk device, and a system that includes a plurality of such servers and distributes processing among a plurality of servers (for example, use of content and shopping using a Wave Server) It can be used for high-speed file sharing under systems such as stock trading.
また、かかるシステムで構成され、かつ、サービスの中断が認められない場合に、本発明を適用すれば待機サーバで、メモリから復旧データを読み込むため、高速なシステム復旧が可能となる。 Further, when the present invention is applied when the system is configured and the service is not interrupted, the recovery data is read from the memory by the standby server, so that high-speed system recovery is possible.
1…第1ネットワーク(LAN)、2…第2ネットワーク(SAN)、
70…ファイル全体の制御データ、71…ファイルの部分的な制御データ、
101…第1サーバ、102…第2サーバ、103…第3サーバ、
121、122、123、124…上位装置、
501…第1サーバ、502…第2サーバ、503…第3サーバ、
1002…ユーザプログラム、1003…デーモン、
1004…サーバ受付処理モジュール、1005…更新準備/更新確定モジュール、
1006…参照モジュール、1007…メモリ、1008…作業エリア、
1009…制御データ、1010…ファイル、
1011…メモリ回復処理モジュール、
2001…編集中ファイル、2002…ファイル更新履歴(ジャーナル)、
3001…#1ファイル、3002…#2ファイル、3003…#3ファイル。
1 ... first network (LAN), 2 ... second network (SAN),
70 ... control data of the entire file, 71 ... partial control data of the file,
101 ... 1st server, 102 ... 2nd server, 103 ... 3rd server,
121, 122, 123, 124 ... host device,
501 ... first server, 502 ... second server, 503 ... third server,
1002 ... User program, 1003 ... Demon,
1004 ... Server reception processing module, 1005 ... Update preparation / update confirmation module,
1006 ... Reference module, 1007 ... Memory, 1008 ... Work area,
1009 ... control data, 1010 ... file,
1011 ... Memory recovery processing module,
2001 ... File being edited, 2002 ... File update history (journal),
3001 ... # 1 file, 3002 ... # 2 file, 3003 ... # 3 file.
Claims (10)
前記メモリには該サーバ装置外に同一のデータが複製されるファイルが格納され、
前記第1ネットワーク経由で送信される前記ファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、
前記ユーザプログラムが前記ファイルの更新を該サーバ装置上で動作するデーモンに要求し、
前記デーモンが該サーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で該サーバ装置外の複製された前記ファイルの更新を要求することを特徴とするサーバ装置。 A server device having an interface with a memory, a first network, and an interface with a second network,
The memory stores a file in which the same data is copied outside the server device,
A user program operating on the server device receives an update request to the file transmitted via the first network;
The user program requests a daemon operating on the server device to update the file;
The server device, wherein the daemon updates the file in the server device, and requests the update of the replicated file outside the server device via the second network.
前記メモリには該サーバ装置外に同一のデータが複製されるファイルが格納され、
前記第1ネットワーク経由で送信される前記メモリ上の前記ファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、
前記ユーザプログラムが前記ファイルの更新を該サーバ装置上で動作するデーモンに要求し、
前記デーモンは該サーバ装置内の前記ファイルの排他・アクセス権情報を確認し、かつ、該サーバ装置外の複製された前記ファイルの排他・アクセス権情報を前記第2ネットワーク経由で確認し、
該サーバ装置内の前記ファイルの排他・アクセス権情報、及び、該サーバ装置外の前記ファイルの排他・アクセス権情報が更新要件をいずれも具備している場合に、前記デーモンが該サーバ装置内のメモリ上の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で該サーバ装置外の複製された前記ファイルの更新を要求することを特徴とするサーバ装置。 A server device having an interface with a memory, a first network, and an interface with a second network,
The memory stores a file in which the same data is copied outside the server device,
A user program operating on the server device receives an update request to the file on the memory transmitted via the first network,
The user program requests a daemon operating on the server device to update the file;
The daemon confirms the exclusive / access right information of the file in the server device, and confirms the exclusive / access right information of the copied file outside the server device via the second network,
When the exclusive / access right information of the file in the server device and the exclusive / access right information of the file outside the server device have both update requirements, the daemon in the server device A server device that executes an update of the file on a memory and requests an update of the copied file outside the server device via the second network.
前記第1ネットワーク経由で送信される前記メモリ上のファイルの参照要求を該サーバ装置上で動作する前記ユーザプログラムが受信し、
前記ユーザプログラムが前記ファイルの参照を該サーバ装置上で動作するデーモンに要求し、
前記デーモンが該サーバ装置内の前記ファイルを参照することを特徴とするサーバ装置。 In the server apparatus according to claim 1 or 2,
The user program operating on the server device receives a request to refer to a file on the memory transmitted via the first network,
The user program requests a daemon operating on the server device to reference the file;
The server device, wherein the daemon refers to the file in the server device.
前記メモリには該サーバ装置外に同一のデータが複製されるファイルが格納され、
前記第1ネットワーク経由で送信される前記メモリ上の前記ファイルへの更新要求を該サーバ装置上で動作するユーザプログラムが受信し、
前記ユーザプログラムが前記ファイルの更新を該サーバ装置上で動作するデーモンに要求し、
前記デーモンは該サーバ装置内の前記ファイルの排他・アクセス権情報、及び、該サーバ装置外の複製された前記ファイルの排他・アクセス権情報を前記第2ネットワーク経由で確認し、
該サーバ装置内の前記ファイルの排他・アクセス権情報、及び、該サーバ装置外の複製された前記ファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、前記デーモンが該サーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で該サーバ装置外の複製された前記ファイルの更新を要求することを特徴とするサーバ装置。 A server device having an interface with a memory, a first network, and an interface with a second network,
The memory stores a file in which the same data is copied outside the server device,
A user program operating on the server device receives an update request to the file on the memory transmitted via the first network,
The user program requests a daemon operating on the server device to update the file;
The daemon confirms the exclusive / access right information of the file in the server device and the exclusive / access right information of the copied file outside the server device via the second network,
When the exclusive / access right information of the file in the server device and the exclusive / access right information of the copied file outside the server device have both update conditions, the daemon A server device that executes update of the file in the device and requests update of the copied file outside the server device via the second network.
前記第2ネットワーク経由での所定のファイルの排他・アクセス権情報の確認要求に応じて、要求に関する前記排他・アクセス権情報を前記デーモンが確認し、確認結果を前記第2ネットワーク経由で送出することを特徴とするサーバ装置。 The server device according to claim 5,
In response to a request for confirmation of exclusive / access right information of a predetermined file via the second network, the daemon confirms the exclusive / access right information regarding the request, and sends a confirmation result via the second network. A server device.
前記第2のサーバ装置の前記メモリに同一のデータが複製されるファイルが前記第1のサーバ装置の前記メモリに格納され、
前記第1ネットワーク経由で送信される前記ファイルへの更新要求を前記第1のサーバ装置上で動作するユーザプログラムが受信し、
前記ユーザプログラムが前記ファイルの更新を前記第1のサーバ装置上で動作するデーモンに要求し、
前記デーモンは前記第1のサーバ装置内の前記ファイルの排他・アクセス権情報を確認し、あわせて、前記第2のサーバ装置の複製された前記ファイルの排他・アクセス権情報を前記第2ネットワーク経由で前記第2のサーバ装置内で動作するデーモンに確認し、
前記第1のサーバ装置内の前記ファイルの排他・アクセス権情報、及び、前記第2のサーバ装置内の複製された前記ファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、前記第1のサーバ装置内の前記デーモンが前記第1のサーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で前記第2のサーバ装置上の複製された前記ファイルの更新を要求することを特徴とするファイルシステム。 A first server device having an interface with a memory, a first network, and an interface with a second network, and a second server device having an interface with the memory, the first network, and an interface of the second network A file system including
A file in which the same data is copied to the memory of the second server device is stored in the memory of the first server device;
A user program operating on the first server device receives an update request to the file transmitted via the first network;
The user program requests a daemon operating on the first server device to update the file;
The daemon confirms the exclusive / access right information of the file in the first server device, and also sends the exclusive / access right information of the duplicated file of the second server device via the second network. Confirm with the daemon running in the second server device,
The exclusive / access right information of the file in the first server device and the exclusive / access right information of the duplicated file in the second server device both have update conditions. The daemon in the first server device updates the file in the first server device, and the replicated file on the second server device via the second network is updated. A file system characterized by requesting an update.
前記第2のサーバ装置の前記メモリに同一のデータが複製されるファイルが前記第1のサーバ装置の前記メモリに格納され、かつ、前記第3のサーバ装置の前記メモリに同一のデータが複製されるファイルが前記第2のサーバ装置の前記メモリに格納され、
前記第1ネットワーク経由で送信される前記ファイルへの更新要求を前記第1のサーバ装置上で動作するユーザプログラムが受信し、
前記第1のサーバ装置上の前記ユーザプログラムが前記ファイルの更新を前記第1のサーバ装置上で動作するデーモンに要求し、
前記第1のサーバ装置上で動作するデーモンは前記第1のサーバ装置内の前記ファイルの排他・アクセス権情報を確認し、あわせて、前記第2のサーバ装置の複製された前記ファイルの排他・アクセス権情報を前記第2ネットワーク経由で前記第2のサーバ装置内で動作するデーモンに確認し、
前記第1のサーバ装置内の前記ファイルの排他・アクセス権情報、及び、前記第2のサーバ装置内の複製された前記ファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、前記第1のサーバ装置上で動作するデーモンが前記第1のサーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で前記第2のサーバ装置上の複製された前記ファイルの更新を要求し、
前記第1ネットワーク経由で送信される前記ファイルへの更新要求を前記第2のサーバ装置上で動作するユーザプログラムが受信し、
前記第2のサーバ装置上の前記ユーザプログラムが前記ファイルの更新を前記第2のサーバ装置上で動作するデーモンに要求し、
前記第2のサーバ装置上で動作するデーモンは前記第2のサーバ装置内の前記ファイルの排他・アクセス権情報を確認し、あわせて、前記第3のサーバ装置の複製された前記ファイルの排他・アクセス権情報を前記第2ネットワーク経由で前記第3のサーバ装置内で動作するデーモンに確認し、
前記第2のサーバ装置内の前記ファイルの排他・アクセス権情報、及び、前記第3のサーバ装置内の複製された前記ファイルの排他・アクセス権情報が更新条件をいずれも具備している場合に、前記第2のサーバ装置上で動作するデーモンが前記第2のサーバ装置内の前記ファイルの更新を実行し、かつ、前記第2ネットワーク経由で前記第3のサーバ装置上の複製された前記ファイルの更新を要求することを特徴とするファイルシステム。 A first server device having an interface with a memory, a first network, an interface with a second network, an interface with a memory, an interface with the first network, and a second server device having an interface with a second network; A file system comprising a memory, an interface with a first network, and a third server device having an interface with a second network,
A file in which the same data is duplicated in the memory of the second server device is stored in the memory of the first server device, and the same data is duplicated in the memory of the third server device. Stored in the memory of the second server device,
A user program operating on the first server device receives an update request to the file transmitted via the first network;
The user program on the first server device requests a daemon operating on the first server device to update the file;
The daemon that operates on the first server device confirms the exclusive / access right information of the file in the first server device, and at the same time, exclusive / excludes the duplicated file of the second server device. Confirm the access right information with the daemon operating in the second server device via the second network,
The exclusive / access right information of the file in the first server device and the exclusive / access right information of the duplicated file in the second server device both have update conditions. The daemon operating on the first server device updates the file in the first server device, and the copied file on the second server device via the second network Request an update for
A user program operating on the second server device receives an update request to the file transmitted via the first network;
The user program on the second server device requests update of the file from a daemon operating on the second server device;
The daemon operating on the second server device confirms the exclusive / access right information of the file in the second server device, and at the same time, exclusive / excludes the copied file of the third server device. Confirm the access right information with the daemon operating in the third server device via the second network,
When the exclusive / access right information of the file in the second server device and the exclusive / access right information of the duplicated file in the third server device both have update conditions The daemon operating on the second server device updates the file in the second server device, and the replicated file on the third server device via the second network A file system characterized by requesting an update of a file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007338774A JP2009157880A (en) | 2007-12-28 | 2007-12-28 | Server device and file system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007338774A JP2009157880A (en) | 2007-12-28 | 2007-12-28 | Server device and file system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009157880A true JP2009157880A (en) | 2009-07-16 |
Family
ID=40961783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007338774A Pending JP2009157880A (en) | 2007-12-28 | 2007-12-28 | Server device and file system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009157880A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9317440B2 (en) | 2012-07-26 | 2016-04-19 | Samsung Electronics Co., Ltd. | Computing device and virtual device control method for controlling virtual device by computing system |
CN112055849A (en) * | 2018-04-19 | 2020-12-08 | 村田机械株式会社 | Exclusive control system and exclusive control method |
-
2007
- 2007-12-28 JP JP2007338774A patent/JP2009157880A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9317440B2 (en) | 2012-07-26 | 2016-04-19 | Samsung Electronics Co., Ltd. | Computing device and virtual device control method for controlling virtual device by computing system |
CN112055849A (en) * | 2018-04-19 | 2020-12-08 | 村田机械株式会社 | Exclusive control system and exclusive control method |
CN112055849B (en) * | 2018-04-19 | 2024-01-16 | 村田机械株式会社 | Exclusive control system and exclusive control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5192226B2 (en) | Method for adding standby computer, computer and computer system | |
JP4277873B2 (en) | Transaction processing apparatus and transaction processing method | |
JP5556816B2 (en) | Distributed storage system, distributed storage method, distributed storage program and storage node | |
JP4727437B2 (en) | Storage control method for storage system having database | |
JP4927408B2 (en) | Storage system and data restoration method thereof | |
JP4170056B2 (en) | Backup / restore management method between replicated volumes and storage control device used in this method | |
JP4715774B2 (en) | Replication method, replication system, storage device, program | |
JP2007200294A (en) | System and method for rearranging active application to computer positioned in topologically remote location | |
JP2003248605A (en) | Storage system, main storing system, sub-storing system, and its data copying method | |
JP4508798B2 (en) | Storage remote copy method | |
JP2005267216A (en) | Storage remote copying method and information processing system | |
JP2007122117A (en) | Storage system and storage control method | |
JP6085234B2 (en) | Efficient remote copy method and apparatus | |
JP2010123055A (en) | Data migration program, data migration method, and data migration apparatus | |
JP5561334B2 (en) | Data transfer device | |
JP4201447B2 (en) | Distributed processing system | |
JP4717922B2 (en) | Information processing system, control method in information processing system, and management apparatus | |
JP5292350B2 (en) | Message queue management system, lock server, message queue management method, and message queue management program | |
JP2005284980A (en) | Initialization processing method for duplex system and remote disk mirroring | |
JP2009157880A (en) | Server device and file system | |
JP2006058960A (en) | Synchronization method and system in redundant configuration server system | |
JP2009265973A (en) | Data synchronization system, failure recovery method, and program | |
US10656867B2 (en) | Computer system, data management method, and data management program | |
JP7050707B2 (en) | Storage control device, storage system, storage control method, and storage control program | |
JP6802304B2 (en) | Storage control device, storage control system, storage control method, and storage control program |