JP4257053B2 - Shared resource exclusion control method and method - Google Patents
Shared resource exclusion control method and method Download PDFInfo
- Publication number
- JP4257053B2 JP4257053B2 JP2001279667A JP2001279667A JP4257053B2 JP 4257053 B2 JP4257053 B2 JP 4257053B2 JP 2001279667 A JP2001279667 A JP 2001279667A JP 2001279667 A JP2001279667 A JP 2001279667A JP 4257053 B2 JP4257053 B2 JP 4257053B2
- Authority
- JP
- Japan
- Prior art keywords
- shared
- server
- resource
- management area
- shared resource
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、複数のサーバで共有するリソースに対する排他制御方式に関し、特に共有リソース管理領域を設けて共有リソースに対する排他制御を行う共有リソース排他制御方式および方法に関する。
【0002】
【従来の技術】
従来、複数のサーバで共有しているリソースに対して各サーバがアクセスする場合、サーバ間で通信を行い共有リソースの使用状況をやりとりすることにより、複数サーバ間での共有リソースの排他制御を実現していた。
【0003】
このように、サーバ間で通信を行うことにより排他制御を行うために、各サーバは、サーバ間の通信を制御するためのプログラムや各サーバをネットワーク接続するためのハードウェアを備えている。
【0004】
【発明が解決しようとする課題】
しかしながら、上述した従来の技術では、サーバ間で通信を行い共有リソースの使用状況をやりとりするため、サーバ間の通信を制御するプログラムや各サーバをネットワーク接続するためのハードウェアが必要となり、処理が複雑になり、複数サーバで処理を分散することによるオーバーヘッドが大きくなり、負荷分散したことによる性能向上面での十分な効果を期待できないという問題があった。また、そのためのコストも小さくないという問題があった。
【0005】
本発明に目的は、上記の問題点を解決し、シンプルな方式で共有リソースの排他制御を行う共有リソース排他制御方式および方法を提供することにある。
【0006】
【課題を解決するための手段】
本願第1の発明の共有リソース排他制御システムは、複数のサーバと共有ディスク装置とを有し、複数のサーバで共有する共有リソースに対する排他制御を行う共有リソース排他制御システムであって、共有ディスク装置は、複数のサーバからアクセスされる共有リソースと、複数のサーバに対応して存在し共有リソース毎の使用状況を管理する管理領域とを含み、サーバは、共有ディスク装置上の自サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットをオンにし、共有ディスク装置上の他サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットを参照し、参照した他サーバのビットが全てオフであれば共有リソースが未使用であると判断して共有リソースにアクセスして処理を行い、処理実行後に、共有ディスク装置上の自サーバに対応する管理領域内のビットをオフにする、ことを特徴とする。
また、本願第2の発明の共有リソース排他制御システムは、複数のサーバと共有ディスク装置とを有し、複数のサーバで共有する共有リソースに対する排他制御を行う共有リソース排他制御システムであって、共有ディスク装置は、複数のサーバからアクセスされる共有リソースと、複数のサーバに対応して存在し共有リソース毎の使用状況を管理する管理領域とを含み、サーバは、共有ディスク装置上の自サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名を登録し、共有ディスク装置上の他サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名が登録されているか否かを調べ、参照した他サーバの管理領域内に共有リソースのリソース名が登録されていなければ共有リソースが未使用であると判断して共有リソースにアクセスして処理を行い、処理実行後に、共有ディスク装置上の自サーバに対応する管理領域内に登録したリソース名を消去する、ことを特徴とする。
【0009】
本願第3の発明の共有リソース排他制御システムは、第1又は第2の発明においてサーバは、共有リソースの使用状況が全て未使用でない場合には排他エラーとする手段を有することを特徴とする。
【0011】
本願第4の発明の共有リソース排他制御システムは、第1又は第2の発明において共有リソースと管理領域を別々の共有ディスク装置に設ける、ことを特徴とする。
【0012】
本願第5の発明の共有リソース排他制御方法は、複数のサーバと共有ディスク装置とを有し、複数のサーバで共有する共有リソースに対する排他制御を行う共有リソース排他制御方法であって、共有ディスク装置は、複数のサーバからアクセスされる共有リソースと、複数のサーバに対応して存在し共有リソース毎の使用状況を管理する管理領域とを含み、サーバは、共有ディスク装置上の自サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットをオンにし、共有ディスク装置上の他サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットを参照し、参照した他サーバのビットが全てオフであれば共有リソースが未使用であると判断して共有リソースにアクセスして処理を行い、処理実行後に、共有ディスク装置上の自サーバに対応する管理領域内の前記ビットをオフにする、ことを特徴とする。
【0013】
本願第6の発明の共有リソース排他制御方法は、複数のサーバと共有ディスク装置とを有し、複数のサーバで共有する共有リソースに対する排他制御を行う共有リソース排他制御方法であって、共有ディスク装置は、複数のサーバからアクセスされる共有リソースと、複数のサーバに対応して存在し共有リソース毎の使用状況を管理する管理領域とを含み、サーバは、共有ディスク装置上の自サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名を登録し、共有ディスク装置上の他サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名が登録されているか否かを調べ、参照した他サーバの管理領域内に共有リソースのリソース名が登録されていなければ共有リソースが未使用であると判断して共有リソースにアクセスして処理を行い、処理実行後に、共有ディスク装置上の自サーバに対応する管理領域内に登録したリソース名を消去する、ことを特徴とする。
【0014】
【発明の実施の形態】
本発明の特徴について説明する。
【0015】
本発明の共有リソース排他制御方式および方法は、複数サーバ間で共有するリソースについて、サーバ間で通信することなく、各サーバが共有装置内の管理領域をライト/リードすることのみにより、複数サーバ間の共有リソースの排他制御を行うことを特徴としている。
【0016】
ここで、共有リソースとは、すべての対象サーバからアクセス可能な共有装置上のリソースであり、例えば、共有ディスク装置上のファイル、あるいはそのファイル内の各レコードなどを意味する。
【0017】
共有装置内の管理領域は、共有リソースの使用状況を管理する領域であり、サーバ対応にサーバ台数分設けられる。
【0018】
リソースに排他をかけたいサーバは、共有装置上の自サーバ用管理領域の対象リソースに対応するビットをオンにして他サーバ用管理領域を参照し、他サーバ用管理領域の対象リソースに対応するビットがすべてオフであれば排他に成功し、リソースに対する処理を実行する。処理終了後、対応する管理ビットをオフにし、排他を解除する。
【0019】
リソースに対する管理領域をサーバ台数分設けることで、各管理領域を更新するサーバはその管理領域に対応するサーバのみとなり、自サーバの管理領域は他サーバから上書きされる心配がないため、管理領域の排他を意識することなく(管理領域を排他制御する必要がなく)、シンプルな方式でサーバ間の排他制御を実現することができる。
【0020】
なお、各サーバ内のプロセス間の排他制御は、各サーバ内で実現されるものとする。また、各サーバは、サーバキャッシュを利用せず、常に最新の共有装置領域を参照するものとする。
【0021】
次に、本発明の実施の形態の構成について、図面を参照して詳細に説明する。
【0022】
図1は、本発明の実施の形態の構成を示す図である。
【0023】
図2は、管理領域を説明する図である。
【0024】
図3は、共有リソースと管理領域との対応を説明する図である。
【0025】
図1を参照すると、本発明の実施の形態は、共有装置1と、サーバ群2と、を備えている。
【0026】
サーバ群2は、サーバ21〜サーバ2nから構成される。各サーバは、プログラム制御で動作するコンピュータであり、共有装置1をアクセスする。
【0027】
共有装置1は、サーバ群2からアクセスされ参照/更新可能な装置であり、例えば磁気ディスク装置などである。共有装置1は、管理領域群11と共有リソース群12とを含む。
【0028】
管理領域群11は、共有リソース群12の排他制御を管理するための領域であり、管理領域111〜管理領域11nから構成される。管理領域111はサーバ21に、管理領域112はサーバ22に、…、管理領域11nはサーバ2nに対応している。各管理領域にはそれぞれに対応するサーバの共有リソース使用状況が管理されていて、各管理領域は共有リソース毎の使用状況を示すビットの集まりであるビットマップとなっている。各ビットで管理するリソースの使用状況はビットのオン/オフによって表し、オンの場合「対応するリソースは使用中」、オフの場合「対応するリソースは未使用」を表す。図2に管理領域を例示する。図2の1マスが1ビットに対応する。図2では、1ビット目がリソース121に、2ビット目がリソース122に、…、対応していることを示している。
【0029】
共有リソース群12は、リソース121〜リソース12mから構成される。各リソースはサーバ群2からアクセスされる。各リソースに対するアクセスは管理領域群11を使用して排他制御される。共有リソース群12の一例として、相対編成ファイル内の各レコードがある。相対編成ファイルは、サーバ21〜サーバ2nより参照/更新可能なファイルであり、複数のレコードから構成される。相対編成ファイルを構成する各レコードが、排他制御を行うリソース対象となる。
【0030】
ここで、共有リソースと管理領域との対応について、より具体的に説明する。本説明では共有リソースを相対編成ファイル内の各レコードとしている。
【0031】
相対編成ファイルの相対レコード番号を、管理領域の相対位置として使用し、各レコードに対応する管理領域内ビットを特定する。つまり、相対編成ファイルの第1レコード(相対レコード番号1のレコード)の使用状況を管理領域の1ビット目(1マス目)で管理し、第2レコードの使用状況を2ビット目で、第3レコードの使用状況を3ビット目で、という具合に、m番目のリソースをmビット目で管理する。
【0032】
相対編成ファイルの各レコードと、管理領域111〜管理領域11nのビットの対応例を、図3に示す。図3を参照すると、相対編成ファイルの第3レコードについて、サーバ21での使用状況は管理領域111の3ビット目で、サーバ22での使用状況は管理領域112の3ビット目で、…、サーバ2nでの使用状況は管理領域11nの3ビット目で管理されている。
【0033】
次に、本発明の実施の形態の動作について、図4〜図6を参照して詳細に説明する。
【0034】
図4は、本発明の実施の形態の動作を説明する図である。
【0035】
図5は、本発明の実施の形態の動作(a)排他開始処理(b)排他解除処理の流れを示す図である。
【0036】
図6は、リソース競合時の整合性を説明する図である。
【0037】
図4を参照すると、サーバ21〜サーバ2nに対応する管理領域111〜管理領域11nが共有装置1に確保されている。また、共有リソースは相対編成ファイル13の各レコードである。
【0038】
最初に、図5(a)を用いて、サーバ21〜サーバ2nの各サーバが相対編成ファイル13のレコードを参照/更新する場合について説明する。例えば、サーバ21で、相対編成ファイル13の第3レコード(相対レコード番号3のレコード)を参照/更新する場合、以下の処理となる。
【0039】
サーバ21は、共有装置1上の自サーバに対応する管理領域111の3ビット目をオンにする(S11)。
【0040】
管理領域群11全体(管理領域111〜管理領域11n)を読み込み、他サーバ(サーバ22〜サーバ2n)に対応する管理領域112〜管理領域11nのそれぞれの3ビット目を参照する(S12)。
【0041】
参照した各管理領域の3ビット目がすべてオフである場合(S13でYES)、排他成功(S14)として、第3レコードを参照/更新する処理を実行する。
【0042】
オンである領域がひとつでも存在した場合(S13でNO)、管理領域111の3ビット目をオフに戻し、排他失敗として処理を中断する(S15)。
【0043】
続いて、図5(b)を用いて、排他成功したサーバ21が相対編成ファイル13の第3レコードを排他解除する場合について説明する。サーバ21は、第3レコードを参照/更新する処理実行後、以下の処理を行う。
【0044】
共有装置1上のサーバ21に対応する管理領域111の3ビット目をオフにし(S16)、排他解除成功として処理を終了する(S17)。
【0045】
次に、図6を参照して、本発明を実施した際に、共有リソースの整合性が維持されることを説明する。
【0046】
図6は、リソース競合時の整合性を説明する図であり、不整合を排除できることが確認できるタイミングチャートである。図6の縦細線は、対象リソースの各サーバに対応する管理ビットを指し、時間は上から下に流れる。各パターンは、2つのサーバが同じリソースにアクセスする場合の処理の流れを、共有装置上の管理領域へのアクセスタイミングにより場合分けしたものである。図6内の各記号は、以下の処理を意味している。
・ON(T11):自サーバの対象リソースに対応するビットをオンにして排他を開始する。
・Read(T12):全サーバ分の管理領域を読み込んで他サーバ用の対象リソースに対応するビットを参照する。
・OK(T13):Read(T12)で参照したビットがすべてオフである。
・OFF(T14):自サーバの対象リソースに対応するビットをオフにして排他を解除する。
・Error(T15):Read(T12)で参照したビットにオンであるものが存在し、排他に失敗した。
・各タイミングチャートの白抜き矢印は、各サーバからの排他が成功し、リソースを確保している期間を示す。
【0047】
各パターンについて説明する。
【0048】
パターン1は、先行サーバでの処理がすべて終了し排他解除したと同時に後行サーバでの処理が始まるパターンである。先行サーバがリソースを解放したので、後行サーバはリソースを確保する。
【0049】
パターン2は、先行サーバでの排他開始後、排他解除前に、後行サーバでの処理が始まるパターンである。先行サーバがリソースを確保しているので、後行サーバはリソース確保に失敗する。
【0050】
パターン3は、先行サーバが自サーバの対象リソースに対応するビットをオンにした直後に、後行サーバが処理を開始し、先行サーバが後行サーバ用の管理ビットがオンであるために排他エラーと判断して管理ビットをオフにした後に、後行サーバが全サーバ分の管理領域を読み込むパターンである。先行サーバがリソース排他処理を止めたので、後行サーバはリソースを確保する。
【0051】
パターン4は、先行サーバと後行サーバが、ほぼ同時に処理を開始し、共に排他エラーとなるパターンである。先行サーバと後行サーバと共に、リソースを確保に失敗する。
【0052】
パターン5は、先行サーバが自サーバの対象リソースに対応するビットをオンにした直後に、後行サーバが処理を開始し、後行サーバが先行サーバ用の管理ビットがオンであるために排他エラーと判断して管理ビットをオフにした後に、先行サーバが全サーバ分の管理領域を読み込むパターンである。後行サーバがリソース排他処理を止めたので、先行サーバはリソースを確保する。
【0053】
このように、複数のサーバで同時に”OK”となることがないことを確認でき、整合性が維持される。
【0054】
上述したように、サーバ対応に設けた管理領域のビットでリソースを管理することにより、シンプルに排他制御を行うことができる。
【0055】
上述した実施の形態では、管理領域は管理領域内のビットにリソースを対応づけ1つのビットで1つのリソースを管理し、ビットのオン/オフでリソースの使用/未使用を管理しているが、他の実施の形態として、管理領域にリソース名を登録するようにし管理領域にリソース名が登録されているか否かでリソースの使用/未使用を管理するようにしてもよい。
【0056】
次に、本発明の他の実施の形態について説明する。
【0057】
本発明の他の実施の形態の構成については上述した実施の形態の構成と同様であるので説明を省略し、本発明の他の実施の形態の動作について図7および図8を参照して説明する。
【0058】
図7は本発明の他の実施の形態の動作を説明する図であり、図8は管理領域を説明する図である。
【0059】
ここでは、サーバ31が相対編成ファイル13の第3レコード(相対レコード番号3のレコード)をアクセスする場合を例にとり、説明する。なお、第3レコードのリソース名を”REC−3”とする。
【0060】
サーバ31は、共有装置1上の自サーバに対応する管理領域141内にリソース名”REC−3”を登録する。
【0061】
管理領域群14全体(管理領域141〜管理領域14n)を読み込み、他サーバ(サーバ32〜サーバ3n)に対応する管理領域142〜管理領域14n内にリソース名”REC−3”が登録されているか否かを調べる。
【0062】
調べた結果、各管理領域内にリソース名”REC−3”が全く登録されていない場合、排他成功として、サーバ31は第3レコードを参照/更新する処理を実行する。
【0063】
調べた結果、リソース名”REC−3”が登録されている管理領域がひとつでも存在した場合、サーバ31は管理領域141内に登録したリソース名”REC−3”を消去し、排他失敗として、処理を中断する。
【0064】
サーバ31は、第3レコードを参照/更新する処理を実行した後、共有装置1上のサーバ31に対応する管理領域141内に登録したリソース名”REC−3”を消去し、排他解除成功として、処理を終了する。
【0065】
このように、サーバ対応に設けた管理領域にリソース名を登録して管理することにより、シンプルに排他制御を行うことができる。
【0066】
また、上述した実施の形態では、管理領域群と共有リソース群とを同一の装置内に設けているが、他の実施の形態として、管理領域群と共有リソース群を別々の装置に設けるようにしてもよい。こうすることにより、共有リソース群に対するアクセス性能が向上する効果がある。
【0067】
【発明の効果】
第1の効果は、サーバ間での通信を行う必要がないことによる開発コストおよび必要ハードウェアの削減である。サーバ間で通信を行うことにより排他制御を行う場合、サーバ間の通信を制御するプログラムの開発や各サーバをネットワーク接続するためのハードウェアが必要となる。本発明を使用することにより共有リソースが存在するディスク上で排他制御が可能なため、それらのプログラム、ハードウェアがすべて不要となり、開発コストおよびハードウェアコストを大幅に削減できる。
【0068】
第2の効果は、複数サーバで処理を分散することにより必要となるオーバーヘッドを軽減することによる高パフォーマンスの実現である。複数サーバで処理を分散する場合、整合性を保ちつつパフォーマンスを向上させるためには、排他をかける共有リソースの単位を小さくして処理並列度を上げる必要がある。例えば、ファイル単位で排他をかけるのではなく、レコード単位で排他をかけるという具合である。この場合、排他処理を行う対象および実行回数が増えるため、個々の排他処理が複雑であれば、その分、排他制御を行うことによるオーバーヘッドが増大し、パフォーマンスに大きく影響する。本発明を使用することにより、共有リソースが存在するディスク上のセクタをWrite&Readするだけで1リソースの排他処理が完了するため、個々の排他処理が単純になり、排他単位を小さくしてもそのオーバーヘッドがほとんど発生しない。従って、複数サーバで処理を分散し大幅にパフォーマンスを向上させることが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態の構成を示す図
【図2】管理領域を説明する図
【図3】共有リソースと管理領域との対応を説明する図
【図4】本発明の実施の形態の動作を説明する図
【図5】本発明の実施の形態の動作(a)排他開始処理(b)排他解除処理の流れを示す図
【図6】リソース競合時の整合性を説明する図
【図7】本発明の他の実施の形態の動作を説明する図
【図8】管理領域を説明する図
【符号の説明】
1 共有装置
2 サーバ群
11 管理領域群
12 共有リソース群
13 相対編成ファイル
14 管理領域群
21 サーバ
22 サーバ
2n サーバ
31 サーバ
32 サーバ
3n サーバ
111 管理領域
112 管理領域
11n 管理領域
121 リソース
122 リソース
12m リソース
141 管理領域
142 管理領域
14n 管理領域[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an exclusive control method for resources shared by a plurality of servers, and more particularly to a shared resource exclusive control method and method for providing exclusive control for shared resources by providing a shared resource management area.
[0002]
[Prior art]
Conventionally, when each server accesses a resource shared by multiple servers, exclusive control of the shared resource between multiple servers is realized by communicating between the servers and exchanging the usage status of the shared resource Was.
[0003]
Thus, in order to perform exclusive control by performing communication between servers, each server includes a program for controlling communication between servers and hardware for connecting each server to a network.
[0004]
[Problems to be solved by the invention]
However, in the conventional technology described above, communication between servers is performed to exchange the usage status of shared resources, so a program for controlling communication between servers and hardware for connecting each server to a network are necessary, and processing is performed. There is a problem that the complexity is increased, the overhead due to the distribution of processing among a plurality of servers is increased, and a sufficient effect in terms of performance improvement due to the load distribution cannot be expected. Moreover, there was a problem that the cost for that was not small.
[0005]
An object of the present invention is to provide a shared resource exclusive control method and method for solving the above problems and performing exclusive control of a shared resource by a simple method.
[0006]
[Means for Solving the Problems]
A shared resource exclusive control system according to a first invention of the present application is a shared resource exclusive control system that includes a plurality of servers and a shared disk device, and performs exclusive control on a shared resource shared by the plurality of servers, the shared disk device Includes a shared resource that is accessed from a plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource. The server corresponds to its own server on the shared disk device. Turn on the bit of the shared resource to be accessed in the management area, refer to the bit of the shared resource to be accessed in the management area corresponding to the other server on the shared disk device, and refer to the bit of the referenced other server. Are all off, it is determined that the shared resource is unused and the shared resource is accessed and processed. There, after processing execution, clearing bit of the management area corresponding to the local server on the shared disk device, characterized in that.
The shared resource exclusive control system according to the second invention of the present application is a shared resource exclusive control system that has a plurality of servers and a shared disk device, and performs exclusive control on a shared resource shared by a plurality of servers. The disk device includes a shared resource accessed from a plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource. Whether the resource name of the shared resource to be accessed is registered in the corresponding management area, and the resource name of the shared resource to be accessed is registered in the management area corresponding to the other server on the shared disk device If the resource name of the shared resource is not registered in the management area of the referenced other server It is characterized in that the resource is judged to be unused, the shared resource is accessed to perform processing, and after the processing is executed, the resource name registered in the management area corresponding to the local server on the shared disk device is deleted. To do.
[0009]
The shared resource exclusive control system according to the third invention of the present application is characterized in that, in the first or second invention, the server has means for making an exclusive error when the shared resource usage status is not all unused.
[0011]
The shared resource exclusive control system of the fourth invention of the present application is characterized in that the shared resource and the management area are provided in separate shared disk devices in the first or second invention.
[0012]
A shared resource exclusive control method according to a fifth invention of the present application is a shared resource exclusive control method that has a plurality of servers and a shared disk device, and performs exclusive control on a shared resource shared by the plurality of servers, the shared disk device Includes a shared resource that is accessed from a plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource. The server corresponds to its own server on the shared disk device. Turn on the bit of the shared resource to be accessed in the management area, refer to the bit of the shared resource to be accessed in the management area corresponding to the other server on the shared disk device, and refer to the bit of the referenced other server. If all are off, it is determined that the shared resource is unused and the shared resource is accessed and processed. After execution, turn off the bit in the management area corresponding to its own servers on the shared disk device, it is characterized.
[0013]
A shared resource exclusive control method according to a sixth invention of the present application is a shared resource exclusive control method that includes a plurality of servers and a shared disk device, and performs exclusive control on a shared resource shared by the plurality of servers, the shared disk device Includes a shared resource that is accessed from a plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource. The server corresponds to its own server on the shared disk device. Register the resource name of the shared resource to be accessed in the management area, and check whether the resource name of the shared resource to be accessed is registered in the management area corresponding to the other server on the shared disk device. If the resource name of the shared resource is not registered in the management area of the other server Performed to access the shared resource it is determined that the use in the process, after the process execution, erases the resource name registered in the management area corresponding to the local server on the shared disk device, characterized in that.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
The features of the present invention will be described.
[0015]
The shared resource exclusive control method and method according to the present invention enables a resource shared between a plurality of servers to be communicated between a plurality of servers only by writing / reading the management area in the shared device without communication between the servers. It is characterized by exclusive control of shared resources.
[0016]
Here, the shared resource is a resource on the shared device that can be accessed from all target servers, and means, for example, a file on the shared disk device or each record in the file.
[0017]
The management area in the shared device is an area for managing the usage status of the shared resource, and is provided for the number of servers corresponding to the servers.
[0018]
A server that wants to lock a resource turns on the bit corresponding to the target resource in the management area for its own server on the shared device, refers to the management area for other servers, and corresponds to the target resource in the management area for other servers If all are off, exclusion is successful and processing for the resource is executed. After the processing is completed, the corresponding management bit is turned off, and the exclusion is released.
[0019]
By providing as many management areas for resources as there are servers, the server that updates each management area is only the server corresponding to that management area, and there is no concern that the management area of its own server will be overwritten by other servers. Exclusive control between servers can be realized by a simple method without being aware of exclusion (no need to exclusively control the management area).
[0020]
Note that exclusive control between processes in each server is realized in each server. Each server always refers to the latest shared device area without using the server cache.
[0021]
Next, the configuration of the embodiment of the present invention will be described in detail with reference to the drawings.
[0022]
FIG. 1 is a diagram showing a configuration of an embodiment of the present invention.
[0023]
FIG. 2 is a diagram for explaining the management area.
[0024]
FIG. 3 is a diagram illustrating the correspondence between shared resources and management areas.
[0025]
Referring to FIG. 1, the embodiment of the present invention includes a shared device 1 and a server group 2.
[0026]
The server group 2 includes
[0027]
The shared device 1 is a device that is accessed from the server group 2 and can be referred to / updated, and is, for example, a magnetic disk device. The shared device 1 includes a management area group 11 and a shared resource group 12.
[0028]
The management area group 11 is an area for managing exclusive control of the shared resource group 12, and is composed of a
[0029]
The shared resource group 12 includes resources 121 to 12m. Each resource is accessed from the server group 2. Access to each resource is exclusively controlled using the management area group 11. An example of the shared resource group 12 is each record in the relative organization file. The relative organization file is a file that can be referred to / updated from the
[0030]
Here, the correspondence between the shared resource and the management area will be described more specifically. In this description, the shared resource is each record in the relative organization file.
[0031]
The relative record number of the relative organization file is used as the relative position of the management area, and the bit in the management area corresponding to each record is specified. That is, the usage status of the first record (record of relative record number 1) of the relative organization file is managed by the first bit (first square) of the management area, the usage status of the second record is set by the second bit, The mth resource is managed at the mth bit, such as the use status of the record at the third bit.
[0032]
FIG. 3 shows a correspondence example between each record of the relative organization file and the bits of the
[0033]
Next, the operation of the embodiment of the present invention will be described in detail with reference to FIGS.
[0034]
FIG. 4 is a diagram for explaining the operation of the embodiment of the present invention.
[0035]
FIG. 5 is a diagram showing a flow of operation (a) exclusion start process (b) exclusion release process according to the embodiment of the present invention.
[0036]
FIG. 6 is a diagram for explaining consistency during resource competition.
[0037]
Referring to FIG. 4,
[0038]
First, the case where each of the
[0039]
The
[0040]
The entire management area group 11 (
[0041]
When all the third bits of the referenced management areas are off (YES in S13), the process of referring / updating the third record is executed as exclusion success (S14).
[0042]
If there is even one area that is on (NO in S13), the third bit of the
[0043]
Next, a case where the
[0044]
The third bit of the
[0045]
Next, with reference to FIG. 6, it will be described that the consistency of shared resources is maintained when the present invention is implemented.
[0046]
FIG. 6 is a diagram for explaining consistency at the time of resource competition, and is a timing chart for confirming that inconsistency can be eliminated. The vertical thin lines in FIG. 6 indicate management bits corresponding to each server of the target resource, and the time flows from top to bottom. In each pattern, the processing flow when two servers access the same resource is classified according to the access timing to the management area on the shared device. Each symbol in FIG. 6 means the following processing.
ON (T11): The exclusion is started by turning on the bit corresponding to the target resource of the local server.
Read (T12): Read the management area for all servers and refer to the bit corresponding to the target resource for other servers.
• OK (T13): All bits referenced in Read (T12) are off.
-OFF (T14): Releases exclusion by turning off the bit corresponding to the target resource of the local server.
-Error (T15): Some of the bits referenced in Read (T12) are on, and exclusion failed.
A white arrow in each timing chart indicates a period during which exclusion from each server is successful and resources are secured.
[0047]
Each pattern will be described.
[0048]
Pattern 1 is a pattern in which the processing at the succeeding server starts at the same time as the processing at the preceding server ends and the exclusion is released. Since the preceding server has released the resource, the succeeding server reserves the resource.
[0049]
Pattern 2 is a pattern in which processing at the succeeding server starts after exclusion starts at the preceding server and before cancellation of exclusion. Since the preceding server has secured the resource, the succeeding server fails to secure the resource.
[0050]
[0051]
Pattern 4 is a pattern in which the preceding server and the succeeding server start processing almost simultaneously and both result in an exclusion error. Failed to secure resources with the preceding server and the succeeding server.
[0052]
[0053]
In this way, it can be confirmed that a plurality of servers are not “OK” at the same time, and consistency is maintained.
[0054]
As described above, exclusive control can be performed simply by managing resources with bits of a management area provided for servers.
[0055]
In the above-described embodiment, the management area associates resources with bits in the management area, manages one resource with one bit, and manages use / unuse of the resource by turning on / off the bit. In another embodiment, resource names may be registered in the management area, and resource use / unuse may be managed depending on whether or not the resource name is registered in the management area.
[0056]
Next, another embodiment of the present invention will be described.
[0057]
Since the configuration of another embodiment of the present invention is the same as the configuration of the above-described embodiment, the description thereof will be omitted, and the operation of the other embodiment of the present invention will be described with reference to FIGS. To do.
[0058]
FIG. 7 is a diagram for explaining the operation of another embodiment of the present invention, and FIG. 8 is a diagram for explaining a management area.
[0059]
Here, a case where the server 31 accesses the third record (record with the relative record number 3) of the
[0060]
The server 31 registers the resource name “REC-3” in the
[0061]
Whether the entire management area group 14 (
[0062]
As a result of the examination, if the resource name “REC-3” is not registered at all in each management area, the server 31 executes a process of referring to / updating the third record as successful exclusion.
[0063]
As a result of the examination, if there is even one management area in which the resource name “REC-3” is registered, the server 31 deletes the resource name “REC-3” registered in the
[0064]
After executing the process of referencing / updating the third record, the server 31 deletes the resource name “REC-3” registered in the
[0065]
In this way, exclusive control can be performed simply by registering and managing resource names in a management area provided for the server.
[0066]
In the above-described embodiment, the management area group and the shared resource group are provided in the same apparatus. However, as another embodiment, the management area group and the shared resource group are provided in separate apparatuses. May be. This has the effect of improving the access performance for the shared resource group.
[0067]
【The invention's effect】
The first effect is a reduction in development cost and necessary hardware due to the absence of communication between servers. When performing exclusive control by performing communication between servers, development of a program for controlling communication between servers and hardware for connecting each server to a network are required. By using the present invention, exclusive control is possible on a disk on which shared resources exist, so that all of these programs and hardware are unnecessary, and development costs and hardware costs can be greatly reduced.
[0068]
The second effect is realization of high performance by reducing overhead required by distributing processing among a plurality of servers. When processing is distributed among a plurality of servers, in order to improve performance while maintaining consistency, it is necessary to increase the degree of processing parallelism by reducing the unit of shared resources to be excluded. For example, the exclusion is not performed in units of files, but is performed in units of records. In this case, the number of executions and the number of executions of the exclusive process increase. Therefore, if each exclusive process is complicated, the overhead due to the exclusive control increases correspondingly, and the performance is greatly affected. By using the present invention, the exclusive processing of one resource is completed simply by writing and reading the sector on the disk where the shared resource exists, so that the individual exclusive processing becomes simple and the overhead is reduced even if the exclusive unit is reduced. Hardly occurs. Therefore, it is possible to greatly improve performance by distributing processing among a plurality of servers.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration of an embodiment of the present invention. FIG. 2 is a diagram illustrating a management area. FIG. 3 is a diagram illustrating a correspondence between a shared resource and a management area. FIG. 5 is a diagram for explaining the operation of the embodiment. FIG. 5 is a diagram showing the flow of the operation of the embodiment of the present invention (a) exclusion start process (b) exclusion release process. FIG. FIG. 7 is a diagram for explaining the operation of another embodiment of the present invention. FIG. 8 is a diagram for explaining a management area.
DESCRIPTION OF SYMBOLS 1 Shared apparatus 2 Server group 11 Management area group 12
Claims (6)
前記共有ディスク装置は、
前記複数のサーバからアクセスされる共有リソースと、
前記複数のサーバに対応して存在し前記共有リソース毎の使用状況を管理する管理領域とを含み、
前記サーバは、
前記共有ディスク装置上の自サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットをオンにし、
前記共有ディスク装置上の他サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットを参照し、
前記参照した他サーバのビットが全てオフであれば前記共有リソースが未使用であると判断して前記共有リソースにアクセスして処理を行い、
処理実行後に、前記共有ディスク装置上の自サーバに対応する管理領域内の前記ビットをオフにする、
ことを特徴とする共有リソース排他制御システム。A shared resource exclusive control system having a plurality of servers and a shared disk device, and performing exclusive control on a shared resource shared by the plurality of servers,
The shared disk device is
A shared resource accessed from the plurality of servers;
A management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource,
The server
Turn on the bit of the shared resource to be accessed in the management area corresponding to its own server on the shared disk device,
Refer to the bit of the shared resource to be accessed in the management area corresponding to the other server on the shared disk device,
If all the bits of the referenced other server are off, the shared resource is judged to be unused and the shared resource is accessed and processed.
After the processing is executed, the bit in the management area corresponding to the own server on the shared disk device is turned off.
A shared resource exclusive control system characterized by that.
前記共有ディスク装置は、The shared disk device is
前記複数のサーバからアクセスされる共有リソースと、A shared resource accessed from the plurality of servers;
前記複数のサーバに対応して存在し前記共有リソース毎の使用状況を管理する管理領域とを含み、A management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource,
前記サーバは、The server
前記共有ディスク装置上の自サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名を登録し、Register the resource name of the shared resource to be accessed in the management area corresponding to the own server on the shared disk device,
前記共有ディスク装置上の他サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名が登録されているか否かを調べ、Check whether the resource name of the shared resource to be accessed is registered in the management area corresponding to the other server on the shared disk device,
前記参照した他サーバの管理領域内に前記共有リソースのリソース名が登録されていなければ前記共有リソースが未使用であると判断して前記共有リソースにアクセスして処理を行い、If the resource name of the shared resource is not registered in the management area of the other server referred to, the shared resource is determined to be unused and the shared resource is accessed and processed.
処理実行後に、前記共有ディスク装置上の自サーバに対応する管理領域内に登録したリソース名を消去する、After executing the process, the resource name registered in the management area corresponding to the own server on the shared disk device is deleted.
ことを特徴とする共有リソース排他制御システム。A shared resource exclusive control system characterized by that.
ことを特徴とする請求項1又は請求項2記載の共有リソース排他制御システム。The server has means for making an exclusive error when the usage status of the shared resource is not all unused,
The shared resource exclusive control system according to claim 1 or 2, wherein
ことを特徴とする請求項1又は請求項2記載の共有リソース排他制御システム。Providing the shared resource and the management area in separate shared disk devices;
The shared resource exclusive control system according to claim 1 or 2, wherein
前記共有ディスク装置は、
前記複数のサーバからアクセスされる共有リソースと、前記複数のサーバに対応して存在し前記共有リソース毎の使用状況を管理する管理領域とを含み、
前記サーバは、
前記共有ディスク装置上の自サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットをオンにし、
前記共有ディスク装置上の他サーバに対応する管理領域内のこれからアクセスしようとする共有リソースのビットを参照し、
前記参照した他サーバのビットが全てオフであれば前記共有リソースが未使用であると判断して前記共有リソースにアクセスして処理を行い、
処理実行後に、前記共有ディスク装置上の自サーバに対応する管理領域内の前記ビットをオフにする、
ことを特徴とする共有リソース排他制御方法。A shared resource exclusive control method that has a plurality of servers and a shared disk device and performs exclusive control on a shared resource shared by the plurality of servers,
The shared disk device is
A shared resource that is accessed from the plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource,
The server
Turn on the bit of the shared resource to be accessed in the management area corresponding to its own server on the shared disk device,
Refer to the bit of the shared resource to be accessed in the management area corresponding to the other server on the shared disk device,
If all the bits of the referenced other server are off, the shared resource is judged to be unused and the shared resource is accessed and processed.
After the processing is executed, the bit in the management area corresponding to the own server on the shared disk device is turned off.
A shared resource exclusive control method characterized by the above.
前記共有ディスク装置は、
前記複数のサーバからアクセスされる共有リソースと、前記複数のサーバに対応して存在し前記共有リソース毎の使用状況を管理する管理領域とを含み、
前記サーバは、
前記共有ディスク装置上の自サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名を登録し、
前記共有ディスク装置上の他サーバに対応する管理領域内にこれからアクセスしようとする共有リソースのリソース名が登録されているか否かを調べ、
前記参照した他サーバの管理領域内に前記共有リソースのリソース名が登録されていなければ前記共有リソースが未使用であると判断して前記共有リソースにアクセスして処理を行い、
処理実行後に、前記共有ディスク装置上の自サーバに対応する管理領域内に登録したリソース名を消去する、
ことを特徴とする共有リソース排他制御方法。A shared resource exclusive control method that has a plurality of servers and a shared disk device and performs exclusive control on a shared resource shared by the plurality of servers,
The shared disk device is
A shared resource that is accessed from the plurality of servers, and a management area that exists corresponding to the plurality of servers and manages the usage status of each shared resource,
The server
Register the resource name of the shared resource to be accessed in the management area corresponding to the own server on the shared disk device,
Check whether the resource name of the shared resource to be accessed is registered in the management area corresponding to the other server on the shared disk device,
If the resource name of the shared resource is not registered in the management area of the referenced other server, the shared resource is determined to be unused and the shared resource is accessed and processed.
After processing is executed, the resource name registered in the management area corresponding to the own server on the shared disk device is deleted.
A shared resource exclusive control method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001279667A JP4257053B2 (en) | 2001-09-14 | 2001-09-14 | Shared resource exclusion control method and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001279667A JP4257053B2 (en) | 2001-09-14 | 2001-09-14 | Shared resource exclusion control method and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003085026A JP2003085026A (en) | 2003-03-20 |
JP4257053B2 true JP4257053B2 (en) | 2009-04-22 |
Family
ID=19103809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001279667A Expired - Fee Related JP4257053B2 (en) | 2001-09-14 | 2001-09-14 | Shared resource exclusion control method and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4257053B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4468395B2 (en) * | 2007-03-23 | 2010-05-26 | 株式会社東芝 | Cluster system and program |
JP4874847B2 (en) * | 2007-03-27 | 2012-02-15 | 株式会社東芝 | Cluster system |
JP5002296B2 (en) * | 2007-03-27 | 2012-08-15 | 株式会社東芝 | Cluster system and program |
JP5745868B2 (en) | 2011-01-18 | 2015-07-08 | トヨタ自動車株式会社 | Multiprocessor system |
JP2021009554A (en) * | 2019-07-01 | 2021-01-28 | 日本電気株式会社 | Computer device, data sharing system, data access method, and program |
-
2001
- 2001-09-14 JP JP2001279667A patent/JP4257053B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003085026A (en) | 2003-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2460833C (en) | System and method for implementing journaling in a multi-node environment | |
JP5385545B2 (en) | Apparatus and method for controlling execution of transaction | |
JP4436036B2 (en) | Information processing apparatus, trace processing method, program, and recording medium | |
JP2010500673A (en) | Storage management system for maintaining consistency of remote copy data (storage management system, storage management method, and computer program) | |
TWI782487B (en) | Method for performing simple storage service seamless migration using index objects, host device, and storage server | |
JP2004531807A (en) | Workload management for stateful program entities | |
US11449241B2 (en) | Customizable lock management for distributed resources | |
US10732841B2 (en) | Tracking ownership of memory in a data processing system through use of a memory monitor | |
CN106021327A (en) | A method for constructing a network disk system supporting simultaneous reading and writing of multiple users | |
US8479044B2 (en) | Method for determining a state associated with a transaction | |
KR100745878B1 (en) | High-performance lock management for flash copy in n-way shared storage systems | |
JP3748708B2 (en) | Client / server system, client computer, and recording medium | |
JP4257053B2 (en) | Shared resource exclusion control method and method | |
JP2003006170A (en) | Method for performing program in environment of plural computers | |
JPH07262071A (en) | Data base system and load distribution control method | |
JP2006277634A (en) | Exclusive control method and information processor | |
US6742086B1 (en) | Affinity checking process for multiple processor, multiple bus optimization of throughput | |
JP2001344142A (en) | Multiprogram processor and file roll-back method used for it | |
KR20100022171A (en) | Apparatus and method for saving log in thread oriented logging system | |
WO2018056267A1 (en) | Database management device, database management method, and computer-readable recording medium | |
JP3970524B2 (en) | Exclusive control method between multiple operations | |
JP2000003271A (en) | Software managing device and computer readable recording medium for recording program | |
JP2001318905A (en) | Disk shared type distributed server system | |
JP2021144567A (en) | Control unit, control system and data restoration method | |
KR100402424B1 (en) | A System and Method for Operating the Availability Information of CORBA Binding by using shared memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060612 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060620 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060807 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060912 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20070119 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080604 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081225 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090202 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140206 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |