JP2009163529A - System and method for multiplexing data - Google Patents
System and method for multiplexing data Download PDFInfo
- Publication number
- JP2009163529A JP2009163529A JP2008000947A JP2008000947A JP2009163529A JP 2009163529 A JP2009163529 A JP 2009163529A JP 2008000947 A JP2008000947 A JP 2008000947A JP 2008000947 A JP2008000947 A JP 2008000947A JP 2009163529 A JP2009163529 A JP 2009163529A
- Authority
- JP
- Japan
- Prior art keywords
- redundancy
- storage
- directory
- copy
- host
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明はデータ多重化システムに関し、特にユーザアプリケーションプログラムが稼動するホスト計算機が複数のストレージに同一のデータを書き込むことによりデータの多重化を行うデータ多重化システムに関する。 The present invention relates to a data multiplexing system, and more particularly, to a data multiplexing system in which a host computer on which a user application program runs writes data by writing the same data to a plurality of storages.
複数のストレージ(ディスク装置、ディスクアレイ、ファイルサーバなど)から構成され、1つのファイルシステムとして使用される分散型のストレージシステムが存在する。このようなシステムにおいて、障害対策等のために1つのファイルを複数のストレージに冗長に格納する際、図18に示すように、ホスト1から複数のストレージ2に同一のデータを書き込むことで冗長化する構成がある。
There is a distributed storage system that includes a plurality of storages (disk device, disk array, file server, etc.) and is used as one file system. In such a system, when one file is redundantly stored in multiple storages for troubleshooting, etc., redundancy is achieved by writing the same data from host 1 to
例えば特許文献1では、ホストと複数のストレージとの間にデータ二重化装置を設け、ホストが送信したデータI/O指示をデータ二重化装置が多重化して、各々のストレージに発行することにより、データの多重化を行っている。特許文献1ではホストの負荷を軽減するためにデータ二重化装置を設けているが、ホストの負荷増加が問題にならなければデータ二重化装置で行われる処理をホスト1自身で行うことも可能である。 For example, in Patent Document 1, a data duplexing device is provided between a host and a plurality of storages, and the data duplexing device multiplexes the data I / O instructions transmitted by the host and issues them to the respective storages. Multiplexing is performed. In Patent Document 1, a data duplexing device is provided in order to reduce the load on the host. However, if the increase in the host load does not become a problem, the host 1 itself can perform the processing performed by the data duplexing device.
このようにホストが直接あるいは間接的に同一のデータを複数のストレージに書き込むことでデータの冗長化を行っている多重化システムにおいて、ストレージに障害が発生した際、障害が発生したストレージに格納されていたデータの冗長度が減少し、信頼性が低下する。そのため、信頼性を回復するために、冗長度が減少したデータの新たな複製を作成する必要がある。 In a multiplexed system where data redundancy is achieved by directly or indirectly writing the same data to multiple storages in this way, when a storage failure occurs, the data is stored in the failed storage. Data redundancy is reduced and reliability is reduced. Therefore, it is necessary to create a new copy of data with reduced redundancy in order to restore reliability.
減少した冗長度を回復する処理の一例が特許文献1の0065段落〜0070段落に記載されている。その記載によれば、何れかのストレージ(特許文献1ではディスクサブシステム)に障害が発生し、障害発生当時と同じ状態の回復対象ストレージ(コピー先ストレージ)を用意できない場合には、正常なストレージ(コピー元ストレージ)に記憶されている全てのデータをコピー先ストレージへコピーすることで、冗長度を回復させている。そして、特許文献1では、冗長度の回復処理中は、ホストからコピー先ストレージへのアクセスを禁止し、コピー元ストレージへのアクセスは許容している。 An example of processing for recovering the reduced redundancy is described in paragraphs 0065 to 0070 of Patent Document 1. According to the description, if one of the storages (the disk subsystem in Patent Document 1) fails and a recovery target storage (copy destination storage) that is in the same state as at the time of the failure cannot be prepared, normal storage Redundancy is recovered by copying all data stored in (copy source storage) to the copy destination storage. In Patent Document 1, during the redundancy recovery process, access from the host to the copy destination storage is prohibited and access to the copy source storage is permitted.
しかしながら、コピー元ストレージに記憶されているデータをコピー先ストレージへコピーしている最中に、ホストがコピー元ストレージのデータを書き換えた場合、その書き換えた部分が未だコピーを完了していない領域であれば、ホストが書き換えたデータはその後に回復対象ストレージへコピーされるために問題は生じないが、既にコピーを終えた領域であれば、回復対象ストレージへ反映されないため、コピー元とコピー先のストレージの記憶内容に矛盾が生じる。このため、特許文献1には詳細は記載されていないが、コピー元のストレージをホストがどのように書き換えたかを記録しておき、コピー元ストレージのデータをコピー先ストレージへ一通りコピーし終えた時点で、前記記録を参照し、ホストによって書き換えられた箇所を再度コピーするといった処理が必要になる。しかし、この再コピー中にホストが再びコピー元ストレージを書き換えると、またコピーが必要になり、このような状態が際限なく繰り返される。結局、ホストがコピー元ストレージを更新しない時期が一定時間以上現れない限り、コピー元ストレージとコピー先ストレージの内容を同一にすることは困難であり、冗長度を回復するまでに長時間を要することになる。 However, if the host rewrites the data in the copy source storage while copying the data stored in the copy source storage to the copy destination storage, the rewritten part is an area that has not yet been copied. If there is, there is no problem because the data rewritten by the host is subsequently copied to the recovery target storage, but if the area has already been copied, it will not be reflected in the recovery target storage. Contradiction occurs in the storage contents of the storage. For this reason, although details are not described in Patent Document 1, it was recorded how the host rewritten the copy source storage, and the data in the copy source storage was completely copied to the copy destination storage. At this point, it is necessary to refer to the record and copy the portion rewritten by the host again. However, if the host rewrites the copy source storage again during this re-copying, another copy is required, and this state is repeated indefinitely. After all, unless the time when the host does not update the copy source storage appears for a certain period of time, it is difficult to make the contents of the copy source storage and the copy destination storage the same, and it takes a long time to restore redundancy. become.
本発明の目的は、ホストが複数のストレージに同一のデータを書き込むことで冗長化を行うデータ多重化システムにおいて、冗長度が低下した場合に、ホストからの書き込みを停止せずに冗長度を速やかに回復させることにある。 The object of the present invention is to quickly increase the redundancy without stopping the writing from the host when the redundancy is lowered in the data multiplexing system in which the host writes the same data to a plurality of storages to make the redundancy. It is to recover.
本発明の第1のデータ多重化システムは、複数のストレージと、同一のデータを前記複数のストレージに書き込むことによってデータの冗長化を行うホストと、前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバと、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記冗長度回復処理中に前記ホストと前記冗長度回復処理サーバとから同時に行われないように、ファイルおよびディレクトリ単位で排他を行うためのロック管理サーバとを備える。 In the first data multiplexing system of the present invention, a failure occurs in a plurality of storages, a host that performs data redundancy by writing the same data to the plurality of storages, and any one of the plurality of storages. When the redundancy is reduced due to the occurrence, any one of the plurality of storages having no failure is set as the copy source storage, and the storage used for restoring the redundancy is set as the copy destination storage, and the copy source storage A redundancy recovery processing server for executing redundancy recovery processing for copying the same data as data with reduced redundancy to the copy destination storage, and a change operation to files and directories stored in the plurality of storages. Simultaneously from the host and the redundancy recovery processing server during the redundancy recovery processing And a lock management server for performing exclusion in units of files and directories.
本発明の第1のデータ多重化方法は、a)ホストが、同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うステップと、b)冗長度回復処理サーバが、前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するステップと、c)前記ホストおよび前記冗長度回復処理サーバが、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記冗長度回復処理サーバとで前記冗長度回復処理中に同時に行われないように、ロック管理サーバからロックを取得してファイルおよびディレクトリ単位で排他を行うステップとを含む。 In the first data multiplexing method of the present invention, a) a host performs data redundancy by writing the same data to a plurality of storages; and b) a redundancy recovery processing server includes the plurality of storages. If the redundancy decreases due to a failure in one of the storage systems, copy the storage that is not faulty among the multiple storages as the copy source storage and the storage that is used to restore the redundancy. Performing a redundancy recovery process for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage; c) the host and the redundancy recovery processing server; The change operation to the files and directories stored in the plurality of storages is performed by the host and the And a step of acquiring a lock from the lock management server and performing exclusion on a file and directory basis so that the redundancy recovery processing server does not simultaneously perform the redundancy recovery processing.
本発明の第1のホスト計算機は、同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うホスト計算機であって、前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを、コピー元ストレージからコピー先ストレージへコピーし、変更対象のファイルあるいはディレクトリの変更操作を行うストレージアクセス手段とを備える。 The first host computer of the present invention is a host computer that performs redundancy of data by writing the same data to a plurality of storages, and is redundant due to a failure in one of the plurality of storages. In the case where the degree of storage decreases, any of the plurality of storages having no failure is set as the copy source storage, and the storage used for restoring the redundancy is set as the copy destination storage, and from the copy source storage to the copy destination storage During the redundancy recovery processing in the redundancy recovery processing server for executing redundancy recovery processing for copying the same data as the data with reduced redundancy, the files and directories stored in the plurality of storages are changed. Exclude files and directories in units so that operations are not performed simultaneously Exists when the lock means for acquiring the lock from the lock management server to perform and when accessing the copy destination storage during the redundancy recovery process, it is found that there is no upper directory of the file or directory to be changed. Storage access means for copying the upper directory that has not been copied from the copy source storage to the copy destination storage, and performing a change operation of the file or directory to be changed.
本発明の第2のホスト計算機は、同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うホスト計算機であって、前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行し、且つ、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーする機能を有する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見するストレージアクセス手段と、前記発見された存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信する不完全処理通知手段とを備える。 The second host computer of the present invention is a host computer that performs redundancy of data by writing the same data to a plurality of storages, and is redundant due to a failure in one of the plurality of storages. In the case where the degree of storage decreases, any of the plurality of storages having no failure is set as the copy source storage, and the storage used for restoring the redundancy is set as the copy destination storage, and from the copy source storage to the copy destination storage The redundancy recovery process that copies the same data as the data with reduced redundancy is executed, and the nonexistent upper directory specified in the incomplete processing notification and its subordinate directories and files are copied to the copy source storage. Redundancy recovery processing server that has a function to copy from one to the destination storage During the redundancy recovery process in, a lock is acquired from the lock management server for performing exclusion in units of files and directories so that the change operation to the files and directories stored in the plurality of storages is not performed simultaneously. Lock means, storage access means for discovering that there is no upper directory of the file or directory to be changed when accessing the copy destination storage during the redundancy recovery process, and the discovered upper directory that did not exist And incomplete processing notification means for transmitting the incomplete processing notification designating to the redundancy recovery processing server.
本発明の第1の冗長度回復処理サーバ装置は、ホストから同一のデータを書き込まれることによってデータの冗長化が行われる複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、冗長度を回復するための処理を実行する冗長度回復処理サーバ装置であって、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記コピー手段とから同時に行われないようにファイルおよびディレクトリ単位で排他を行うためにロック管理サーバからロックを取得するロック手段とを備える。 The first redundancy recovery processing server device according to the present invention has a reduced redundancy due to a failure in one of a plurality of storages that are made redundant by writing the same data from the host. In this case, a redundancy recovery processing server apparatus that executes a process for recovering redundancy, wherein one of the plurality of storages without failure is a copy source storage, and the redundancy is recovered. The storage to be used is the copy destination storage, the copy means for executing redundancy recovery processing for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage, and stored in the plurality of storages Change operation to the current file and directory is performed simultaneously from the host and the copy means And locking means for acquiring a lock from the lock management server in order to perform exclusion on a file and directory basis.
本発明の第2の冗長度回復処理サーバ装置は、ホストから同一のデータを書き込まれることによってデータの冗長化が行われる複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、冗長度を回復するための処理を実行する冗長度回復処理サーバ装置であって、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、前記冗長度回復処理中のコピー先ストレージへアクセスした前記ホストが、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見したことにより、存在しなかった上位ディレクトリを指定した不完全処理通知を送信した場合に、前記不完全処理通知を受信して記憶する不完全処理通知記憶手段とを備え、前記コピー手段は、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーすることを特徴とする。 According to the second redundancy recovery processing server device of the present invention, the redundancy is lowered due to a failure in one of a plurality of storages that are made redundant by writing the same data from the host. In this case, a redundancy recovery processing server apparatus that executes a process for recovering redundancy, wherein one of the plurality of storages without failure is a copy source storage, and the redundancy is recovered. The storage to be used is a copy destination storage, a copy means for executing redundancy recovery processing for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage, and during the redundancy recovery processing The host that has accessed the copy destination storage uses the upper directory of the file or directory to be changed. Incomplete processing notification storage means for receiving and storing the incomplete processing notification when an incomplete processing notification designating an upper directory that did not exist is transmitted due to the fact that there is no queue. The copy means is characterized in that the non-existing upper directory designated by the incomplete processing notification and its subordinate directories and files are copied from the copy source storage to the copy destination storage.
本発明によれば、ホストからストレージ群に冗長書き込みを行うデータ多重化システムにおいて、冗長度が低下した場合に、ホストからの書き込みを停止せずに冗長度を速やかに回復させることができる。その理由は、コピー元ストレージおよびコピー先ストレージを含む複数のストレージのファイルおよびディレクトリへの変更操作が冗長度回復処理中にホストと冗長度回復処理サーバとから同時に行われないように、ファイルおよびディレクトリ単位で排他しながら、コピー元ストレージからコピー先ストレージへのコピーと、ホストによるコピー元ストレージおよびコピー先ストレージを含む複数のストレージへの変更操作とを並行して行うようにしているためである。 According to the present invention, in a data multiplexing system that performs redundant writing from the host to the storage group, when the redundancy decreases, the redundancy can be quickly recovered without stopping the writing from the host. The reason for this is that files and directories are not changed at the same time from the host and the redundancy recovery processing server during the redundancy recovery processing. This is because the copy from the copy source storage to the copy destination storage and the change operation to a plurality of storages including the copy source storage and the copy destination storage by the host are performed in parallel while being excluded in units.
次に、本発明の実施の形態について図面を参照して詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
『第1の実施の形態』
[構成の説明]
図1を参照すると、本発明の第1の実施の形態に係るデータ多重化システムは、ホストコンピュータ(以下、単にホストと言う)1と、データを冗長化して格納する複数のストレージ2a〜2nと、ロック管理サーバ3と、冗長度回復処理サーバ4とから構成される。
"First embodiment"
[Description of configuration]
Referring to FIG. 1, a data multiplexing system according to the first embodiment of the present invention includes a host computer (hereinafter simply referred to as a host) 1 and a plurality of storages 2a to 2n for storing data in a redundant manner. The
ホスト1は、ユーザプログラム(図示せず)が動く計算機であり、一般的な計算機と同様にCPUおよびメモリなどのハードウェアを備えるとともにオペレーティングシステムなどのソフトウェアを備えており、特にデータの多重化に関連する部分として、ストレージアクセス部5を有している。ホスト1上で動作するユーザプログラムは、このストレージアクセス部5を介してストレージ2a〜2n中のファイルにアクセスを行う。 The host 1 is a computer on which a user program (not shown) runs. Like a general computer, the host 1 includes hardware such as a CPU and a memory and software such as an operating system. As a related part, the storage access unit 5 is provided. A user program running on the host 1 accesses the files in the storages 2a to 2n via the storage access unit 5.
ストレージアクセス部5は、ユーザプログラムからの指示に従ってストレージ2a〜2nに対してアクセスを行う手段であり、例えばホスト1を構成するCPUとプログラムとで実現される。ストレージアクセス部5は、状態管理部6とロック部7とを持つ。
The storage access unit 5 is means for accessing the storages 2a to 2n according to instructions from the user program, and is realized by, for example, a CPU and a program constituting the host 1. The storage access unit 5 has a
状態管理部6は、ストレージ2a〜2nの状態が、「通常状態」、「障害状態」、「回復中状態」の3状態の内の何れの状態であるかを管理する。「通常状態」とは、ストレージ2a〜2nの全ストレージが正常に動作している状態、つまり、指定されたデータの冗長度をnとすると、冗長度nで多重化されている状態を意味する。また「障害状態」とは、ストレージ2a〜2nの何れかがアクセスできなくなっており、冗長度が低下している状態を言う。「回復中状態」とは、障害によってアクセスできなくなったストレージに代えて別のストレージをアクセスできるようにするために、当該別のストレージに正常なストレージからデータをコピーし、冗長度を回復させている状態を言う。
The
これら3つの状態の遷移図を図3に示す。通常状態において、何れかのストレージが障害になると障害状態に遷移する。障害状態において、冗長度を回復する処理が開始されると、回復中状態へ遷移し、冗長度回復処理の完了時点で障害のあるストレージが無くなり冗長度が元に戻ると通常状態へ遷移し、未だ障害のストレージが残っていると障害状態へ遷移する。 A transition diagram of these three states is shown in FIG. In the normal state, when any storage fails, the state transits to the failure state. When the process to recover redundancy is started in the failure state, the state transitions to the recovering state, and when the redundancy recovery process is completed, the faulty storage disappears and the redundancy returns to the original state. If there is still a failed storage, it will transition to the failed state.
また状態管理部6は、障害状態のときには、アクセスできないストレージがどのストレージであるかを記録し、回復中状態のときには、アクセスできないストレージがどのストレージで、回復対象のストレージ(コピー先のストレージ)がどのストレージであるかを記録する。さらに状態管理部6は、各状態で処理を開始したものの完了、および、オープンしたファイル、ディレクトリのクローズを管理する。
In addition, the
ロック部7は、ロック管理サーバ3と通信し、ストレージに記憶されているファイルおよびディレクトリの単位でロックを獲得、解放する処理を行う。
The lock unit 7 communicates with the
ストレージアクセス部5は、必要に応じてロック部7を用いてロックを獲得、解放しながら、ホスト1上で稼動するユーザプログラムからの要求に従って、ストレージ2a〜2nに対するアクセス、具体的には、ファイル作成、ファイル削除、ディレクトリ作成、ディレクトリ削除、ファイルへの書き込み、ファイルからの読み出しといった処理を行う。ストレージアクセス部5の動作は、状態管理部6によって管理されている状態の種類によって相違する(詳しくは後述する)。 The storage access unit 5 accesses the storages 2a to 2n according to the request from the user program running on the host 1, while acquiring and releasing the lock using the lock unit 7 as necessary, specifically, the file Processing such as creation, file deletion, directory creation, directory deletion, file writing, and file reading is performed. The operation of the storage access unit 5 differs depending on the type of state managed by the state management unit 6 (details will be described later).
なお、図1ではホスト1は一つしか存在しないが、ホストは複数存在していても良い。 In FIG. 1, only one host 1 exists, but a plurality of hosts may exist.
ストレージ2a〜2nは、ファイルあるいはオブジェクトを記録するNAS(Network Attached Storage)あるいは、OSD(Object Based Storage Device)のような記憶装置である。各ファイルは、ストレージ2a〜2nに分散して配置される。また、同一のファイルをストレージ2a〜2n中の複数のストレージに格納することで、冗長化している。 The storages 2a to 2n are storage devices such as NAS (Network Attached Storage) or OSD (Object Based Storage Device) for recording files or objects. Each file is distributed and arranged in the storages 2a to 2n. Further, redundancy is achieved by storing the same file in a plurality of storages in the storages 2a to 2n.
本発明において、各ファイルを複数のストレージ2a〜2nに分散配置する方法、および各ファイルを冗長化する方法は任意である。例えば、AFS(Andrew File System)のボリュームのようにディレクトリの下位ディレクトリおよびファイルの単位で、ストレージに割り当てても良いし、また、ディレクトリ単位および、ファイル単位で行ってもよい。複製の格納方法に関しても、ストレージ2a・2b・2c、ストレージ2d・2e・2f等、ストレージを幾つかのグループに分け、個々のグループをセットとしたり、あるいは、各ストレージを複数の領域に分割しその領域単位で固定のセットを作り、各セットにそれぞれ同じ内容のファイルを配置する方法を使用しても良い。また、ファイルあるいはディレクトリ単位で、任意の組み合わせのストレージ群に割り当てを行い、その割り当てを図示しないメタサーバで管理し、ホスト1がパス名解決の際にメタサーバに問い合わせて、冗長化ファイルの所在を取得するようにしても良い。また、ファイルあるいはディレクトリ単位で、任意の組み合わせのストレージ群に割り当てを行い、各ホスト1に割り当て状況を記録したテーブルを持たせても良い。以下では、説明の便宜上、同一のファイルをストレージ2a〜2nに格納することで、冗長度nで多重化しているものとする。
In the present invention, a method of distributing each file in the plurality of storages 2a to 2n and a method of making each file redundant are arbitrary. For example, it may be allocated to storage in units of subordinate directories and files of a directory like an AFS (Andrew File System) volume, or may be performed in units of directories and files. Regarding storage methods for replicas,
ロック管理サーバ3は、ストレージ2a〜2nに記憶されているファイルおよびディレクトリへの変更操作が、ホスト1と冗長度回復処理サーバ4とから同時に行われないように、ファイルおよびディレクトリ単位でロックの取得者を管理するサーバである。冗長度nの場合、物理的にn個のファイルおよびディレクトリが存在するが、それぞれ独立にロックがかけられるのでなく、1つのロックでn個のファイルおよびディレクトリがロックされる。図1では、ロック管理サーバ3は1つしか存在しないが、複数あっても良い。複数備える構成では、例えばロック管理サーバ3毎に担当するファイルおよびディレクトリを分担する。このようにすることで、ロック管理サーバ3が処理ネックになることを避けることができる。
The
冗長度回復処理サーバ4は、ストレージ2a〜2nの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、ストレージ2a〜2nのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために新たに組み入れたストレージをコピー先ストレージとし、コピー元ストレージからコピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する計算機である。
When the redundancy is reduced due to a failure in one of the storages 2a to 2n, the redundancy
冗長度回復処理サーバ4は、一般的な計算機と同様にCPUおよびメモリなどのハードウェアを備えるとともにオペレーティングシステムなどのソフトウェアを備えており、特に冗長度回復処理に関連する部分として、コピー部8を有している。
The redundancy
コピー部8は、ストレージ2a〜2nの何れかのストレージから別のストレージにディレクトリおよびファイルのコピーを行う手段であり、例えば冗長度回復処理サーバ4を構成するCPUとプログラムとで実現される。冗長度回復処理サーバ4は、通知部9とロック部10とを持つ。
The copy unit 8 is means for copying directories and files from any one of the storages 2a to 2n to another storage, and is realized by, for example, a CPU and a program constituting the redundancy
通知部9は、減少したデータの冗長度を回復する処理の開始をホスト1に通知し、また回復処理の終了時にその旨をホスト1に通知する手段である。
The
ロック部10は、ロック管理サーバ3と通信し、ストレージに記憶されているファイルおよびディレクトリの単位でロックを獲得、解放する処理を行う。
The
なお、図1には冗長度回復処理サーバ4は1台しか存在しないが、複数あってもよい。複数備える構成では、冗長度回復処理サーバ4間で複製を作る対象を分担して複製の作成を行う。このようにすることで、回復処理を短時間に終わらせることができる。
Although only one
また、ロック管理サーバ3と冗長度回復処理サーバ4は、それぞれ独立した計算機として説明したが、同じ計算機で実現することも可能であり、ホスト1の機能の一部として実現することも可能である。
In addition, the
[動作の説明]
次に本実施の形態に係るデータ多重化システムにおけるストレージ2a〜2nに関連する動作を説明する。
[Description of operation]
Next, operations related to the storages 2a to 2n in the data multiplexing system according to the present embodiment will be described.
(1)ホスト1の動作1
ホスト1のストレージ2a〜2nに対する動作は、状態管理部6で管理されている状態によって決定される。ここでは、通常状態の動作と障害状態の動作を説明し、回復中状態での動作は冗長度回復処理サーバ4の動作を説明した後で説明する。
(1) Host 1 operation 1
The operation of the host 1 for the storages 2a to 2n is determined by the state managed by the
(1−1)通常状態
ホスト1での通常状態での動作について、ファイルの読み出し動作、ファイルの書き込み動作、ファイルの作成等の動作、障害状態の検出時の動作にわけて説明する。
(1-1) Normal State The operation in the normal state on the host 1 will be described in the following manner: a file read operation, a file write operation, a file creation operation, etc., and an operation when a failure state is detected.
(1−1−1)ファイルの読み出し
ホスト1のストレージアクセス部5は、ユーザプログラムがアクセス対象とするファイル(以下、対象ファイルと言う)を格納した複数のストレージ2a〜2n中の何れか1つのストレージから、該当ファイルの読み出しを行う。
(1-1-1) Reading of a file The storage access unit 5 of the host 1 is one of a plurality of storages 2a to 2n storing files to be accessed by a user program (hereinafter referred to as target files). Read the corresponding file from the storage.
(1−1−2)ファイルの書き込み
ホスト1のストレージアクセス部5は、対象ファイルを格納した複数のストレージ2a〜2nの全てに対して、該当ファイルへの書き込みを行う。これによって、対象ファイルの各データは冗長度nで冗長化される。
(1-1-2) File Writing The storage access unit 5 of the host 1 writes to the corresponding file in all of the plurality of storages 2a to 2n storing the target file. As a result, each data of the target file is made redundant with redundancy n.
(1−1−3)ファイルの作成等
ホスト1のストレージアクセス部5は、ファイル作成、ファイル削除、ディレクトリ作成、ディレクトリ削除については、対象ファイルまたは対象ディレクトリを格納した全てのストレージに対して、該当処理を行う。これによって、ファイルおよびディレクトリは冗長度nで冗長化される。
(1-1-3) File creation, etc. The storage access unit 5 of the host 1 applies file creation, file deletion, directory creation, and directory deletion to all storages that store the target file or directory. Process. As a result, files and directories are made redundant with redundancy n.
(1−1−4)障害状態の検出時
ストレージ2a〜2nの障害の検出は任意の方法で行われる。例えば、ホスト1のストレージアクセス部5は、ストレージ2a〜2nに対して処理要求を出した際、応答が帰って来ないストレージは障害が発生したストレージとして検出する。複数のホスト1がある場合、ストレージ2a〜2nの障害を検出したホスト1が他のホスト1に障害検出を通知しても良い。また、ストレージの監視用サーバ(図示せず)が各ストレージ2a〜2nの状態を監視し、ホスト1に通知しても良い。
(1-1-4) When a failure state is detected The failure of the storages 2a to 2n is detected by an arbitrary method. For example, when the storage access unit 5 of the host 1 issues a processing request to the storages 2a to 2n, the storage that does not return a response is detected as a storage in which a failure has occurred. When there are a plurality of hosts 1, the host 1 that has detected a failure in the storages 2a to 2n may notify the other hosts 1 of the failure detection. A storage monitoring server (not shown) may monitor the status of each storage 2a to 2n and notify the host 1 of the status.
ストレージ2a〜2nで障害が検出された場合、ホスト1の状態管理部6に、障害が発生したストレージが通知される。状態管理部6は、通常状態から障害状態に遷移し、通知されたストレージをアクセス不能ストレージとして記録する。以後、ストレージアクセス部5での処理要求の対象からアクセス不能ストレージが外される。
When a failure is detected in the storages 2a to 2n, the
(1−2)障害状態
ホスト1での障害状態での動作について、ファイルの読み出し動作、ファイルの書き込み動作、ファイルの作成等の動作、障害状態の検出時の動作にわけて説明する。
(1-2) Failure State The operation in the failure state on the host 1 will be described in the following manner: file read operation, file write operation, file creation operation, etc., and operation when a failure state is detected.
(1−2−1)ファイルの読み出し
ホスト1のストレージアクセス部5は、対象ファイルを格納した複数のストレージ2a〜2nのうち、状態管理部6にアクセス不能ストレージとして記録されているストレージを除いた残りのストレージ群の何れか1つのストレージから、該当ファイルの読み出しを行う。
(1-2-1) Reading of files The storage access unit 5 of the host 1 excludes storages recorded as inaccessible storages in the
(1−2−2)ファイルの書き込み
ホスト1のストレージアクセス部5は、対象ファイルを格納した複数のストレージ2a〜2nのうち、状態管理部6にアクセス不能ストレージとして記録されているストレージを除いた残りの全てのストレージに対して、該当ファイルへの書き込みを行う。
(1-2-2) File writing The storage access unit 5 of the host 1 excludes the storages recorded as inaccessible storages in the
(1−2−3)ファイル作成等
ホスト1のストレージアクセス部5は、ファイル作成、ファイル削除、ディレクトリ作成、ディレクトリ削除については、対象ファイルまたはディレクトリを格納した複数のストレージ2a〜2nのうち、状態管理部6にアクセス不能ストレージとして記録されているストレージを除いた残りのストレージ群の全てのストレージに対して、該当処理を行う。
(1-2-3) File creation, etc. The storage access unit 5 of the host 1 is in the state of a plurality of storages 2a to 2n storing the target file or directory for file creation, file deletion, directory creation, and directory deletion. The corresponding process is performed on all the storages in the remaining storage group excluding the storage recorded as inaccessible storage in the
(1−2−4)処理対象から外す具体的な方法
以上述べた障害状態での処理は、ファイルの書き込みや読み出し、ファイルの作成や削除、ディレクトリの作成や削除に先立って行われるパス名解決処理の際に、アクセス不能ストレージを処理の過程で範囲から外すことで実現する。ここで、パス名解決処理とは、指定されたパス名のファイルあるいはディレクトリにアクセスするための情報(ファイルハンドル)を取得する処理である。パス名解決処理の詳細は、回復中状態での処理として後述する。
(1-2-4) Specific method to exclude from processing target The processing in the failure state described above is the path name resolution performed prior to file writing / reading, file creation / deletion, directory creation / deletion. This is achieved by removing inaccessible storage from the scope during processing. Here, the path name resolution process is a process for acquiring information (file handle) for accessing a file or directory having a specified path name. Details of the path name resolution processing will be described later as processing in the recovery state.
(2)冗長度回復処理サーバ4の動作
(2−1)全体の流れ
障害が発生したストレージの代替となるストレージが用意され、当該用意されたストレージがホスト1および冗長回復処理サーバ4から要求を受信可能となった後に、システム管理者からの指示などを契機に、冗長度回復処理サーバ4の処理が開始される。ここで、代替となるストレージの記憶内容としては、障害が発生したストレージの障害発生時と同じ記憶内容になっている場合とそうでない場合の2通りが考えられるが、何れの場合も回復処理の手順は同じである。以下、冗長度回復処理サーバ4の全体の動作の流れを図4を参照して説明する。
(2) Operation of the redundancy recovery processing server 4 (2-1) Overall flow A storage is prepared as a substitute for the failed storage, and the prepared storage receives requests from the host 1 and the redundancy
冗長度回復処理サーバ4のコピー部8は、通知部9によって全ホスト1に対して、回復対象のストレージ(コピー先ストレージ)の情報を付加して回復処理中(回復処理の開始)を通知し(S100)、全ホスト1からの応答を待つ(S101)。回復処理中の通知を受けたホスト1の処理については後述するが、所定の条件が整った時点でホスト1が応答を返してくる。冗長度回復処理サーバ4は、全ホスト1から応答を受信すると、回復処理を行う(S102)。そして、回復処理が完了すると、通知部9によって全ホスト1に対して、回復処理が完了したストレージの情報を付加して回復処理完了を通知し(S103)、図4の処理を終了する。
The copy unit 8 of the redundancy
(2−2)回復処理
次に、図4のステップS102の回復処理の詳細について図5を参照して説明する。
(2-2) Recovery Processing Next, details of the recovery processing in step S102 of FIG. 4 will be described with reference to FIG.
まず、コピー部8は、正常なストレージ(コピー元ストレージ)から回復対象のストレージ(コピー先ストレージ)に格納する(コピーする)未処理のディレクトリを1つ選択し、処理対象とする(S200)。このステップS200での未処理のディレクトリの選択では、ディレクトリの木構造の最上位(rootに近いもの)から順に選択する。次にコピー部8は、処理対象としたディレクトリについてディレクトリ回復処理を行う(S201)。1つの未処理のディレクトリについての回復処理を終えると、回復対象のストレージに格納する未処理のディレクトリが残っているかどうかを判定し(S202)、残っていれば、ステップS200に戻って上述した処理と同様の処理を繰り返し、残っていなければ、図5の処理を終了する(S202)。 First, the copy unit 8 selects one unprocessed directory to be stored (copied) from a normal storage (copy source storage) to a recovery target storage (copy destination storage) and sets it as a processing target (S200). In selecting an unprocessed directory in step S200, selection is made in order from the top of the tree structure of the directory (close to the root). Next, the copy unit 8 performs directory recovery processing for the directory to be processed (S201). When the recovery process for one unprocessed directory is completed, it is determined whether or not there is an unprocessed directory to be stored in the storage to be recovered (S202), and if it remains, the process returns to step S200 and described above. If the same process is repeated and there is no remaining, the process of FIG. 5 is terminated (S202).
(2−3)ディレクトリ回復処理
次に、図5のステップS201のディレクトリ回復処理について図6を参照して説明する。
(2-3) Directory Recovery Processing Next, the directory recovery processing in step S201 in FIG. 5 will be described with reference to FIG.
ディレクトリ回復処理は、図5のステップS200で選択されたディレクトリを対象ディレクトリとして指定し、起動される。 The directory recovery process is started by specifying the directory selected in step S200 of FIG. 5 as the target directory.
まず、コピー部8は、ロック部10を用いて、対象ディレクトリを指定してロック管理サーバ3にロックを要求し、ロック取得の応答まで待つ(S300)。
First, the copy unit 8 uses the
次に、コピー部8は、回復対象ストレージ(コピー先ストレージ)の指定されたディレクトリに対応する回復対象ではないストレージ(コピー元ストレージ)のディレクトリの下位ディレクトリの内容と、回復対象ストレージの指定されたディレクトリの下位ディレクトリの内容とを比較する(S301)。 Next, the copy unit 8 determines the contents of the lower directory of the non-recoverable storage (copy source storage) corresponding to the specified directory of the recovery target storage (copy destination storage) and the specified recovery target storage. The contents of the lower directory of the directory are compared (S301).
比較の結果、コピー元ストレージに存在し、コピー先ストレージに存在しない下位ディレクトリに関して、コピー部8は、コピー先ストレージの対象ディレクトリに下位ディレクトリを作成する。比較の結果、コピー元ストレージに存在せず、コピー先ストレージに存在する下位ディレクトリについては、コピー部8は、コピー先ストレージの対象ディレクトリから削除する(S302)。 As a result of the comparison, the copy unit 8 creates a lower directory in the target directory of the copy destination storage for the lower directory that exists in the copy source storage and does not exist in the copy destination storage. As a result of the comparison, the copy unit 8 deletes the lower directory that does not exist in the copy source storage but exists in the copy destination storage from the target directory of the copy destination storage (S302).
次いで、コピー部8は、ロック部10を用いて、ロック管理サーバ3にステップS300で取得したロックの解放を要求する(S303)。
Next, the copy unit 8 uses the
次いで、コピー部8は、対象ディレクトリの下位のディレクトリで回復対象ストレージに格納する未処理のディレクトリがあれば、ステップS305に移行し、無ければステップS307に移行する(S304)。 Next, if there is an unprocessed directory stored in the recovery target storage in a directory below the target directory, the copy unit 8 proceeds to step S305, and if not, proceeds to step S307 (S304).
ステップS305では、コピー部8は、対象ディレクトリの下位のディレクトリ中で、回復対象ストレージに格納する未処理のディレクトリを1つ処理対象として選択する。次にコピー部8は、この処理対象として選択したディレクトリを指定して、当該図6のディレクトリ回復処理を再び呼び出し(S306)、終了したらステップS304に移行する。 In step S305, the copy unit 8 selects one unprocessed directory to be stored in the recovery target storage as a processing target among the directories below the target directory. Next, the copy unit 8 designates the directory selected as the processing target, calls the directory recovery processing of FIG. 6 again (S306), and when finished, proceeds to step S304.
ステップS307では、コピー部8は、対象ディレクトリを指定してファイル回復処理を行う。そして、ステップS307のファイル回復処理が終了すると、図6のディレクトリ回復処理を終了し、呼び出し元へ戻る。 In step S307, the copy unit 8 designates the target directory and performs file recovery processing. When the file recovery process in step S307 ends, the directory recovery process in FIG. 6 ends, and the process returns to the caller.
以上のように、ディレクトリの作成および削除に関して、排他して行うことで、冗長度回復処理サーバ4の処理中にホスト1が対象ディレクトリにディレクトリを作成および削除することを排除でき、一貫性が維持できる。
As described above, exclusive creation and deletion of directories can eliminate the host 1 from creating and deleting directories in the target directory during the processing of the redundancy
(2−4)ファイル回復処理
次に図6のステップS307のファイル回復処理について図7を参照して説明する。
(2-4) File Recovery Processing Next, the file recovery processing in step S307 in FIG. 6 will be described with reference to FIG.
ファイル回復処理は、ディレクトリを指定して起動される。 The file recovery process is started by specifying a directory.
まず、コピー部8は、ロック部10を用いて、対象ディレクトリを指定してロック管理サーバ3にロックを要求し、ロック取得の応答まで待つ(S400)。
First, the copy unit 8 uses the
次に、コピー部8は、回復対象ストレージ(コピー先ストレージ)の指定されたディレクトリに対応する回復対象ではないストレージ(コピー元ストレージ)のディレクトリ配下のファイルの内容と、回復対象ストレージの指定されたディレクトリ配下のファイルの内容とを比較する(S401)。この比較により、コピー元ストレージに存在するが、コピー先ストレージに存在しないファイル、コピー先ストレージに存在するが、コピー元ストレージに存在しないファイル、双方のストレージに共に存在するが、ファイルの中身が違っているファイルが検出される。 Next, the copy unit 8 determines the contents of the files under the directory of the storage (copy source storage) that is not the recovery target corresponding to the specified directory of the recovery target storage (copy destination storage) and the specified recovery target storage. The contents of the files under the directory are compared (S401). As a result of this comparison, files that exist in the copy source storage but do not exist in the copy destination storage, exist in the copy destination storage, but do not exist in the copy source storage, exist in both storages, but the contents of the files are different. Files are detected.
上記の比較の結果、一致していないファイルが1つもない場合にはステップS403へ、一致していないファイルが少なくとも1つある場合にはステップS404に移行する(S402)。 As a result of the comparison, if there is no unmatched file, the process proceeds to step S403. If there is at least one unmatched file, the process proceeds to step S404 (S402).
ステップS403では、コピー部8は、ロック部10を用いて、ロック管理サーバ3にステップS400で取得したロックの解放を要求し、図7の処理を終了する。
In step S403, the copy unit 8 uses the
ステップS404では、コピー部8は、ステップS401で発見した内容が一致しないファイルから1つを選択する。 In step S404, the copy unit 8 selects one of the files whose contents found in step S401 do not match.
コピー部8は、ステップS404で選択したファイルが、コピー元にないファイルの場合にはステップS406へ、そうでない場合にはステップS407へ移行する(S405)。 The copy unit 8 proceeds to step S406 if the file selected in step S404 is not a copy source file, and proceeds to step S407 if not (S405).
ステップS406では、コピー部8は、コピー先ストレージから該当ファイルを削除し、ステップS402に移行する。 In step S406, the copy unit 8 deletes the corresponding file from the copy destination storage, and proceeds to step S402.
ステップS407では、選択したファイルがコピー先にないファイルの場合はステップS408へ、そうでない場合はステップS409へ移行する。 In step S407, if the selected file is not at the copy destination, the process proceeds to step S408, and if not, the process proceeds to step S409.
ステップS408では、コピー部8は、コピー先ストレージにステップS404で選択したファイルを作成する。 In step S408, the copy unit 8 creates the file selected in step S404 in the copy destination storage.
ステップS409では、コピー部8は、ロック部10を用いて、ステップS404で選択したファイルを指定してロック管理サーバ3にロックを要求し、ロック取得の応答まで待つ。
In step S409, the copy unit 8 uses the
次いで、ロック部8は、ロック管理サーバ3にステップS400で取得したディレクトリについてのロックの解放を要求し(S410)、次いで、コピー元ストレージからコピー先ストレージへステップS404で選択したファイルをコピーする(S411)。そして、コピー部8は、ロック部10を用いて、ロック管理サーバ3に、ステップS409で取得したファイルについてロックの解放を要求し、ステップS400に移行する(S412)。
Next, the lock unit 8 requests the
このように、ファイルの作成および削除に関して、排他して行うことで、冗長度回復処理サーバ4の処理中にホスト1が対象ディレクトリにファイルを作成および削除することを排除でき、一貫性が維持できる。
In this way, by exclusively performing file creation and deletion, it is possible to eliminate the host 1 creating and deleting files in the target directory during the processing of the redundancy
また、ファイルのコピーに関して、排他して行うことで、冗長度回復処理サーバ4が処理中にホスト1が対象ファイルを変更することを排除でき、一貫性が維持できる。
Also, by exclusively performing file copying, it is possible to eliminate the host 1 changing the target file while the redundancy
なお、本実施の形態では、ファイルのコピーを行う前に対象ディレクトリをアンロックしているため(図7のS410)、ファイルコピー中にホスト1が対象ディレクトリにアクセスして該当ファイルの情報を削除すると、コピー先ストレージにコピーされたファイルはディレクトリからリンクされないファイルとして残ることになる。しかし、このようなファイルは、その参照カウントが0になった段階で削除されるため、一貫性は維持される。 In this embodiment, since the target directory is unlocked before copying the file (S410 in FIG. 7), the host 1 accesses the target directory during file copying and deletes the information of the corresponding file. Then, the file copied to the copy destination storage remains as a file that is not linked from the directory. However, since such files are deleted when their reference count reaches zero, consistency is maintained.
図16に、上記のディレクトリ回復処理およびファイル回復処理によってコピー元ストレージからコピー先ストレージへディレクトリおよびファイルがコピーされていく様子を示す。図中の(1)〜(31)は何れもコピー先ストレージの状態を示し、初期状態は(1)で示すようにルートのディレクトリのみである。また、コピー先ストレージは、(31)に示す状態と同じであるとしている。図中、□はディレクトリ、網かけした□はロックされているディレクトリ、○はファイルを示す。 FIG. 16 shows how directories and files are copied from the copy source storage to the copy destination storage by the directory recovery process and the file recovery process described above. In the figure, (1) to (31) all indicate the state of the copy destination storage, and the initial state is only the root directory as indicated by (1). Further, the copy destination storage is assumed to be in the same state as shown in (31). In the figure, □ indicates a directory, shaded □ indicates a locked directory, and ○ indicates a file.
図16の(2)〜(4)に示すように、最初はルートのディレクトリをロックした状態で、コピー元ストレージのルート直下にある2つのディレクトリが作成(コピー)される。次に、この2つのディレクトリのうちの1つのディレクトリが処理対象とされ、対象ディレクトリをロックした状態で、コピー元ストレージの対象ディレクトリ直下にある1つのディレクトリが作成(コピー)される((5)〜(7))。次に、この生成したディレクトリが処理対象とされ、対象ディレクトリをロックした状態で、コピー元ストレージの対象ディレクトリ直下にあるディレクトリをコピーしようとするが、コピー元ストレージにはディレクトリが存在しないので、アンロックして当該対象ディレクトリについての処理を終える((8)〜(10))。そして、末端のディレクトリに到達したので、その末端のディレクトリを処理対象としてロックした状態で、コピー元ストレージの対象ディレクトリ直下にある3つのファイルが作成(コピー)される((11)〜(13))。その後、対象ディレクトリを1つ前の階層に戻し、同様の操作を繰り返していく。 As shown in (2) to (4) of FIG. 16, two directories immediately under the root of the copy source storage are created (copied) with the root directory locked at first. Next, one of these two directories is targeted for processing, and one directory directly under the target directory in the copy source storage is created (copied) with the target directory locked ((5) ~ (7)). Next, when the generated directory is the target of processing and the target directory is locked, an attempt is made to copy a directory directly under the target directory of the copy source storage. Lock and finish the process for the target directory ((8) to (10)). Then, since the terminal directory has been reached, three files immediately under the target directory of the copy source storage are created (copied) with the terminal directory locked as a processing target ((11) to (13) ). Then, return the target directory to the previous level and repeat the same operation.
(3)ホスト1の動作2
(3−1)回復処理中の通知を受けた際の動作
ホスト1のストレージアクセス部5は、冗長度回復処理サーバ4から回復処理対象ストレージ(コピー先ストレージ)の情報を付加した回復処理中の通知を受信すると、図8に示す処理の実行を開始する。
(3) Host 1
(3-1) Operation when a notification is received during recovery processing The storage access unit 5 of the host 1 performs recovery processing with information on the recovery processing target storage (copy destination storage) added from the redundancy
まず、ストレージアクセス部5は、状態管理部6により、状態を回復処理中状態へ変更し、通知された回復処理対象ストレージの情報を図示しないメモリに記憶する(S500)。次にストレージアクセス部5は、状態管理部6により、回復処理中の通知を受信する前に開始されていた処理(ストレージ2a〜2nに対するファイル書き込みや読み出し、ディレクトリの作成や削除、ファイルの作成や削除)が完了するのを待つ(S501)。さらに、ストレージアクセス部5は、状態管理部6により、回復処理中の通知を受信する前にオープンされたファイルおよびディレクトリがクローズされるのを待つ(S502)。そして、回復処理開始通知を受信する前に開始されていた処理の全てが完了し、かつ、オープンしていたファイルおよびディレクトリがすべてクローズされると、回復処理中の通知に対する応答を、冗長度回復処理サーバ4に送信し(S503)、図8の処理を終了する。
First, the storage access unit 5 uses the
(3−2)回復処理完了の通知を受けた際の動作
ホスト1のストレージアクセス部5は、冗長度回復処理サーバ4から回復処理が完了したストレージの情報を付加した回復処理完了通知を受信すると、図9に示す処理の実行を開始する。
(3-2) Operation when receiving notification of completion of recovery processing When the storage access unit 5 of the host 1 receives a recovery processing completion notification from the redundancy
まず、ストレージアクセス部5は、状態管理部6により、回復処理が完了したストレージを回復対象ストレージから削除する(S600)。次に、未だ回復対象ストレージが残っているかどうかを状態管理部6で管理しているメモリの記録を参照して判断し、回復対象ストレージが少なくとも1つ残っていれば、図9の処理を終了し、1つも残っていなければステップS602へ移行する(S601)。ステップS602では、ストレージアクセス部5は、状態管理部6により、メモリの記録を参照してアクセス不能ストレージが残っているかどうかを判断し、少なくとも1つ残っていれば、ステップS603へ移行し、1つも残っていなければステップS604へ移行する。ステップS603では、状態管理部6により、状態を障害状態へ変更し、図9の処理を終了する。ステップS604では、状態管理部6により、状態を通常状態へ変更し、図9の処理を終了する。
First, the storage access unit 5 uses the
(3−3)回復中状態での動作
(3−3−1)パス名解決
回復中状態でのホスト1でのパス名解決の動作を図10を参照して説明する。
(3-3) Operation in recovery state (3-3-1) Path name resolution The path name resolution operation in host 1 in the recovery state will be described with reference to FIG.
パス名解決は、指定されたパス名のファイルあるいはディレクトリにアクセスするための情報(ファイルハンドル)を取得する処理である。 Path name resolution is a process of acquiring information (file handle) for accessing a file or directory having a specified path name.
まず、ストレージアクセス部5は、先頭ディレクトリを検索範囲に設定する(S700)。次にストレージアクセス部5は、先頭ディレクトリを格納したストレージの情報とファイルハンドルを取得する(S701)。次にストレージアクセス部5は、ステップS700で設定した範囲がパス名解決の末端であった場合には、ステップS703に移行し、違う場合はステップS704に移行する(S702)。ステップS703では、ストレージアクセス部5は、ステップS701で取得したストレージとファイルハンドルの情報をパス名解決処理の返却値とし、終了する。 First, the storage access unit 5 sets the first directory as a search range (S700). Next, the storage access unit 5 acquires information and a file handle of the storage storing the head directory (S701). Next, if the range set in step S700 is the end of path name resolution, the storage access unit 5 proceeds to step S703, otherwise proceeds to step S704 (S702). In step S703, the storage access unit 5 uses the storage and file handle information acquired in step S701 as the return value of the path name resolution process, and the process ends.
他方、ステップS704では、ストレージアクセス部5は、検索範囲となるディレクトリの下のディレクトリ名あるいはファイル名をパス名から抽出し、検索対象として設定する。 On the other hand, in step S704, the storage access unit 5 extracts the directory name or file name under the directory that is the search range from the path name, and sets it as a search target.
次いで、ストレージアクセス部5は、検索範囲のストレージ群のうち回復中あるいはアクセス不能となっていないストレージで且つ未検索(未処理)のストレージを1つ選択する(S705)。次いで、ステップS705で対象ストレージがあった場合にはステップS707へ、無かった場合にはステップS711へ移行する(S706)。 Next, the storage access unit 5 selects one unrecovered (unprocessed) storage that is not being recovered or accessed from the storage group within the search range (S705). Next, if there is a target storage in step S705, the process proceeds to step S707, and if there is no target storage, the process proceeds to step S711 (S706).
ステップS707では、ストレージアクセス部5は、ステップS705で選択したストレージの検索範囲のディレクトリから検索対象のファイルあるいはディレクトリのファイルハンドル取得(lookup)を行う。このステップS707でlookupが成功した場合には、ステップS710へ、失敗した場合にはステップS709へ移行する(S708)。ステップS709では、ストレージアクセス部5は、パス名解決処理の返却値をエラーとし、図10の処理を終了する。ステップS710では、ストレージアクセス部5は、ステップS707で取得したファイルハンドルを、ステップS705で選択したストレージにおける検索対象ファイルあるいはディレクトリのファイルハンドルとして図示しないメモリに記憶する。そして、ステップS705へ移行する。 In step S707, the storage access unit 5 obtains a file handle (lookup) of the search target file or directory from the directory in the storage search range selected in step S705. If the lookup is successful in step S707, the process proceeds to step S710, and if it fails, the process proceeds to step S709 (S708). In step S709, the storage access unit 5 sets the return value of the path name resolution process as an error, and ends the process of FIG. In step S710, the storage access unit 5 stores the file handle acquired in step S707 in a memory (not shown) as a file handle of a search target file or directory in the storage selected in step S705. Then, control goes to a step S705.
他方、ステップS711では、ストレージアクセス部5は、検索範囲のストレージ群のうち回復中のストレージで且つ未検索(未処理)のストレージを選択する。次いで、ステップS711で対象ストレージがあった場合にはステップS716へ、無かった場合にはステップS713へ移行する。 On the other hand, in step S711, the storage access unit 5 selects a storage that is being recovered and has not been searched (unprocessed) among the storage groups in the search range. Next, if there is a target storage in step S711, the process proceeds to step S716, and if not, the process proceeds to step S713.
ステップS713では、ストレージアクセス部5は、パス名解決の末端まで解決されているかどうかを判別し、解決されている場合には、ステップS714へ移行し、解決されていない場合にはステップS715へ移行する。ステップS714では、記憶したファイルハンドル群を返却し、図10の処理を終了する。ステップS715では、記憶したファイルハンドル群を次の検索範囲に設定し、ステップS704へ移行して上述した処理を繰り返す。 In step S713, the storage access unit 5 determines whether or not the end of the path name resolution has been resolved. If it has been resolved, the process proceeds to step S714, and if not resolved, the process proceeds to step S715. To do. In step S714, the stored file handle group is returned, and the process of FIG. 10 is terminated. In step S715, the stored file handle group is set to the next search range, the process proceeds to step S704, and the above-described processing is repeated.
また、ステップS716では、ストレージアクセス部5は、ステップS711で選択したストレージ(回復中のストレージ)の検索範囲のディレクトリから検索対象のファイルあるいはディレクトリのファイルハンドル取得(lookup)を行う。そして、このステップS716でlookupが成功した場合には、ステップS718へ、失敗した場合にはステップS719へ移行する(S717)。 In step S716, the storage access unit 5 acquires a file handle (lookup) of the file to be searched or the directory from the directory in the search range of the storage selected in step S711 (the storage being recovered). If the lookup is successful in step S716, the process proceeds to step S718. If the lookup is unsuccessful, the process proceeds to step S719 (S717).
ステップS718では、ストレージアクセス部5は、ステップS716で取得したファイルハンドルを、ステップS711で選択したストレージにおける検索対象ファイルあるいはディレクトリのファイルハンドルとして図示しないメモリに記憶する。そして、ステップS711へ移行する。 In step S718, the storage access unit 5 stores the file handle acquired in step S716 in a memory (not shown) as a file handle of a search target file or directory in the storage selected in step S711. Then, the process proceeds to step S711.
ステップS719へ移行する状況が発生するのは、回復中のストレージに対する冗長度回復処理サーバ4によるコピー処理が未だ実施されていないディレクトリやファイルに対してホスト1がアクセスしようとした場面で発生する。本実施の形態では、この時点で、ホスト1自身が冗長度回復処理サーバ4に代わって、今回のパス名解決に必要な範囲で、コピー元ストレージからコピー先ストレージへのコピー処理を実施する。
The situation where the process proceeds to step S719 occurs when the host 1 tries to access a directory or file that has not yet been copied by the redundancy
具体的には、まず、ストレージアクセス部5は、ロック部7を用いて、検索範囲のディレクトリを指定してロック管理サーバ3にロックを要求し、ロックの獲得まで待つ(S719)。次に、ストレージアクセス部5は、ステップS704で対象としたファイルあるいはディレクトリを、ステップS711で選択したストレージの検索範囲のディレクトリ下に作成(コピー)する(S720)。次いで、ステップS720で作成したファイルあるいはディレクトリを、ステップS711で選択したストレージのファイルハンドラとして記憶する(S721)。最後に、ストレージアクセス部5は、ロック部7を用いて、ロック管理サーバ3にステップS719で獲得したロックの解放を要求する(S722)。そして、ステップS711へ移行する。
Specifically, first, the storage access unit 5 uses the lock unit 7 to designate a directory in the search range, requests a lock from the
図17に、ホスト1でのパス名解決時に、冗長度の回復対象ストレージに対して対象ディレクトリの作成を行う例を示す。ここでは、図16の(13)の状態にある回復対象ストレージに対して、ホスト1が新しいファイルを作成する場合のものである。 FIG. 17 shows an example in which the target directory is created for the recovery target storage with redundancy when the host 1 resolves the path name. In this example, the host 1 creates a new file for the recovery target storage in the state (13) of FIG.
ホスト1は、ルート直下の2つのディレクトリのうちの右側のディレクトリまでのlookup処理を終え、その下のディレクトリ名をパス名から抽出して(図10のS704)、ステップS716でlookup処理を行った際、対象ディレクトリが無いことを発見する。そこで、ホスト1は、図17の(14)に示すように検索範囲のディレクトリをロックし(S719)、次いで(15)に示すように正常な他のストレージからコピーすることでディレクトリを作成し(S720)、この作成したディレクトリを回復対象ストレージのファイルハンドラとして記憶し(S721)、(16)に示すように検索範囲のディレクトリのロックを解放する(S722)。その後、ホスト1はパス名解決で得られたファイルハンドラを用いて新規ファイルを作成する(図17の(17)〜(19))。 The host 1 finishes the lookup process up to the right directory of the two directories directly under the root, extracts the directory name below it from the path name (S704 in FIG. 10), and performs the lookup process in step S716. When discovering, there is no target directory. Therefore, the host 1 locks the directory in the search range as shown in (14) of FIG. 17 (S719), and then creates a directory by copying from another normal storage as shown in (15) ( The created directory is stored as a file handler of the recovery target storage (S721), and the search range directory lock is released as shown in (16) (S722). Thereafter, the host 1 creates a new file using the file handler obtained by the path name resolution ((17) to (19) in FIG. 17).
このように本実施の形態では、パス名解決中に回復対象ストレージに存在しないディレクトリが発見された場合にディレクトリを作成することができる。また、作成する際にロックを行っているため、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることもない。
As described above, in the present embodiment, a directory can be created when a directory that does not exist in the recovery target storage is found during path name resolution. In addition, since the lock is performed at the time of creation, the process of the redundancy
図10の処理に関して説明を補足する。ステップS700では、rootと呼ばれる先頭のディレクトリから検索を開始する。また、rootの格納ストレージ群および対応したファイルハンドルはmount等のタイミングで事前に取得されているものとする。 A supplementary explanation will be given regarding the processing of FIG. In step S700, the search is started from the head directory called root. In addition, it is assumed that the root storage storage group and the corresponding file handle are acquired in advance at the timing of mount or the like.
また、相対パス指定の場合には、root以外のディレクトリから解決を行う場合もある。この場合、相対パス指定の場合も視点となるディレクトリの格納ストレージ群および対応したファイルハンドルはワーキングディレクトリの解決等のタイミングで事前に取得されているものとする。 Also, when specifying a relative path, resolution may be performed from a directory other than root. In this case, it is assumed that the storage storage group of the directory as a viewpoint and the corresponding file handle are acquired in advance at the timing of the working directory resolution or the like even in the case of relative path designation.
ファイルハンドルの取得は、ホスト1内に記憶している情報を使用する。また、ストレージ2a〜2nに問い合わせる場合もある。さらに、メタサーバと呼ばれるストレージ内のファイルの格納を管理するサーバに問い合わせる場合もある。 Information stored in the host 1 is used to obtain the file handle. In some cases, the storage 2a to 2n may be inquired. Further, there is a case in which a server that manages storage of files in a storage called a meta server is inquired.
(3−3−2)ファイルの作成等
回復中状態において、ホスト1のストレージアクセス部5がディレクトリ作成、ディレクトリ削除、ファイル作成、ディレクトリ作成を行う場合、実際に作成および削除を行う前に、ロック部7を用いて、ファイルまたはディレクトリが作成あるいは削除される上位ディレクトリを指定してロック管理サーバ3にロックを要求し、ロックの獲得まで待つ。そして、実際に作成および削除を行った後に、ロック部7を用いて、前記取得したロックの解放をロック管理サーバ3に要求する。このようにファイルあるいはディレクトリが作成あるいは削除する際にロックを行っているため、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることがない。
(3-3-2) File creation, etc. In the recovery state, when the storage access unit 5 of the host 1 creates a directory, deletes a directory, creates a file, or creates a directory, lock it before actually creating or deleting it. Using the unit 7, an upper directory in which a file or directory is created or deleted is specified, a lock is requested to the
(3−3−3)ファイルオープン
ホスト1のストレージアクセス部5は、ファイルのオープン毎にロックの管理を行う。回復中状態でのホスト1でのファイルオープンの動作を図11を参照して説明する。
(3-3-3) File Open The storage access unit 5 of the host 1 manages locks every time a file is opened. The file open operation on the host 1 in the recovery state will be described with reference to FIG.
まず、ストレージアクセス部5は、オープンがリードオンリー(read only)モードで要求された場合には、ステップS803へ移行し、違う場合はステップS801へ移行する。ステップS801では、ロック部7により、オープン対象を指定してロック管理サーバ3にロックを要求し、ロックの獲得まで待つ。次いで、後のロックの解放に必要となる情報をオープン毎のロック管理の領域に記憶し、ステップS803へ移行する(S802)。
First, the storage access unit 5 shifts to step S803 when open is requested in the read only mode, and shifts to step S801 when different. In step S801, the lock unit 7 designates an open target, requests lock to the
ステップS803では、ストレージアクセス部5は、オープン処理をアクセス不能ストレージ以外の対象ファイルを格納しているストレージに対して行い、図11の処理を終了する。 In step S803, the storage access unit 5 performs the open process on the storage storing the target file other than the inaccessible storage, and ends the process of FIG.
(3−3−4)ファイルクローズ
回復中状態でのホスト1でのファイルクローズの動作を図12を参照して説明する。
(3-3-4) File close The file close operation on the host 1 during recovery is described with reference to FIG.
まず、ストレージアクセス部5は、オープンしたストレージについてクローズ処理を行う(S900)。次に、オープン毎のロック管理領域を参照して、ロックされていたことが記録されていた場合はステップS902へ移行し、記録されていなかった場合は図12の処理を終了する(S901)。ステップS902では、ロック部7を用いて、記録されていた情報をもとにロック管理サーバ3にロックの解放を要求し、図12の処理を終了する。
First, the storage access unit 5 performs a close process on the opened storage (S900). Next, referring to the lock management area for each open, if it has been recorded that it has been locked, the process proceeds to step S902, and if it has not been recorded, the process of FIG. 12 ends (S901). In step S902, the lock unit 7 is used to request the
このようにして、オープンでロックを行い、クローズでロックを解放することで、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることがない。また、リードオンリー(read only)の際にはロックを行わないことで、ライトを行わない際にはホスト1の処理を妨げることもない。
In this way, by performing lock by opening and releasing the lock by closing, the processing of the redundancy
(3−3−5)ファイルの書き込み
ホスト1のストレージアクセス部5は、回復中状態においてファイルへの書き込みを行う場合、対象ファイルを格納した複数のストレージのうち状態管理部6でアクセス不能ストレージとして記録されているストレージを除いた残りの全てのストレージ群に該当ファイルの書き込みを行う。
(3-3-5) File writing When the storage access unit 5 of the host 1 writes to a file in the recovery state, the
(3−3−6)ファイルの読み出し
ホスト1のストレージアクセス部5は、回復中状態においてファイルからの読み出しを行う場合、対象ファイルを格納した複数のストレージのうち状態管理部6でアクセス不能ストレージおよび回復対象ストレージとして記録されているストレージを除いた残りの全てのストレージ群の何れかのストレージから該当ファイルの読み出しを行う。
(3-3-6) File Reading When the storage access unit 5 of the host 1 performs reading from the file in the recovery state, the
(4)ロック管理サーバ3の動作
ロック管理サーバ3は、ファイルあるいはディレクトリ単位でロックの取得状態を管理し、ロックは同時には1要求にしか取得を許可しない。例えばロック管理サーバ3は、ロック要求をサーバ内で記憶し、同一ファイルあるいはディレクトリに関する要求は、到着順等の順序で次にロックを取得する要求を決定する。また、ロック管理サーバ3は、ロック取得の要求に対しては、許可した場合に取得できたことを通知し、ロック解放要求によりロックの解放を行う。
(4) Operation of
なお、本実施の形態では、ホスト1のストレージアクセス部5は、ファイルのオープン時にロック要求を行ったが、対象ファイルに初めてライトする前にロックを行い、ファイルのクローズ時にロックを解放する方法でも良い。このようにすると、実際にファイルを変更しない(ライトしない)場合には、ロックを行わないので、ホスト1での処理を妨げる可能性をさらに下げられる。 In this embodiment, the storage access unit 5 of the host 1 issued a lock request when the file was opened. However, the storage access unit 5 performs a lock request before writing to the target file for the first time and releases the lock when the file is closed. good. In this way, if the file is not actually changed (not written), the lock is not performed, so that the possibility of hindering the processing in the host 1 can be further reduced.
『第2の実施の形態』
図2を参照すると、本発明の第2の実施の形態に係るデータ多重化システムは、図1に示した第1の実施の形態に係るデータ多重化システムと比較して、ホスト1がストレージアクセス部5に代えてストレージアクセス部5Aを備え、冗長度回復処理サーバ4がコピー部8に代えてコピー部8Aを備えている点で相違する。
“Second Embodiment”
Referring to FIG. 2, the data multiplexing system according to the second embodiment of the present invention is compared with the data multiplexing system according to the first embodiment shown in FIG. The difference is that a
ホスト1のストレージアクセス部5Aは、ストレージアクセス部5と比較して、新たに不完全処理通知部11を備えている点で相違し、また、回復中状態での動作が一部相違している。
The
冗長度回復処理サーバ4のコピー部8Aは、コピー部8と比較して、新たに不完全処理通知保存部12を備えている点で相違し、また、回復処理の一部が相違している。
The copy unit 8A of the redundancy
以下、本実施の形態の動作を第1の実施の形態との相違点を中心に説明する。 Hereinafter, the operation of the present embodiment will be described with a focus on differences from the first embodiment.
(3')ホスト1の動作2
(3−3')回復中状態でのホストの動作
(3−3−1')パス名解決
回復中状態でのホスト1でのパス名解決の動作を図14を参照して説明する。前述したように、パス名解決は、指定されたパス名のファイルあるいはディレクトリにアクセスするための情報(ファイルハンドル)を取得する処理である。なお、本実施の形態の場合、ストレージアクセス部5Aは、不完全処理flagを処理の内部状態として持つ。
(3 ') Host 1
(3-3 ') Host operation in recovery state (3-3-1') Path name resolution The path name resolution operation in host 1 in the recovery state will be described with reference to FIG. As described above, path name resolution is a process of acquiring information (file handle) for accessing a file or directory having a specified path name. In the case of the present embodiment, the
まず、ストレージアクセス部5Aは、先頭ディレクトリを検索範囲に設定し、不完全処理flagをクリアする(S1100)。次いで、先頭ディレクトリを格納したストレージの情報とファイルハンドルを取得し(S1101)、次にステップS1100で設定した範囲がパス名解決の末端であった場合には、ステップS1103に移行し、違う場合はステップS1104に移行する(S1102)。ステップS1103では、ステップS1101で取得したストレージとファイルハンドルの情報と不完全処理flagとを返却し、終了する。
First, the
ステップS1104以降の処理のうち、ステップS1104〜S1113、S1115〜S1118は、図10のステップS704〜S713、S715〜S718と同じである。ステップS1119とステップS1114では以下のような処理が行われる。 Of the processes after step S1104, steps S1104 to S1113 and S1115 to S1118 are the same as steps S704 to S713 and S715 to S718 in FIG. In steps S1119 and S1114, the following processing is performed.
ステップS1119では、ステップS1116におけるlookupに失敗したので、不完全処理flagをセットし、今回見つからなかったディレクトリを不完全処理flagに対応付けてメモリに記録し、ステップS1111へ移行する。第1の実施の形態では、パス名解決の際に回復対象ストレージに存在しないディレクトリを発見すると、ホスト1がそのディレクトリを作成(コピー)した。しかし、本実施の形態では、パス名解決中に回復対象ストレージに存在しないディレクトリが発見された場合は、検索範囲からは外れたとして、下位のディレクトリあるいはファイルに関しては回復対象ストレージに対して変更処理は行わない。その代わりに、未発見のディレクトリのコピーを後に冗長度回復処理サーバ4に行わせるために、不完全処理flagをセットし、見つからなかったディレクトリをメモリに記録しておく。これにより、ディレクトリを作成する処理とそれに関連するロックを行わないため、第1の実施の形態に較べて、ホスト1での処理時間が短縮される。
In step S1119, since the lookup in step S1116 failed, the incomplete process flag is set, the directory not found this time is recorded in the memory in association with the incomplete process flag, and the process proceeds to step S1111. In the first embodiment, when a directory that does not exist in the recovery target storage is found during path name resolution, the host 1 creates (copies) the directory. However, in this embodiment, when a directory that does not exist in the recovery target storage is found during path name resolution, it is assumed that the directory is out of the search range, and the lower directory or file is changed to the recovery target storage. Do not do. Instead, in order to cause the redundancy
ステップS1114では、記憶したファイルハンドル群と、不完全処理flagおよびそれに対応して記憶した未発見ディレクトリの情報とをパス名解決処理の返却値とし、図14の処理を終える。 In step S1114, the stored file handle group, the incomplete process flag and the information of the undiscovered directory stored corresponding thereto are used as return values of the path name resolution process, and the process of FIG. 14 is ended.
(3−3−2')ファイルの作成等
回復中状態において、ホスト1のストレージアクセス部5がディレクトリ作成、ディレクトリ削除、ファイル作成、ファイル削除を行う場合、実際に作成および削除を行う前に、ロック部7を用いて、ファイルまたはディレクトリが作成あるいは削除される上位ディレクトリを指定してロック管理サーバ3にロックを要求し、ロックの獲得まで待つ。
(3-3-2 ') File creation, etc. In the recovery state, when the storage access unit 5 of the host 1 creates a directory, deletes a directory, creates a file, and deletes a file, before actually creating and deleting it, The lock unit 7 is used to designate an upper directory in which a file or directory is created or deleted, request the lock to the
次に、ファイルハンドルが取得できたストレージに対してのみ、ディレクトリ作成、ディレクトリ削除、ファイル作成、ファイル削除を行った後に、ロック部7を用いて、前記取得したロックの解放をロック管理サーバ3に要求する。このようにファイルあるいはディレクトリが作成あるいは削除する際にロックを行っているため、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることがない。
Next, after creating a directory, deleting a directory, creating a file, and deleting a file only for the storage from which the file handle can be acquired, the lock unit 7 is used to release the acquired lock to the
その後、パス名解決で返却された不完全処理flagがセットされていた場合には、不完全処理通知部11を用いて、不完全処理flagに対応して記録された未発見ディレクトリのうちの上位ディレクトリを指定し、冗長度回復処理サーバ4に不完全処理を通知する。パス名解決の際に回復対象ストレージにディレクトリを作成せず回復対象ストレージに変更を行わないが、冗長度回復処理サーバ4に不完全処理を通知し、後述するようにコピー処理を再度実行させることにより、ディレクトリの状態の同期が保証される。
After that, if the incomplete processing flag returned by the path name resolution is set, the incomplete processing notifying unit 11 is used, and the higher rank of the undiscovered directories recorded corresponding to the incomplete processing flag A directory is specified, and incomplete processing is notified to the redundancy
(3−3−3')ファイルオープン
本実施の形態での回復中状態でのホスト1のファイルのオープン処理は、ファイルハンドルが取得できたストレージに対してのみ行う点、オープン処理の呼び出しの際にパス名解決で返却された不完全処理flagとそれに付随する未発見ディレクトリとを受け取って記憶しておく点を除き、第1の実施の形態の回復中状態でのホスト1のファイルのオープン処理と同じである。ここで、不完全処理flagとそれに付随する未発見ディレクトリとを記憶しておくのは、後のファイルのクローズ時に使用するためである。
(3-3-3 ') File open The file open process of the host 1 in the recovery status in this embodiment is performed only for the storage for which the file handle was obtained. Processing of the host 1 file in the recovery state of the first embodiment, except that the incomplete processing flag returned by path name resolution and the undiscovered directory accompanying it are received and stored in Is the same. Here, the reason why the incomplete processing flag and the undiscovered directory associated therewith are stored is to be used when the file is closed later.
(3−3−4')ファイルクローズ
次に回復中状態でのホスト1でのファイルクローズの動作を図15を参照して説明する。
(3-3-4 ′) File Close Next, the file close operation in the host 1 in the recovery state will be described with reference to FIG.
まず、オープンしたストレージについてクローズ処理を行う(S1200)。 First, close processing is performed on the opened storage (S1200).
次に、オープン毎のロック管理領域にロックされていたことが記録されていた場合、ステップS1202へ移行し、記録されていなかった場合は図15の処理を終了する(S1201)。 Next, if it is recorded that the lock has been locked in the lock management area for each open, the process proceeds to step S1202, and if not recorded, the process of FIG. 15 is terminated (S1201).
ステップS1202では、記録されていた情報をもとにロック管理サーバ3にロックの解放を要求する。このようにすることで、ファイルあるいはディレクトリが作成あるいは削除する際にロックを行っているため、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることがない。
In step S1202, the
次に、オープン時に記憶した不完全処理flagを参照し、セットされて渡されていた場合にはステップS1204へ移行し、そうでない場合には図15の処理を終了する。 Next, the incomplete processing flag stored at the time of opening is referred to. If it is set and passed, the process proceeds to step S1204. If not, the process of FIG. 15 is terminated.
ステップS1204では、不完全処理通知保存部12を用いて、冗長度回復処理サーバ4に、不完全処理flagに付随して記録された未発見ディレクトリのうちの上位ディレクトリを指定して、不完全処理を通知し、終了する。このように、パス名解決の際に回復対象ストレージにディレクトリを作成せず回復対象ストレージに変更を行わないが、冗長度回復処理サーバ4に不完全処理を通知し、再度コピー処理を実行させることにより、ディレクトリの状態の同期が保証される。
In step S1204, the incomplete processing
(3−3−5')ファイルの書き込み
ホスト1のストレージアクセス部5は、回復中状態においてファイルへの書き込みを行う場合、対象ファイルを格納した複数のストレージのうち、状態管理部6がファイルオープンしたストレージ群の全てに該当ファイルの書き込みを行う。従って、パス名解決ができなかった回復対象ストレージについては、書き込みは行われない。
(3-3-5 ') File writing When the storage access unit 5 of the host 1 writes to a file in the recovery state, the
(3−3−6')ファイルの読み出し
ホスト1のストレージアクセス部5は、回復中状態においてファイルからの読み出しを行う場合、対象ファイルを格納した複数のストレージのうち状態管理部6でアクセス不能ストレージおよび回復対象ストレージとして記録されているストレージを除いた残りの全てのストレージ群の何れかのストレージから該当ファイルの読み出しを行う。
(3-3-6 ′) File Reading When the storage access unit 5 of the host 1 reads from a file in the recovery state, the
(2')冗長度回復処理サーバ4の動作
(2−1')全体の流れ
障害が発生したストレージの代替となるストレージが用意され、当該用意されたストレージがホスト1および冗長度回復処理サーバ4から要求を受信可能となった後に、冗長度回復処理サーバ4の処理が開始される。ここで、代替となるストレージの記憶内容としては、障害が発生したストレージの障害発生時と同じ記憶内容になっている場合とそうでない場合の2通りが考えられるが、何れの場合も回復処理の手順は同じである。以下、冗長度回復処理サーバ4の全体の動作の流れを図13を参照して説明する。
(2 ′) Redundancy
冗長度回復処理サーバ4のコピー部8Aは、通知部9によって全ホスト1に対して、回復対象のストレージ(コピー先ストレージ)の情報を付加して回復処理中を通知し(S1000)、全ホスト1からの応答を待つ(S1001)。回復処理中の通知を受けたホスト1は第1の実施の形態と同様に、所定の条件が整った時点で応答を返してくる。冗長度回復処理サーバ4は、全ホスト1から応答を受信すると、回復処理を行う(S1002)。ここまでの動作は、第1の実施の形態と同じである。
The copy unit 8A of the redundancy
コピー部8Aは、ステップS1002の回復処理を終えると、不完全処理通知保存部12を参照して、不完全処理通知がホスト1から来ているかどうかを判定し、来ている場合にはステップS1005へ、来ていない場合にはステップS1004へ移行する(S1003)。ステップS1004では、通知部9によって全ホスト1に対して、回復処理が完了したストレージの情報を付加して回復処理完了を通知し、図13の処理を終了する。
When the copy unit 8A completes the recovery process of step S1002, the copy unit 8A refers to the incomplete process
ステップS1005では、コピー部8Aは、不完全処理通知保存部12に記憶されているディレクトリから未処理のディレクトリを1つ選択する。未処理のディレクトリが無い場合にはステップS1003へ移行し、ある場合にはステップS1007へ移行する(S1006)。
In step S1005, the copy unit 8A selects one unprocessed directory from the directories stored in the incomplete process
ステップS1007では、コピー部8Aは、ステップS1005で選択したディレクトリを指定しディレクトリ回復処理を行い、ステップS1005へ移行する。ステップS1007で行われるディレクトリ回復処理の詳細は図6を参照して既に説明した処理と同じである。 In step S1007, the copy unit 8A designates the directory selected in step S1005, performs directory recovery processing, and proceeds to step S1005. Details of the directory recovery processing performed in step S1007 are the same as those already described with reference to FIG.
このようにホスト1から不完全処理通知で通知されたディレクトリを指定したディレクトリ回復処理を再度実行することによって、ホスト1が正常なストレージに対しては作成ないし削除できたファイルやディレクトリを、ホスト1が作成ないし削除できなかった回復処理中ストレージに対して反映することができ、一貫性が崩れることがない。 By re-executing the directory recovery process that specified the directory notified by the incomplete processing notification from the host 1 in this way, the files and directories that the host 1 was able to create or delete from the normal storage are stored in the host 1 Can be reflected in the storage during recovery processing that could not be created or deleted, and consistency is not lost.
なお、ステップS1002とステップS1003の間に、システムで規定した時間だけ待つ処理を挿入するようにしても良い。 Note that a process of waiting for a time defined by the system may be inserted between step S1002 and step S1003.
1…ホスト
2a〜2n…ストレージ
3…ロック管理サーバ
4…冗長度回復処理サーバ
5、5A…ストレージアクセス部
6…状態管理部
7、10…ロック部
8、8A…コピー部
9…通知部
11…不完全処理通知部
12…不完全処理通知保存部
1 ... Host
2a ~ 2n ... Storage
3 ... Lock management server
4 ... Redundancy recovery processing server
5, 5A ... Storage access section
6 State management department
7, 10 ... Lock part
8, 8A ... Copy section
9 ... Notification part
11 ... Incomplete processing notification section
12… Incomplete processing notification storage
Claims (24)
同一のデータを前記複数のストレージに書き込むことによってデータの冗長化を行うホストと、
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバと、
前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記冗長度回復処理中に前記ホストと前記冗長度回復処理サーバとから同時に行われないように、ファイルおよびディレクトリ単位で排他を行うためのロック管理サーバとを備えることを特徴とするデータ多重化システム。 Multiple storage,
A host for performing data redundancy by writing the same data to the plurality of storages;
If the redundancy decreases due to a failure in one of the multiple storages, use one of the multiple storages that has no failure as the copy source storage and restore the redundancy. A redundancy recovery processing server that performs redundancy recovery processing for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage,
Exclusion is performed in units of files and directories so that operations for changing to files and directories stored in the plurality of storages are not performed simultaneously from the host and the redundancy recovery processing server during the redundancy recovery processing. And a lock management server for the data multiplexing system.
前記冗長度回復処理サーバは、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーすることを特徴とする請求項1記載のデータ多重化システム。 When the host finds that the upper directory of the file or directory to be changed does not exist when accessing the copy destination storage during the redundancy recovery processing, an incomplete processing notification specifying the upper directory that did not exist To the redundancy recovery processing server,
2. The redundancy recovery processing server copies a non-existing upper directory designated by an incomplete processing notification and its subordinate directories and files from a copy source storage to a copy destination storage. Data multiplexing system.
b)冗長度回復処理サーバが、前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するステップと、
c)前記ホストおよび前記冗長度回復処理サーバが、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記冗長度回復処理サーバとで前記冗長度回復処理中に同時に行われないように、ロック管理サーバからロックを取得してファイルおよびディレクトリ単位で排他を行うステップとを含むことを特徴とするデータ多重化方法。 a) the host performing data redundancy by writing the same data to a plurality of storages;
b) When the redundancy is reduced due to a failure occurring in any one of the plurality of storages, the redundancy recovery processing server designates one of the plurality of storages having no failure as a copy source storage. Performing a redundancy recovery process of copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage, with the storage used to recover the redundancy as the copy destination storage;
c) The host and the redundancy recovery processing server simultaneously perform a change operation to files and directories stored in the plurality of storages during the redundancy recovery processing between the host and the redundancy recovery processing server. A data multiplexing method comprising: acquiring a lock from a lock management server and performing exclusion on a file and directory basis.
e)前記冗長度回復処理サーバが、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーするステップとを含むことを特徴とする請求項7記載のデータ多重化方法。 d) When the host finds that there is no upper directory of the file or directory to be changed when accessing the copy destination storage during the redundancy recovery process, the host specified the upper directory that did not exist Sending a processing notification to the redundancy recovery processing server;
e) The redundancy recovery processing server includes a step of copying the non-existing upper directory specified by the incomplete processing notification and the subordinate directories and files from the copy source storage to the copy destination storage. The data multiplexing method according to claim 7.
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを、コピー元ストレージからコピー先ストレージへコピーし、変更対象のファイルあるいはディレクトリの変更操作を行うストレージアクセス手段とを備えることを特徴とするホスト計算機。 A host computer that makes data redundant by writing the same data to multiple storages,
If the redundancy decreases due to a failure in one of the multiple storages, use one of the multiple storages that has no failure as the copy source storage and restore the redundancy. During the redundancy recovery processing in the redundancy recovery processing server for executing redundancy recovery processing for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage. A lock means for acquiring a lock from a lock management server for performing exclusion in units of files and directories so that change operations to the files and directories stored in the plurality of storages are not performed at the same time;
When accessing the copy destination storage during the redundancy recovery process, if it is found that there is no upper directory of the file or directory to be changed, the upper directory that did not exist is copied from the copy source storage to the copy destination storage. And a storage access means for changing the file or directory to be changed.
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行し、且つ、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーする機能を有する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見するストレージアクセス手段と、
前記発見された存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信する不完全処理通知手段とを備えることを特徴とするホスト計算機。 A host computer that makes data redundant by writing the same data to multiple storages,
If the redundancy decreases due to a failure in one of the multiple storages, use one of the multiple storages that has no failure as the copy source storage and restore the redundancy. The storage to be copied is the copy destination storage, the redundancy recovery process is executed to copy the same data as the data with reduced redundancy from the copy source storage to the copy destination storage, and the presence specified in the incomplete processing notification During the redundancy recovery processing in the redundancy recovery processing server having a function of copying the upper directory that has not been performed and the directories and files under the upper directory to the copy destination storage, the upper directory is stored in the plurality of storages. Changes to files and directories cannot be performed at the same time. And locking means for acquiring a lock from the lock management server for performing an exclusive with files and directories unit as,
A storage access means for discovering that there is no upper directory of the file or directory to be changed when accessing the copy destination storage during the redundancy recovery process;
A host computer comprising: an incomplete processing notification means for transmitting an incomplete processing notification specifying a discovered higher-order directory to the redundancy recovery processing server.
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記コピー手段とから同時に行われないようにファイルおよびディレクトリ単位で排他を行うためにロック管理サーバからロックを取得するロック手段とを備えることを特徴とする冗長度回復処理サーバ装置。 When the same data is written from the host, the data is made redundant. When a failure occurs in one of the multiple storages, the processing to recover the redundancy is executed. A redundancy recovery processing server device,
Data with reduced redundancy from the copy source storage to the copy destination storage, with any of the plurality of storages having no failure as the copy source storage and the storage used to restore redundancy as the copy destination storage A copy means for executing redundancy recovery processing for copying the same data as
A lock that acquires a lock from a lock management server to perform exclusion in units of files and directories so that operations for changing to files and directories stored in the plurality of storages are not performed simultaneously from the host and the copy unit And a redundancy recovery processing server device.
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記冗長度回復処理中のコピー先ストレージへアクセスした前記ホストが、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見したことにより、存在しなかった上位ディレクトリを指定した不完全処理通知を送信した場合に、前記不完全処理通知を受信して記憶する不完全処理通知記憶手段とを備え、
前記コピー手段は、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーすることを特徴とする冗長度回復処理サーバ装置。 When the same data is written from the host, the data is made redundant. When a failure occurs in one of the multiple storages, the processing to recover the redundancy is executed. A redundancy recovery processing server device,
Data with reduced redundancy from the copy source storage to the copy destination storage, with any of the plurality of storages having no failure as the copy source storage and the storage used to restore redundancy as the copy destination storage A copy means for executing redundancy recovery processing for copying the same data as
When the host that has accessed the copy destination storage during the redundancy recovery process discovers that the upper directory of the file or directory to be changed does not exist, an incomplete processing notification specifying the upper directory that did not exist is issued. Incomplete processing notification storage means for receiving and storing the incomplete processing notification when transmitted,
The redundancy recovery processing server apparatus, wherein the copying means copies a non-existing upper directory specified by an incomplete processing notification and its subordinate directories and files from a copy source storage to a copy destination storage.
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを、コピー元ストレージからコピー先ストレージへコピーし、変更対象のファイルあるいはディレクトリの変更操作を行うストレージアクセス手段として機能させるためのプログラム。 A host computer that makes data redundant by writing the same data to multiple storages.
If the redundancy decreases due to a failure in one of the multiple storages, use one of the multiple storages that has no failure as the copy source storage and restore the redundancy. During the redundancy recovery processing in the redundancy recovery processing server for executing redundancy recovery processing for copying the same data as the data with reduced redundancy from the copy source storage to the copy destination storage. A lock means for acquiring a lock from a lock management server for performing exclusion in units of files and directories so that change operations to the files and directories stored in the plurality of storages are not performed at the same time;
When accessing the copy destination storage during the redundancy recovery process, if it is found that there is no upper directory of the file or directory to be changed, the upper directory that did not exist is copied from the copy source storage to the copy destination storage. And a program for functioning as a storage access means for changing the file or directory to be changed.
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行し、且つ、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーする機能を有する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見するストレージアクセス手段と、
前記発見された存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信する不完全処理通知手段として機能させるためのプログラム。 A host computer that makes data redundant by writing the same data to multiple storages.
If the redundancy decreases due to a failure in one of the multiple storages, use one of the multiple storages that has no failure as the copy source storage and restore the redundancy. The storage to be copied is the copy destination storage, the redundancy recovery process is executed to copy the same data as the data with reduced redundancy from the copy source storage to the copy destination storage, and the presence specified in the incomplete processing notification During the redundancy recovery processing in the redundancy recovery processing server having a function of copying the upper directory that has not been performed and the directories and files under the upper directory to the copy destination storage, the upper directory is stored in the plurality of storages. Changes to files and directories cannot be performed at the same time. And locking means for acquiring a lock from the lock management server for performing an exclusive with files and directories unit as,
A storage access means for discovering that there is no upper directory of the file or directory to be changed when accessing the copy destination storage during the redundancy recovery process;
A program for functioning as an incomplete processing notification means for transmitting an incomplete processing notification specifying a discovered non-existing upper directory to the redundancy recovery processing server.
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記コピー手段とから同時に行われないようにファイルおよびディレクトリ単位で排他を行うためにロック管理サーバからロックを取得するロック手段として機能させるためのプログラム。 When the same data is written from the host, the data is made redundant. When a failure occurs in one of the multiple storages, the processing to recover the redundancy is executed. A computer constituting the redundancy recovery processing server device
Data with reduced redundancy from the copy source storage to the copy destination storage, with any of the plurality of storages having no failure as the copy source storage and the storage used to restore redundancy as the copy destination storage A copy means for executing redundancy recovery processing for copying the same data as
A lock that acquires a lock from a lock management server to perform exclusion in units of files and directories so that operations for changing to files and directories stored in the plurality of storages are not performed simultaneously from the host and the copy unit Program to function as a means.
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記冗長度回復処理中のコピー先ストレージへアクセスした前記ホストが、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見したことにより、存在しなかった上位ディレクトリを指定した不完全処理通知を送信した場合に、前記不完全処理通知を受信して記憶する不完全処理通知記憶手段として機能させ、且つ、
前記コピー手段は、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーすることを特徴とするプログラム。 When the same data is written from the host, the data is made redundant. When a failure occurs in one of the multiple storages, the processing to recover the redundancy is executed. A computer constituting the redundancy recovery processing server device
Data with reduced redundancy from the copy source storage to the copy destination storage, with any of the plurality of storages having no failure as the copy source storage and the storage used to restore redundancy as the copy destination storage A copy means for executing redundancy recovery processing for copying the same data as
When the host that has accessed the copy destination storage during the redundancy recovery process discovers that the upper directory of the file or directory to be changed does not exist, an incomplete processing notification specifying the upper directory that did not exist is issued. Functioning as incomplete processing notification storage means for receiving and storing the incomplete processing notification when transmitted, and
The copy unit copies a non-existing upper directory specified by an incomplete processing notification and its subordinate directories and files from a copy source storage to a copy destination storage.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008000947A JP5303935B2 (en) | 2008-01-08 | 2008-01-08 | Data multiplexing system and data multiplexing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008000947A JP5303935B2 (en) | 2008-01-08 | 2008-01-08 | Data multiplexing system and data multiplexing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009163529A true JP2009163529A (en) | 2009-07-23 |
JP5303935B2 JP5303935B2 (en) | 2013-10-02 |
Family
ID=40966070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008000947A Expired - Fee Related JP5303935B2 (en) | 2008-01-08 | 2008-01-08 | Data multiplexing system and data multiplexing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5303935B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012238133A (en) * | 2011-05-11 | 2012-12-06 | Dainippon Printing Co Ltd | Data storage system |
JP2014523596A (en) * | 2011-07-25 | 2014-09-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | Method and apparatus for cleaning a file system and storage medium thereof |
JP2016139251A (en) * | 2015-01-27 | 2016-08-04 | コニカミノルタ株式会社 | Image forming apparatus, control program for image forming apparatus, controller, and control program for controller |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086840A (en) * | 1994-06-16 | 1996-01-12 | Internatl Business Mach Corp <Ibm> | Mechanism for judgment of completion of directory operation for server recovery |
JP2005018510A (en) * | 2003-06-27 | 2005-01-20 | Hitachi Ltd | Data center system and control method thereof |
JP2005505059A (en) * | 2001-09-28 | 2005-02-17 | オラクル・インターナショナル・コーポレイション | Efficient index structure for accessing hierarchical data in relational database systems |
JP2005141528A (en) * | 2003-11-07 | 2005-06-02 | Hitachi Ltd | File server and file server control device |
JP2006164162A (en) * | 2004-12-10 | 2006-06-22 | Fujitsu Ltd | Copy control apparatus and method |
JP2006285867A (en) * | 2005-04-04 | 2006-10-19 | Nec Corp | File management system, monitoring server, file server, file management method and program |
-
2008
- 2008-01-08 JP JP2008000947A patent/JP5303935B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH086840A (en) * | 1994-06-16 | 1996-01-12 | Internatl Business Mach Corp <Ibm> | Mechanism for judgment of completion of directory operation for server recovery |
JP2005505059A (en) * | 2001-09-28 | 2005-02-17 | オラクル・インターナショナル・コーポレイション | Efficient index structure for accessing hierarchical data in relational database systems |
JP2005018510A (en) * | 2003-06-27 | 2005-01-20 | Hitachi Ltd | Data center system and control method thereof |
JP2005141528A (en) * | 2003-11-07 | 2005-06-02 | Hitachi Ltd | File server and file server control device |
JP2006164162A (en) * | 2004-12-10 | 2006-06-22 | Fujitsu Ltd | Copy control apparatus and method |
JP2006285867A (en) * | 2005-04-04 | 2006-10-19 | Nec Corp | File management system, monitoring server, file server, file management method and program |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012238133A (en) * | 2011-05-11 | 2012-12-06 | Dainippon Printing Co Ltd | Data storage system |
JP2014523596A (en) * | 2011-07-25 | 2014-09-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | Method and apparatus for cleaning a file system and storage medium thereof |
US9104685B2 (en) | 2011-07-25 | 2015-08-11 | Tencent Technology (Shenzhen) Company Limited | Method, device and storage medium for cleaning up file systems |
JP2016139251A (en) * | 2015-01-27 | 2016-08-04 | コニカミノルタ株式会社 | Image forming apparatus, control program for image forming apparatus, controller, and control program for controller |
Also Published As
Publication number | Publication date |
---|---|
JP5303935B2 (en) | 2013-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11461202B2 (en) | Remote data replication method and system | |
US7788303B2 (en) | Systems and methods for distributed system scanning | |
JP6309103B2 (en) | Snapshot and clone replication | |
US8972343B2 (en) | Storage system | |
US8656123B2 (en) | Snapshot preserved data cloning | |
JP4809040B2 (en) | Storage apparatus and snapshot restore method | |
JP6525491B2 (en) | System and method for distributed processing of files in chunks | |
US9031906B2 (en) | Method of managing data in asymmetric cluster file system | |
CN113220729B (en) | Data storage method and device, electronic equipment and computer readable storage medium | |
JP2008524724A (en) | How to perform parallel data migration in a clustered storage environment | |
JP2006209636A (en) | Method for maintaining snapshot | |
JP2010102738A (en) | Apparatus and method for hardware-based file system | |
JP5984151B2 (en) | Data recovery method, program, and data processing system | |
CN112068992B (en) | Remote data replication method, storage device and storage system | |
CN106873902B (en) | File storage system, data scheduling method and data node | |
US7685385B1 (en) | System and method for satisfying I/O requests before a replica has been fully synchronized | |
JP4755244B2 (en) | Information generation method, information generation program, and information generation apparatus | |
JP4615344B2 (en) | Data processing system and database management method | |
CN109407975B (en) | Writing data method and computing node and distributed storage system | |
JP5303935B2 (en) | Data multiplexing system and data multiplexing method | |
JP5660617B2 (en) | Storage device | |
JP2006331076A (en) | Data storage system and storage method | |
US8555007B2 (en) | Storage system with journal disks dynamically assigned | |
KR100994342B1 (en) | Distributed File System and Replica-Based Failure Handling | |
JP2013161383A (en) | Information processing device, information processing method, program and information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20091008 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20091008 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101202 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121023 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121218 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130528 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130610 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5303935 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |