[go: up one dir, main page]

JP2009163529A - System and method for multiplexing data - Google Patents

System and method for multiplexing data Download PDF

Info

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
Application number
JP2008000947A
Other languages
Japanese (ja)
Other versions
JP5303935B2 (en
Inventor
Junichi Yamato
純一 大和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2008000947A priority Critical patent/JP5303935B2/en
Publication of JP2009163529A publication Critical patent/JP2009163529A/en
Application granted granted Critical
Publication of JP5303935B2 publication Critical patent/JP5303935B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To rapidly recover redundancy without stopping writing from a host in the event of a failure of a storage in a data multiplexing system in which the host writes the same data to a plurality of storages. <P>SOLUTION: In the data multiplexing system, the host 1 performs redundant processing of data by writing the same data to storages 2a-2n. A redundancy recovery processing server 4 executes, when a failure occurs in any one of the storages, redundancy recovery processing for copying the same data as data reduced in redundancy from a copy source storage which is any one of the storages free from the failure to a copy destination storage which is a storage to be used for recovering the redundancy. A lock management server 3 performs exclusion in file and directory units so that change operation to files and directories stored in the plurality of storages is not simultaneously performed from the host and the redundancy recovery processing server 4 during the redundancy recovery processing. <P>COPYRIGHT: (C)2009,JPO&INPIT

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 multiple storages 2 as shown in FIG. There is a configuration to do.

例えば特許文献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.

特開2005−196490号公報JP-A-2005-196490

しかしながら、コピー元ストレージに記憶されているデータをコピー先ストレージへコピーしている最中に、ホストがコピー元ストレージのデータを書き換えた場合、その書き換えた部分が未だコピーを完了していない領域であれば、ホストが書き換えたデータはその後に回復対象ストレージへコピーされるために問題は生じないが、既にコピーを終えた領域であれば、回復対象ストレージへ反映されないため、コピー元とコピー先のストレージの記憶内容に矛盾が生じる。このため、特許文献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 lock management server 3 and the redundancy recovery processing server 4 are configured.

ホスト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 state management unit 6 and a lock unit 7.

状態管理部6は、ストレージ2a〜2nの状態が、「通常状態」、「障害状態」、「回復中状態」の3状態の内の何れの状態であるかを管理する。「通常状態」とは、ストレージ2a〜2nの全ストレージが正常に動作している状態、つまり、指定されたデータの冗長度をnとすると、冗長度nで多重化されている状態を意味する。また「障害状態」とは、ストレージ2a〜2nの何れかがアクセスできなくなっており、冗長度が低下している状態を言う。「回復中状態」とは、障害によってアクセスできなくなったストレージに代えて別のストレージをアクセスできるようにするために、当該別のストレージに正常なストレージからデータをコピーし、冗長度を回復させている状態を言う。   The state management unit 6 manages which of the three states, “normal state”, “failure state”, and “recovery state”, of the storages 2a to 2n. “Normal state” means a state in which all the storages of the storages 2a to 2n are operating normally, that is, a state in which the redundancy of the specified data is n and multiplexed with the redundancy n. . The “failure state” refers to a state in which any of the storages 2a to 2n cannot be accessed and the redundancy is lowered. "Recovering state" means that in order to make it possible to access another storage instead of a storage that has become inaccessible due to a failure, data is copied from the normal storage to the other storage and the redundancy is restored. Say the state.

これら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 state management unit 6 records which storage is inaccessible in the failure state, and in the recovery state, which storage is the inaccessible storage and the recovery target storage (copy destination storage) is Record which storage it is. Further, the state management unit 6 manages the completion of processing started in each state and the closing of opened files and directories.

ロック部7は、ロック管理サーバ3と通信し、ストレージに記憶されているファイルおよびディレクトリの単位でロックを獲得、解放する処理を行う。   The lock unit 7 communicates with the lock management server 3 and performs processing for acquiring and releasing locks in units of files and directories stored in the storage.

ストレージアクセス部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, storage 2a, 2b, 2c, storage 2d, 2e, 2f, etc. are divided into several groups, each group is set, or each storage is divided into multiple areas. A method may be used in which a fixed set is created for each area, and files having the same contents are arranged in each set. In addition, allocation is performed to any combination of storage groups in units of files or directories, the allocation is managed by a meta server (not shown), and the location of the redundant file is obtained by the host 1 querying the meta server during path name resolution. You may make it do. Further, it is possible to assign a storage group of an arbitrary combination in units of files or directories, and to have each host 1 have a table in which the allocation status is recorded. In the following, for convenience of explanation, it is assumed that the same file is stored in the storages 2a to 2n and multiplexed with redundancy n.

ロック管理サーバ3は、ストレージ2a〜2nに記憶されているファイルおよびディレクトリへの変更操作が、ホスト1と冗長度回復処理サーバ4とから同時に行われないように、ファイルおよびディレクトリ単位でロックの取得者を管理するサーバである。冗長度nの場合、物理的にn個のファイルおよびディレクトリが存在するが、それぞれ独立にロックがかけられるのでなく、1つのロックでn個のファイルおよびディレクトリがロックされる。図1では、ロック管理サーバ3は1つしか存在しないが、複数あっても良い。複数備える構成では、例えばロック管理サーバ3毎に担当するファイルおよびディレクトリを分担する。このようにすることで、ロック管理サーバ3が処理ネックになることを避けることができる。   The lock management server 3 acquires locks in units of files and directories so that changes to the files and directories stored in the storages 2a to 2n are not performed simultaneously from the host 1 and the redundancy recovery processing server 4. It is a server that manages users. In the case of redundancy n, there are physically n files and directories, but they are not locked independently, but n files and directories are locked with one lock. In FIG. 1, there is only one lock management server 3, but a plurality of lock management servers 3 may be provided. In the configuration including a plurality, for example, files and directories in charge for each lock management server 3 are shared. By doing so, it is possible to avoid the lock management server 3 from becoming a processing bottleneck.

冗長度回復処理サーバ4は、ストレージ2a〜2nの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、ストレージ2a〜2nのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために新たに組み入れたストレージをコピー先ストレージとし、コピー元ストレージからコピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する計算機である。   When the redundancy is reduced due to a failure in one of the storages 2a to 2n, the redundancy recovery processing server 4 selects any storage without any failure from the storages 2a to 2n as a copy source storage, This is a computer that executes 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, with the storage newly incorporated to recover the redundancy as the copy destination storage.

冗長度回復処理サーバ4は、一般的な計算機と同様にCPUおよびメモリなどのハードウェアを備えるとともにオペレーティングシステムなどのソフトウェアを備えており、特に冗長度回復処理に関連する部分として、コピー部8を有している。   The redundancy recovery processing server 4 includes hardware such as a CPU and a memory as well as a general computer as well as software such as an operating system. The copy unit 8 is provided as a part particularly related to the redundancy recovery processing. Have.

コピー部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 recovery processing server 4. The redundancy recovery processing server 4 has a notification unit 9 and a lock unit 10.

通知部9は、減少したデータの冗長度を回復する処理の開始をホスト1に通知し、また回復処理の終了時にその旨をホスト1に通知する手段である。   The notification unit 9 is means for notifying the host 1 of the start of the process of recovering the reduced data redundancy, and notifying the host 1 of the end when the recovery process ends.

ロック部10は、ロック管理サーバ3と通信し、ストレージに記憶されているファイルおよびディレクトリの単位でロックを獲得、解放する処理を行う。   The lock unit 10 communicates with the lock management server 3 and performs processing for acquiring and releasing locks in units of files and directories stored in the storage.

なお、図1には冗長度回復処理サーバ4は1台しか存在しないが、複数あってもよい。複数備える構成では、冗長度回復処理サーバ4間で複製を作る対象を分担して複製の作成を行う。このようにすることで、回復処理を短時間に終わらせることができる。   Although only one redundancy recovery server 4 exists in FIG. 1, there may be a plurality of servers. In the configuration having a plurality of copies, the replicas are created by sharing the targets to be duplicated among the redundancy recovery processing servers 4. In this way, the recovery process can be completed in a short time.

また、ロック管理サーバ3と冗長度回復処理サーバ4は、それぞれ独立した計算機として説明したが、同じ計算機で実現することも可能であり、ホスト1の機能の一部として実現することも可能である。   In addition, the lock management server 3 and the redundancy recovery processing server 4 have been described as independent computers. However, the lock management server 3 and the redundancy recovery processing server 4 can be realized by the same computer, or can be realized as a part of the function of the host 1. .

[動作の説明]
次に本実施の形態に係るデータ多重化システムにおけるストレージ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 state management unit 6. Here, the operation in the normal state and the operation in the failure state will be described, and the operation in the recovery state will be described after the operation of the redundancy recovery processing server 4 is described.

(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 status management unit 6 of the host 1 is notified of the storage in which the failure has occurred. The state management unit 6 transitions from the normal state to the failure state, and records the notified storage as an inaccessible storage. Thereafter, the inaccessible storage is removed from the processing request target in the storage access unit 5.

(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 state management unit 6 among the plurality of storages 2a to 2n storing the target file. The corresponding file is read from any one of the remaining storage groups.

(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 state management unit 6 among the plurality of storages 2a to 2n storing the target file. Write to the corresponding file for all remaining storage.

(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 management unit 6.

(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 recovery processing server 4. After reception is possible, the redundancy recovery processing server 4 starts processing in response to an instruction from the system administrator. Here, there are two possible storage contents of the alternative storage: the case where the storage contents are the same as when the failure occurred, and the case where it is not. The procedure is the same. Hereinafter, the overall operation flow of the redundancy recovery processing server 4 will be described with reference to FIG.

冗長度回復処理サーバ4のコピー部8は、通知部9によって全ホスト1に対して、回復対象のストレージ(コピー先ストレージ)の情報を付加して回復処理中(回復処理の開始)を通知し(S100)、全ホスト1からの応答を待つ(S101)。回復処理中の通知を受けたホスト1の処理については後述するが、所定の条件が整った時点でホスト1が応答を返してくる。冗長度回復処理サーバ4は、全ホスト1から応答を受信すると、回復処理を行う(S102)。そして、回復処理が完了すると、通知部9によって全ホスト1に対して、回復処理が完了したストレージの情報を付加して回復処理完了を通知し(S103)、図4の処理を終了する。   The copy unit 8 of the redundancy recovery processing server 4 adds information on the recovery target storage (copy destination storage) to the all hosts 1 through the notification unit 9 and notifies the recovery processing in progress (start of recovery processing). (S100), waiting for responses from all the hosts 1 (S101). The processing of the host 1 that has received the notification during the recovery processing will be described later, but the host 1 returns a response when a predetermined condition is met. When the redundancy recovery processing server 4 receives a response from all the hosts 1, it performs recovery processing (S102). When the recovery process is completed, the notification unit 9 adds information on the storage for which the recovery process has been completed to all the hosts 1 to notify the completion of the recovery process (S103), and ends the process of FIG.

(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 lock unit 10 to specify a target directory, request a lock from the lock management server 3, and wait for a lock acquisition response (S300).

次に、コピー部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 lock unit 10 to request the lock management server 3 to release the lock acquired in step S300 (S303).

次いで、コピー部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 recovery processing server 4 and maintain consistency. it can.

(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 lock unit 10 to specify a target directory, request a lock from the lock management server 3, and wait for a lock acquisition response (S400).

次に、コピー部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 lock unit 10 to request the lock management server 3 to release the lock acquired in step S400, and ends the process of FIG.

ステップ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 lock unit 10 to designate the file selected in step S404, requests lock to the lock management server 3, and waits for a lock acquisition response.

次いで、ロック部8は、ロック管理サーバ3にステップS400で取得したディレクトリについてのロックの解放を要求し(S410)、次いで、コピー元ストレージからコピー先ストレージへステップS404で選択したファイルをコピーする(S411)。そして、コピー部8は、ロック部10を用いて、ロック管理サーバ3に、ステップS409で取得したファイルについてロックの解放を要求し、ステップS400に移行する(S412)。   Next, the lock unit 8 requests the lock management server 3 to release the lock for the directory acquired in step S400 (S410), and then copies the file selected in step S404 from the copy source storage to the copy destination storage (step S404). S411). Then, using the lock unit 10, the copy unit 8 requests the lock management server 3 to release the lock for the file acquired in step S409, and proceeds to step S400 (S412).

このように、ファイルの作成および削除に関して、排他して行うことで、冗長度回復処理サーバ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 recovery processing server 4, and maintain consistency. .

また、ファイルのコピーに関して、排他して行うことで、冗長度回復処理サーバ4が処理中にホスト1が対象ファイルを変更することを排除でき、一貫性が維持できる。   Also, by exclusively performing file copying, it is possible to eliminate the host 1 changing the target file while the redundancy recovery processing server 4 is processing, and maintain consistency.

なお、本実施の形態では、ファイルのコピーを行う前に対象ディレクトリをアンロックしているため(図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 operation 2
(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 recovery processing server 4. When the notification is received, execution of the process shown in FIG. 8 is started.

まず、ストレージアクセス部5は、状態管理部6により、状態を回復処理中状態へ変更し、通知された回復処理対象ストレージの情報を図示しないメモリに記憶する(S500)。次にストレージアクセス部5は、状態管理部6により、回復処理中の通知を受信する前に開始されていた処理(ストレージ2a〜2nに対するファイル書き込みや読み出し、ディレクトリの作成や削除、ファイルの作成や削除)が完了するのを待つ(S501)。さらに、ストレージアクセス部5は、状態管理部6により、回復処理中の通知を受信する前にオープンされたファイルおよびディレクトリがクローズされるのを待つ(S502)。そして、回復処理開始通知を受信する前に開始されていた処理の全てが完了し、かつ、オープンしていたファイルおよびディレクトリがすべてクローズされると、回復処理中の通知に対する応答を、冗長度回復処理サーバ4に送信し(S503)、図8の処理を終了する。   First, the storage access unit 5 uses the state management unit 6 to change the state to the recovery process in-progress state, and stores the notified information on the recovery process target storage in a memory (not shown) (S500). Next, the storage access unit 5 uses the state management unit 6 to start processing (file writing / reading from / to the storages 2a to 2n, directory creation / deletion, file creation / Wait for completion of (delete) (S501). Further, the storage access unit 5 waits for the state management unit 6 to close the opened file and directory before receiving the notification during the recovery process (S502). When all the processes started before receiving the recovery process start notification are completed and all open files and directories are closed, the response to the notification during the recovery process is restored to the redundancy level. The data is transmitted to the processing server 4 (S503), and the processing in FIG.

(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 recovery processing server 4 with information on the storage for which recovery processing has been completed added Then, the execution of the process shown in FIG. 9 is started.

まず、ストレージアクセス部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 state management unit 6 to delete storage for which recovery processing has been completed from the recovery target storage (S600). Next, determine whether there is still recovery target storage by referring to the memory records managed by the status management unit 6, and if there is at least one recovery target storage, terminate the processing in FIG. If none remain, the process proceeds to step S602 (S601). In step S602, the storage access unit 5 uses the state management unit 6 to determine whether or not inaccessible storage remains by referring to the memory record. If at least one storage remains, the storage access unit 5 proceeds to step S603, and 1 If none remain, the process moves to step S604. In step S603, the state management unit 6 changes the state to a failure state, and the processing in FIG. In step S604, the state management unit 6 changes the state to the normal state, and the process in FIG. 9 ends.

(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 recovery processing server 4 for the storage being recovered. In this embodiment, at this point, the host 1 itself performs a copy process from the copy source storage to the copy destination storage in the range necessary for the path name resolution this time, instead of the redundancy recovery processing server 4.

具体的には、まず、ストレージアクセス部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 lock management server 3, and waits until the lock is acquired (S719). Next, the storage access unit 5 creates (copies) the file or directory targeted in step S704 under the directory in the storage search range selected in step S711 (S720). Next, the file or directory created in step S720 is stored as the file handler of the storage selected in step S711 (S721). Finally, the storage access unit 5 uses the lock unit 7 to request the lock management server 3 to release the lock acquired in step S719 (S722). Then, the process proceeds to step S711.

図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 recovery processing server 4 is exclusive and consistency is not lost.

図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 lock management server 3, and it waits until the lock is acquired. Then, after actually creating and deleting, the lock management server 3 is used to request the lock management server 3 to release the acquired lock. Since the file or directory is locked when the file or directory is created or deleted in this way, it is exclusive with the processing of the redundancy recovery processing server 4, and consistency is not lost.

(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 lock management server 3, and waits until the lock is acquired. Next, information necessary for releasing the lock later is stored in the lock management area for each open, and the process proceeds to step S803 (S802).

ステップ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 lock management server 3 to release the lock based on the recorded information, and the processing of FIG.

このようにして、オープンでロックを行い、クローズでロックを解放することで、冗長度回復処理サーバ4の処理とは排他され、一貫性が崩れることがない。また、リードオンリー(read only)の際にはロックを行わないことで、ライトを行わない際にはホスト1の処理を妨げることもない。   In this way, by performing lock by opening and releasing the lock by closing, the processing of the redundancy recovery processing server 4 is exclusive and consistency is not lost. Further, the lock is not performed at the time of read only, and the processing of the host 1 is not hindered when the write is not performed.

(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 state management unit 6 among the plurality of storages storing the target file is designated as an inaccessible storage. The file is written to all the remaining storage groups except the recorded storage.

(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 state management unit 6 among the plurality of storages storing the target file and the inaccessible storage and The corresponding file is read from any one of the remaining storage groups excluding the storage recorded as the recovery target storage.

(4)ロック管理サーバ3の動作
ロック管理サーバ3は、ファイルあるいはディレクトリ単位でロックの取得状態を管理し、ロックは同時には1要求にしか取得を許可しない。例えばロック管理サーバ3は、ロック要求をサーバ内で記憶し、同一ファイルあるいはディレクトリに関する要求は、到着順等の順序で次にロックを取得する要求を決定する。また、ロック管理サーバ3は、ロック取得の要求に対しては、許可した場合に取得できたことを通知し、ロック解放要求によりロックの解放を行う。
(4) Operation of lock management server 3 The lock management server 3 manages the acquisition status of locks in units of files or directories, and locks are only allowed to be acquired for one request at a time. For example, the lock management server 3 stores the lock request in the server, and requests for the same file or directory determine the next request for acquiring the lock in the order of arrival or the like. Further, the lock management server 3 notifies the lock acquisition request that it has been acquired when it is permitted, and releases the lock in response to the lock release request.

なお、本実施の形態では、ホスト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 storage access unit 5A is provided instead of the unit 5, and the redundancy recovery processing server 4 is provided with a copy unit 8A instead of the copy unit 8.

ホスト1のストレージアクセス部5Aは、ストレージアクセス部5と比較して、新たに不完全処理通知部11を備えている点で相違し、また、回復中状態での動作が一部相違している。   The storage access unit 5A of the host 1 is different from the storage access unit 5 in that it newly includes an incomplete processing notification unit 11, and the operation in the recovery state is partially different. .

冗長度回復処理サーバ4のコピー部8Aは、コピー部8と比較して、新たに不完全処理通知保存部12を備えている点で相違し、また、回復処理の一部が相違している。   The copy unit 8A of the redundancy recovery processing server 4 is different from the copy unit 8 in that it newly includes an incomplete process notification storage unit 12, and a part of the recovery process is different. .

以下、本実施の形態の動作を第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 action 2
(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 storage access unit 5A has an incomplete process flag as an internal state of the process.

まず、ストレージアクセス部5Aは、先頭ディレクトリを検索範囲に設定し、不完全処理flagをクリアする(S1100)。次いで、先頭ディレクトリを格納したストレージの情報とファイルハンドルを取得し(S1101)、次にステップS1100で設定した範囲がパス名解決の末端であった場合には、ステップS1103に移行し、違う場合はステップS1104に移行する(S1102)。ステップS1103では、ステップS1101で取得したストレージとファイルハンドルの情報と不完全処理flagとを返却し、終了する。   First, the storage access unit 5A sets the head directory as a search range and clears the incomplete processing flag (S1100). Next, obtain the storage information and file handle that stores the first directory (S1101), and if the range set in step S1100 is the end of the path name resolution, move to step S1103. The process proceeds to step S1104 (S1102). In step S1103, the storage and file handle information acquired in step S1101 and the incomplete process flag are returned, and the process ends.

ステップ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 recovery processing server 4 to copy the undiscovered directory later, the incomplete processing flag is set, and the directory not found is recorded in the memory. As a result, the directory creation process and the lock associated therewith are not performed, so that the processing time in the host 1 is shortened as compared with the first embodiment.

ステップ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 lock management server 3, and wait until the lock is acquired.

次に、ファイルハンドルが取得できたストレージに対してのみ、ディレクトリ作成、ディレクトリ削除、ファイル作成、ファイル削除を行った後に、ロック部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 lock management server 3. Request. Since the file or directory is locked when the file or directory is created or deleted in this way, it is exclusive with the processing of the redundancy recovery processing server 4, and consistency is not lost.

その後、パス名解決で返却された不完全処理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 recovery processing server 4. During path name resolution, no directory is created in the recovery target storage and no change is made to the recovery target storage, but incomplete processing is notified to the redundancy recovery processing server 4 and copy processing is executed again as described later. Thus, the synchronization of the directory state is guaranteed.

(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 lock management server 3 is requested to release the lock based on the recorded information. By doing so, since locking is performed when a file or directory is created or deleted, it is exclusive from the processing of the redundancy recovery processing server 4, and consistency is not lost.

次に、オープン時に記憶した不完全処理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 notification storage unit 12 is used to specify an upper directory of the undiscovered directories recorded accompanying the incomplete processing flag to the redundancy recovery processing server 4 to perform incomplete processing. And exit. In this way, no directory is created in the recovery target storage and no change is made to the recovery target storage during path name resolution, but incomplete processing is notified to the redundancy recovery processing server 4 and copy processing is executed again. Thus, the synchronization of the directory state is guaranteed.

(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 state management unit 6 opens the file among a plurality of storages storing the target file. The corresponding file is written to all the storage groups. Therefore, writing is not performed for the recovery target storage for which path name resolution could not be performed.

(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 state management unit 6 among the storages storing the target file cannot access the storage. The corresponding file is read from any one of the remaining storage groups excluding the storage recorded as the recovery target storage.

(2')冗長度回復処理サーバ4の動作
(2−1')全体の流れ
障害が発生したストレージの代替となるストレージが用意され、当該用意されたストレージがホスト1および冗長度回復処理サーバ4から要求を受信可能となった後に、冗長度回復処理サーバ4の処理が開始される。ここで、代替となるストレージの記憶内容としては、障害が発生したストレージの障害発生時と同じ記憶内容になっている場合とそうでない場合の2通りが考えられるが、何れの場合も回復処理の手順は同じである。以下、冗長度回復処理サーバ4の全体の動作の流れを図13を参照して説明する。
(2 ′) Redundancy Recovery Processing Server 4 Operation (2-1 ′) Overall Flow A storage is prepared as a substitute for the failed storage, and the prepared storage is the host 1 and the redundancy recovery processing server 4 After the request can be received, the processing of the redundancy recovery processing server 4 is started. Here, there are two possible storage contents of the alternative storage: the case where the storage contents are the same as when the failure occurred, and the case where it is not. The procedure is the same. Hereinafter, the overall operation flow of the redundancy recovery processing server 4 will be described with reference to FIG.

冗長度回復処理サーバ4のコピー部8Aは、通知部9によって全ホスト1に対して、回復対象のストレージ(コピー先ストレージ)の情報を付加して回復処理中を通知し(S1000)、全ホスト1からの応答を待つ(S1001)。回復処理中の通知を受けたホスト1は第1の実施の形態と同様に、所定の条件が整った時点で応答を返してくる。冗長度回復処理サーバ4は、全ホスト1から応答を受信すると、回復処理を行う(S1002)。ここまでの動作は、第1の実施の形態と同じである。   The copy unit 8A of the redundancy recovery processing server 4 adds information on the recovery target storage (copy destination storage) to the all hosts 1 through the notification unit 9, and notifies the recovery processing in progress (S1000). Wait for a response from 1 (S1001). The host 1 that has received the notification during the recovery process returns a response when a predetermined condition is met, as in the first embodiment. When the redundancy recovery processing server 4 receives a response from all the hosts 1, it performs recovery processing (S1002). The operation up to this point is the same as in the first embodiment.

コピー部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 notification storage unit 12 to determine whether or not the incomplete process notification has come from the host 1, and if so, step S1005 If not, the process proceeds to step S1004 (S1003). In step S1004, the notification unit 9 adds the information of the storage for which the recovery process has been completed to all the hosts 1, notifies the completion of the recovery process, and ends the process of FIG.

ステップ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 notification storage unit 12. If there is no unprocessed directory, the process proceeds to step S1003, and if present, the process proceeds to step S1007 (S1006).

ステップ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の実施の形態のブロック図Block diagram of the first embodiment of the present invention 本発明の第2の実施の形態のブロック図Block diagram of the second embodiment of the present invention ホストの状態遷移を示す状態遷移図State transition diagram showing host state transitions 冗長度回復処理サーバの動作を示すフロー図Flow chart showing operation of redundancy recovery processing server 冗長度回復処理サーバでの回復処理の動作を示すフロー図Flow diagram showing the operation of recovery processing in the redundancy recovery processing server 冗長度回復処理サーバでのディレクトリ回復処理の動作を示すフロー図Flow chart showing the operation of directory recovery processing on the redundancy recovery processing server 冗長度回復処理サーバでのファイル回復処理の動作を示すフロー図Flow diagram showing file recovery processing operation on the redundancy recovery processing server 回復処理開始の通知を受けた際のホストの動作を示すフロー図Flow chart showing host operation when receiving notification of recovery processing start 回復処理完了の通知を受けた際のホストの動作を示すフロー図Flow chart showing host operation when receiving notification of recovery processing completion ホストでの回復中状態でのパス名解決の動作を示すフロー図Flow diagram showing the path name resolution operation during recovery on the host ホストでの回復中状態でのパス名解決の動作を示すフロー図Flow diagram showing the path name resolution operation during recovery on the host ホストでの回復中状態でのファイルオープンの動作を示すフロー図Flow diagram showing file open operation during recovery on the host ホストでの回復中状態でのファイルクローズの動作を示すフロー図Flow chart showing file close operation during recovery on the host 冗長度回復処理サーバでの回復処理の別の動作を示すフロー図Flow chart showing another operation of recovery processing in the redundancy recovery processing server ホストでの回復中状態でのパス名解決の別の動作を示すフロー図Flow diagram showing another operation of path name resolution in the recovery state on the host ホストでの回復中状態でのパス名解決の別の動作を示すフロー図Flow diagram showing another operation of path name resolution in the recovery state on the host ホストでの回復中状態でのファイルクローズの別の動作を示すフロー図Flow chart showing another operation of file close during recovery on the host ディレクトリ回復処理およびファイル回復処理によってコピー元ストレージからコピー先ストレージへディレクトリおよびファイルがコピーされていく様子を示す図Diagram showing how directories and files are copied from copy source storage to copy destination storage by directory recovery processing and file recovery processing ディレクトリ回復処理およびファイル回復処理によってコピー元ストレージからコピー先ストレージへディレクトリおよびファイルがコピーされていく様子を示す図Diagram showing how directories and files are copied from copy source storage to copy destination storage by directory recovery processing and file recovery processing ホストでのパス名解決時に、冗長度の回復対象ストレージに対して対象ディレクトリの作成を行う例を示す図Diagram showing an example of creating a target directory for the recovery target storage with redundancy when resolving the path name on the host ホストが複数のストレージに同一のデータを書き込むことでデータの多重化を行うシステムのブロック図Block diagram of a system where the host multiplexes data by writing the same data to multiple storages

符号の説明Explanation of symbols

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 process, the host copies the upper directory that did not exist from the copy source storage. 2. The data multiplexing system according to claim 1, wherein the data multiplexing system is copied to a destination storage and an operation for changing a file or directory to be changed is performed. 前記ホストは、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見、および存在しなかった上位ディレクトリのコピー元ストレージからコピー先ストレージへのコピーを、パス名解決処理において実行することを特徴とする請求項2に記載のデータ多重化システム。   In the path name resolution process, the host performs the discovery that the upper directory of the file or directory to be changed does not exist, and copies the non-existing upper directory from the copy source storage to the copy destination storage. The data multiplexing system according to claim 2. 前記ホストは、前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信し、
前記冗長度回復処理サーバは、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーすることを特徴とする請求項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.
前記ホストは、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見を、パス名解決処理において実行することを特徴とする請求項4に記載のデータ多重化システム。   5. The data multiplexing system according to claim 4, wherein the host performs discovery in a path name resolution process that a file or directory to be changed does not exist. 前記冗長度回復処理サーバから前記ホストへ前記冗長度回復処理の開始と終了の通知を行うことを特徴とする請求項1乃至5の何れか1項に記載のデータ多重化システム。   The data multiplexing system according to any one of claims 1 to 5, wherein the redundancy recovery processing server notifies the host of the start and end of the redundancy recovery processing. a)ホストが、同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うステップと、
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.
d)前記ホストが、前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを、コピー元ストレージからコピー先ストレージへコピーし、変更対象のファイルあるいはディレクトリの変更操作を行うステップを含むことを特徴とする請求項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 that does not exist is copied to the copy source storage 8. The data multiplexing method according to claim 7, further comprising a step of performing a change operation of a file or directory to be changed by copying from the copy destination storage to the copy destination storage. 前記ホストは、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見、および存在しなかった上位ディレクトリのコピー元ストレージからコピー先ストレージへのコピーを、パス名解決処理において実行することを特徴とする請求項8に記載のデータ多重化方法。   In the path name resolution process, the host performs the discovery that the upper directory of the file or directory to be changed does not exist, and copies the non-existing upper directory from the copy source storage to the copy destination storage. The data multiplexing method according to claim 8. d)前記ホストが、前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信するステップと、
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.
前記ホストは、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見を、パス名解決処理において実行することを特徴とする請求項10に記載のデータ多重化方法。   11. The data multiplexing method according to claim 10, wherein the host performs discovery in a path name resolution process that a file or directory to be changed does not exist. 前記冗長度回復処理サーバから前記ホストへ前記冗長度回復処理の開始と終了の通知を行うことを特徴とする請求項7乃至11の何れか1項に記載のデータ多重化方法。   12. The data multiplexing method according to claim 7, wherein the redundancy recovery processing server notifies the host of the start and end of the redundancy recovery processing. 同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うホスト計算機であって、
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見した場合、存在しなかった上位ディレクトリを、コピー元ストレージからコピー先ストレージへコピーし、変更対象のファイルあるいはディレクトリの変更操作を行うストレージアクセス手段とを備えることを特徴とするホスト計算機。
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.
前記ストレージアクセス手段は、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見、および存在しなかった上位ディレクトリのコピー元ストレージからコピー先ストレージへのコピーを、パス名解決処理において実行することを特徴とする請求項13に記載のホスト計算機。   In the path name resolution process, the storage access means discovers that the upper directory of the file or directory to be changed does not exist and copies the non-existing upper directory from the copy source storage to the copy destination storage. The host computer according to claim 13. 同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うホスト計算機であって、
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行し、且つ、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーする機能を有する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見するストレージアクセス手段と、
前記発見された存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信する不完全処理通知手段とを備えることを特徴とするホスト計算機。
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.
前記ストレージアクセス手段は、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見を、パス名解決処理において実行することを特徴とする請求項15に記載のホスト計算機。   The host computer according to claim 15, wherein the storage access unit executes discovery in a path name resolution process that a file or directory to be changed does not exist. ホストから同一のデータを書き込まれることによってデータの冗長化が行われる複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、冗長度を回復するための処理を実行する冗長度回復処理サーバ装置であって、
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記コピー手段とから同時に行われないようにファイルおよびディレクトリ単位で排他を行うためにロック管理サーバからロックを取得するロック手段とを備えることを特徴とする冗長度回復処理サーバ装置。
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.
前記ストレージアクセス手段は、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見、および存在しなかった上位ディレクトリのコピー元ストレージからコピー先ストレージへのコピーを、パス名解決処理において実行することを特徴とする請求項19に記載のプログラム。   In the path name resolution process, the storage access means discovers that the upper directory of the file or directory to be changed does not exist and copies the non-existing upper directory from the copy source storage to the copy destination storage. The program according to claim 19. 同一のデータを複数のストレージに書き込むことによってデータの冗長化を行うホスト計算機を、
前記複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行し、且つ、不完全処理通知で指定された存在しなかった上位ディレクトリとその配下のディレクトリおよびファイルを、コピー元ストレージからコピー先ストレージへコピーする機能を有する冗長度回復処理サーバにおける前記冗長度回復処理中は、前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が同時に行われないようにファイルおよびディレクトリ単位で排他を行うためのロック管理サーバからロックを取得するロック手段と、
前記冗長度回復処理中のコピー先ストレージへのアクセス時、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことを発見するストレージアクセス手段と、
前記発見された存在しなかった上位ディレクトリを指定した不完全処理通知を前記冗長度回復処理サーバへ送信する不完全処理通知手段として機能させるためのプログラム。
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.
前記ストレージアクセス手段は、変更対象のファイルあるいはディレクトリの上位ディレクトリが存在しないことの発見を、パス名解決処理において実行することを特徴とする請求項21に記載のプログラム。   The program according to claim 21, wherein the storage access means executes discovery in a path name resolution process that a file or directory to be changed does not exist. ホストから同一のデータを書き込まれることによってデータの冗長化が行われる複数のストレージの何れかのストレージに障害が発生したことによって冗長度が低下した場合に、冗長度を回復するための処理を実行する冗長度回復処理サーバ装置を構成するコンピュータを、
前記複数のストレージのうち障害の無い何れかのストレージをコピー元ストレージ、冗長度を回復するために使用するストレージをコピー先ストレージとし、前記コピー元ストレージから前記コピー先ストレージに冗長度の低下したデータと同一のデータをコピーする冗長度回復処理を実行するコピー手段と、
前記複数のストレージに記憶されているファイルおよびディレクトリへの変更操作が前記ホストと前記コピー手段とから同時に行われないようにファイルおよびディレクトリ単位で排他を行うためにロック管理サーバからロックを取得するロック手段として機能させるためのプログラム。
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.
JP2008000947A 2008-01-08 2008-01-08 Data multiplexing system and data multiplexing method Expired - Fee Related JP5303935B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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