JPH0687228B2 - アクセス制御方法および記憶手段管理方法 - Google Patents

アクセス制御方法および記憶手段管理方法

Info

Publication number
JPH0687228B2
JPH0687228B2 JP2333433A JP33343390A JPH0687228B2 JP H0687228 B2 JPH0687228 B2 JP H0687228B2 JP 2333433 A JP2333433 A JP 2333433A JP 33343390 A JP33343390 A JP 33343390A JP H0687228 B2 JPH0687228 B2 JP H0687228B2
Authority
JP
Japan
Prior art keywords
lock
node
tree
key
locks
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 - Lifetime
Application number
JP2333433A
Other languages
English (en)
Other versions
JPH03225538A (ja
Inventor
ダニエル、ロドマン、ヒックス
Original Assignee
インターナショナル、ビジネス、マシーンズ、コーポレーション
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 インターナショナル、ビジネス、マシーンズ、コーポレーション filed Critical インターナショナル、ビジネス、マシーンズ、コーポレーション
Publication of JPH03225538A publication Critical patent/JPH03225538A/ja
Publication of JPH0687228B2 publication Critical patent/JPH0687228B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/52Indexing scheme relating to G06F9/52
    • G06F2209/523Mode

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Lock And Its Accessories (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は一般にデータベース管理システムに関する。詳
細には本発明は記憶手段の予め限定された部分へのアク
セスを実現するために共用(読取専用)および排他(読
取/書込)ロックを利用するコンピュータシステムにお
けるバイトストリームファイルの管理を行う方法に関す
る。
〔従来技術および課題〕
「レコード」と呼ぶ個々のエンティティーへと組織化さ
れたデータ(すなわち、関連するデータ項目を含むバイ
ト群)を有し、隣接するレコード間の重なりを許さない
コンピュータシステムにおける記憶手段の予め限定され
た部分へのアクセスを管理するための多くの技術が知ら
れている。
そのようなレコードを保持しデータベースへのアクセス
を管理するために種々のロッキングを利用することは周
知である。例えば、読取中に書込みを排除するがロック
により保護されるデータへの共用アクセスを許す「読
取」ロックにより保護されるべきデータは変化しないよ
うに保護される。そのようなロックは、保護されるデー
タへの変更が読取ロックを行う間に不可能とする。
レコード形のデータへのアクセスは「読取/書込」ロッ
クを用いても制御しうる。これらロックは、通常ロック
ホルダにより開始される読取または書込アクセス以外
の、ロックにより管理される記憶手段の部分へのすべて
の読取および書込アクセスを排除する。
特に大きなデータベースを管理するために用いられると
き、レコード形のロッキング技術はデータレコードのロ
ッキングおよびアンロッキングにかなりの時間を必要と
する。システム性能の低下がそのような技術を用いる結
果として生じうる。
レコード内でデータを組織化するコンピュータシステム
についてデータベース管理技術を改善するための多くの
文献および発明がある。例えば1982年12月のIBMテクニ
カルディスクロージャバルティン25巻第7B号および1983
年4月の第25巻第11A号にはツリー形インデクスの部分
をロックするための技術が開示されており、レコード形
ツリーがデータベースのキーによるアクセスを与えてい
る。
米国特許第4480304号および同第4399504号は多プロセサ
に分布したデータベースシステムの部分でデータベース
レコードのような独立した資源のロック状態を維持する
ためのハッシュテーブルを用いる機構を示している。
米国特許第4698752号のデータベース管理システムでは
レコードがそれらの間の関係を表わす、動的に発生され
指定されたグラフを用いることによりレコード変更中ロ
ックアウトされる。しかしながらこれもロッキングは個
々のエンティティーについて行われる。
ロック形でないデータベース管理法も従来知られてい
る。例えば米国特許第4627019号は「バージョニング」
すなわちロックではなくデータの複数のコピーを維持す
ることによりデータベースアクセス制御を行う。そのよ
うな技術はコピー維持オーバーヘッド等の記憶上の要件
のために問題である。
種々の形の独立エンティティ(例えばレコード)ロッキ
ングを用いるシステム、上記のバージョニング技術を用
いるもの、または処理速度を上げるために前記のツリー
または有向グラフ形を用いるものを含む周知のデータベ
ース管理システムで「PC」形データ例えばPCDOSソフト
ウェアあるいはそれに等価なもので走行するコンピュー
タにより維持されるデータを有効に処理するものはな
い。
これらシステムにおけるデータ(以下「バイトストリー
ムファイル」と呼ぶ)は一般にレコードに構成されず
(すなわち予定の境界に整合されず)そして一つのアプ
リケーションからのアクセス要求は或る任意の様式で他
のアプリケーションによりアクセスされているデータに
重なることがある。プログラム実行による独立した境界
はプログラム毎に異なりあるいは同一プログラムであっ
ても実行によってさえも異なる。
共有(読取専用)と排他(読取/書込)ロックの両方を
可能とする(増大した同時的データアクセスを許すた
め)コンピュータシステムにおけるバイトストリームフ
ァイルの管理は特別の問題を有する。
例えばそのようなコンピュータシステムにおいて一つの
プログラムにつき他のプログラムが一つのファイルのバ
イト15〜25のロックを保持する間にそのファイルのバイ
ト10〜20のロックを要求することがありうる(典型的な
非レコード形システムではオーバラップが許される)。
排他ロックのみが可能であればそれらは重ならないから
多きな問題はない。試みられたロックのすぐ「隣接」す
るもののみをデータベース管理システムにより検査して
試みられたロックを許可すべきかどうかを決定する必要
がある。
しかしながら、共有ロックも許される(共有ロックは本
来重なりうる)とすれば、試みられた排他ロックに隣接
して始まるまたは終了するロックは必ずしもコンフリク
トを生じさせうるロックのみではない。例えば「大き
い」共用ロックは試みられた排他ロックの領域およびそ
の「隣接」するものをカバーすることがある。
この一般的な問題を描くための特定の例を次に述べる。
配列された、例えばスタートアドレスで配列された現在
するロックのリストにはアドレス107でスタートし、ア
ドレス134で終る1つの共用ロック、アドレス109でスタ
ートしアドレス114で終る第2共用ロックおよびアドレ
ス121でスタートし132で終る第3共用ロックがありう
る。アドレス117から120の範囲の排他ロックを得る場合
にはこの整列したリストの検索(新しいロック点から両
方の方向に)が114で終る共用ロック121でスタートする
共用ロックを見い出すことになるがこれは試みられたロ
ックを許すべきことである。しかしながら、107から134
までの共用ロックはその範囲に入る所望の排他ロックを
防止するべきである。
この問題を解決するために、存在するロックの少くとも
或る副範囲の大掛りな検索は、1次元的な配列でロック
情報が維持されるときにコンフリクトを生じさせないよ
うにするために必要である。
バイトストリームファイル管理を、(1)データレコー
ドのような独立したデータコンティティーをつくりマニ
ピュレートする必要なしに、(2)メモリ内データの複
数コピーをつくりマニピュレートする必要なしに(バー
ジョニングで必要)、そして(3)バイトストリームフ
ァイルデータを管理するために共用(読取専用)および
排他(読取/書込)ロックの使用を許すようにコンピュ
ータシステム内にコンフリクトが生じないように1次元
配列のロックリストの大掛りな検索を行う必要なしに行
うことが出来るようにすることが望ましい。
〔発明の概要および解決課題〕
本発明の目的はロックの試みがなされるときに記憶され
ている配列されたロックのリストの大掛りな検索を必要
としない、共用および排他ロックを利用するバイトスト
リームファイルの管理方法を提供することである。
本発明の他の目的は、使用されるデータベース管理技術
が3個の入力パラメータ、すなわち(1)保護されるべ
きデータのスタート位置、(2)保護されるべきデータ
のスパン(すなわち範囲)および(3)所望のロックの
形(共用か排他か)のみを必要とするようになった、重
なりうるファイルへのアクセスを管理するために複数の
ロックを用いるデータベース管理システムを提供するこ
とである。
本発明の他の目的はデータの複数コピーをつくり記憶す
る必要なくしかも大掛りなデータベース管理オーバヘッ
ドを用いる必要なく与えられたロックの試みを許可する
か拒否するための効率のよい決定が出来るようにロック
関連データを構成する方法を提供することである。
更に本発明の目的は本発明のデータベース管理技術の性
能を最大にする方法を提供することである。
少なくとも1のバイト・ストリーム・ファイルを含む共
有データ記憶資源の少なくとも一部への、コンピュータ
・システムにおけるアクセスを制御する方法であって、
そのシステムは複数のロックを使用するデータベース管
理手段を含み、上述した複数のロックの各々は前記共有
データ記憶資源内の連続範囲を囲み且つそれに関連する
1組のロック関連パラメータを有しており、共有データ
の完全性を保証し、以下のステップを含む方法が提供さ
れる。すなわち、 (a)複数のロックに関連し、且つ所与のロックにより
保護されたバイト・ストリーム・ファイル内の前記連続
範囲の開始位置を示す第1パラメータと、所与のロック
のスパンを示す第2パラメータと、既になされている又
はこれから試みようとしているロックが共有ロック(読
み取りのみ)又は排他的ロック(読み書き可能)かどう
かを示す第3パラメータとを有するロック関連パラメー
タの複数の組をツリー構造に組織化するステップと、 (b)試みられたロックに関連する前記ロック関連パラ
メータの組を、ツリー構造内に組織化されたロック関連
パラメータの複数の組の少なくとも一部分と比較するこ
とにより、前記データベース管理手段を介して、ロック
の試みを管理するステップ、である。
更に、本発明の一実施例によれば上記複数のロック関連
パラメータの2次元配列はカーテシァンツリーである。
カーテシァンツリーは試みられたロックを許可するかど
うかを高速且つ効率よく決定するための手段を与える。
カーテシァンツリーを用いる本発明の一実施例によれ
ば、このツリーの各ノードは順序をもつ一対のキーから
なり、第1のキーはロック範囲のスタートの、ファイル
内のオフセットである。第2のキーはそのロックの長さ
すなわちスパンである(または場合によっては長さ引く
1)。
更に本発明の他の実施例によれば、カーテシァンツリー
は夫々のロックに関連した3個のパラメータ、すなわち
(1)保護されるべきデータのスタート位置(第1キ
ー)、(2)保護されるべきデータのスパン(または範
囲)(第2キー)および(3)所望のロックのタイプ
(共用または排他)、を利用してダイナミックにつくら
れる。
本発明は共用および排他ロックを利用してバイトストリ
ームファイル管理を行う能力、重なる範囲を有するロッ
クを管理する能力およびコピーキーを有するロックを管
理する能力を特徴とする。本発明のこれらおよび他の目
的および特徴およびそれらを得る方法は添附する図面に
関連する以下の詳細な説明から当業者に明らかとなるも
のである。
〔実施例〕
本発明によればロック関連データ(ロックのスタートの
ファイル内のオフセットおよびそのロックの長さすなわ
ちスパン)は多くの従来のデータベース管理で用いられ
る1次元配列ではなく、2次元配列とされる。
そのような配列(データの2次元配列)はカーテシァン
ツリーを用いて達成出来る。カーテシァンツリーは、そ
のツリーの各ノードがキー値(例えばファイルオフセッ
ト)を含み、左の子が親より小さいあるいはそれに等し
いキー値を有し右の子が親より大きいキー値を有するよ
うに左右の子を選んだ点で従来の2進ツリーと同様であ
る。
カーテシァンツリーは1980年4月「Communication of t
he ACM,Vuillemin」社版の文献に詳述されている。
従来の2進ツリーのキー配列ルールーはツリーの構造を
部分的に決定するにすぎない。任意の3個の独立したキ
ーを与えると、第1図に示すようにその内の任意の1個
がルートとして選択される。従来の2進ツリーのアルゴ
リズムは一般にツリーの深さを最小としそしてアクセス
性能を改善する(「バランス」の概念)ために第1図の
ツリー構造の第2のもの(中間のもの)を維持しようと
する。
上記のようなカーテシァンツリーはツリーの構造を更に
決定するために第2のキーまたは次元を利用する。特
に、このツリーは親ノードの第2キーが常にその子の第
2キーより大きいか等しくなるように構成される。この
ようにカテーシァンツリーにおけるエントリは単一キー
ではなくキー対からなる。例えば対(5 2),(10
8),(15 6)を与えるとカテーシァンツリーは第2
図のように構成される。
第2図に示すように、第1図について述べた例とは異な
り、固定した一セットの配列ルールを用い(例えば第一
キーについて左から右に増加し第2キーについては下か
ら上に増加する)そしてこれらキーが固有のものであれ
ば、1つのツリー構造のみが可能となることは明らかで
ある。
第3A,3B,3Cおよび4図に関して詳述する新規なロック管
理方法は第1キーがロック範囲のスタートの、ファイル
内のオフセットとなるカーテシァンツリーを利用する。
第2キーはロックの長さすなわちスパンである(または
場合によっては長さ引く1)。
第3A,3B,3C図に示す例は本発明の動作を示すものであ
る。
例示のために、本発明により管理される領域は1000個の
別個にアドレス可能なバイト0−999を含むものと仮定
する。
本発明の好適な実施例によれば、各ロック(保持されあ
るいは試みられるロック)は「スターティング」バイト
(バイト0からはじまるバイト範囲内の第1バイトのオ
フセット)、保護される(または保護されるべき)連続
するバイトの数を示す長さ(またはスパン)およびロッ
クのタイプで限定されうる。
更に、また例として以下の5つの範囲がまずロックされ
る(すなわち、これらロックが上記のパラメータにより
適正に限定されておりそして許可されている)と仮定す
る。
ロック1−スパンが20バイトでありバイト75からスター
トする共用ロック。
ロック2−スパンが45バイトでありバイト85からスター
トする共用ロック。
ロック3−スパンが35バイトでバイト215からスタート
する排他ロック。
ロック4−スパンが150バイトでバイト360からスタート
する共用ロック。
ロック5−スパンが40バイトでバイト420からスタート
する共用ロック。
第3A図は上記ロック情報(ロック1〜5の)が構成され
ている本発明による使用に適したカーテシァンツリーを
示す。第3A図において角カッコ「<」,「>」で示すエ
ントリを有するソードが排他ロックを示す。通常のカッ
コで示すエントリは共用ロックである。
固有のキー(コピーキーを含む状態については後述す
る)を仮定すると第3A図に示すツリー構造を構成する一
群の固定ステップ(すなわち論理的2次元配列で各ロッ
クについての複数パラメータを配列する)は次の通りで
ある。
(a) 最大の第2キーをもつエントリをカーテシァン
ツリーのルートノードとする。
(b) 現ノードを規定する。始めは現ノードにルート
ノードを選択する。
(c) 残りのエントリ(各エントリは一つの与えられ
たロック関連する複数のパラメータである)を現ノード
の第1キーより小さい第1キーを有する第1エントリ群
と現ノードの第1キーより大きい第1キーを有する第2
エントリ群に分ける。第1エントリ群は現ノードの左に
サブツリーを形成し第2エントリ群は現ノードの右にサ
ブツリーを形成する(第3A図)。
(d) 前の段階から夫々のエントリ群について最大の
第2キーを有するエントリを選びそしてそれを現ノード
(これは親ノード)の左(第1エントリ群)ノードまた
は右(第2エントリ群)ノードとする。
(e) あるいは夫々の子ノードを新しい現ノードとし
そしてすべてのエントリがこのツリー内のノードとされ
てしまうまでこの区分けプロセス(段階c)をくり返
す。
キーの値が全体として固有のものでないときは上記の段
階(配列ルール)を僅かに変更する必要がある。上記の
例では一つの与えられたエントリが、その第1キーがそ
の左側の子の第1キーより大であり右の子の第1キーよ
り小さくなるようにこのツリーにそう入される。このエ
ントリの第2キーはその親の第2キーより小さく且つそ
のいずれの子の第2キーより大である。キーのコピーを
可能とするために、これらルールーは一つのエントリの
第1キーがその左の子の第1キーより大であるかあるい
は等しくなるようにそしてその第2キーがその親の第2
キーより小さいかあるいは等しく且つそのいずれの子の
第2キーより大きくあるいはそれに等しくなるように変
更される。
潜在的なツリーエントリに対し上記の方法を適用して得
られる構造を用いる本発明のロックの試みは2進ツリー
について用いられると同様のツリーウォーク(walk)を
含んでいる。各ノードにおいて、試みられたロックのオ
フセットがそのノード内に記憶されたオフセットと比較
される。試みられたロックのオフセットがノードのそれ
より小さいか等しい場合にはこのウォークが左の子で進
められ、他の場合には右の子で進められる。
これまでは上記の方法は通常の2進ツリーウォークにつ
いて用いられるものと同じである。本発明は各ノードに
おいて、試みられたロックによりカバーされるファイル
オフセットの範囲を更にそのノードが表わすロックによ
りカバーされる範囲と比較する点で従来のものとは異な
る。
この範囲比較の結果オーバーラップが検出されない場合
にはこのウォークは前述のように進められる。この場
合、ツリーの構造の意味するところを理解することが大
切である。現ノードの子のすべては親の長さ値より大き
くない長さ値を有する(そしてこれは孫、ひ孫等にくり
返し適用する)から、そして現ノードの左のすべての
子、孫等が現ノードのオフセットより大きくはないオフ
セットを有するから、任意の世代の左の子が現ノードの
エンディングオフセットより大きいエンディングオフセ
ットを有することはあり得ない。
更すように試みられたロックが現ノードの右に入るとす
れば、左のすべてのノードはコンフリクトしうるロック
として除去される。同様に、試みられたロックが現ノー
ドの左に入るのであれば、オーバラップのない事実と右
の子が親より大きいオフセットを有さなくてはならない
という事実は右のすべてのノードがコンフリクトしうる
ロックとして除去されることを意味する。
オーバラップが検出さない限り検索は検査されるべき子
がなくなるまで「デバイドアンドコンカー(divide and
conquer)」戦略を用いて下向きに進められる。
第3A図に示す例は第3B図に続く。第3B図においてツリー
のノードは301〜305で示されており、301がノード(360
150)に対応し、302がノード(85 45)に、303がノ
ード(420 40)に、304がノード(75 20)にそして30
5がノード<215 37>に対応する。
本発明の原理を更に説明するために、本発明のユーザが
オフセット150で始まり全長40バイト(すなわちキー対
「<150 40>」)について続くバイトシーケンスで新
しい排他ロックを得ようとしているものとする。前述の
説明によれば、まず新しいエントリとルートノード(第
3B図のノード301)との間にオーバラップがあるかどう
かを決定しなければならない。新しいエントリはオフセ
ット150ではじまりオフセット189で終るバイトシーケン
スに対応しそしてルートノード(ノード301)で示され
るシーケンスはオフセット360までスタートしないか
ら、これらの間には明らかにオーバラップはない。
次に、この新しいエントリの第1キーはルートノード30
1の第1キーと比較される。新しいエントリのキーは小
さいから左の分岐は第3B図のノード301から302に本発明
の方法をたどる。
この処理はノード302についてくり返され、これはルー
トノードであるごとくに扱われる。まず、オーバラップ
についてのチェックが行われる。第3B図において、ノー
ド302で示されるバイトシーケンスはオフセット85でス
タートしオフセット129で終り、明らかに新しいエント
リに重ならない。次に、新エントリの第1キー値はノー
ド302の第1キー値より大であり従って本発明の方法に
よればノード302の右の分岐が第3図の子ノード305に行
く。
最後にこの処理がノード305について行われる。ノード3
05で示される範囲はオフセット215でスタートし新エン
トリで示される範囲の終りをはずれている。新エントリ
の第1キー値がノード305の第1キー値より小さいとす
れば、ノード305ではなく左の分岐について試みが通常
なされることになる。しかしながら、ノード305には左
子ノードがないから、本発明の方法は検索を終了し、新
エントリ<150 40>は現存するロックとコンフリクト
しないことを確認する。
新エントリはここでそのツリーに新ノードとしてそう入
することが出来るのであり、カーテシァンツリーの構成
についての前記のルールに従う。
このそう入アクセスはコンフリクトについての検索につ
いて用いられるツリーウォークがコンフリクトの生じな
い限り常にそう入点またはその近辺を通ることによりよ
り効率よく行うことが出来る。本発明の一実施例によれ
ば、この情報はコンフリクト検索中記憶されて後のそう
入動作中に使用されうる。
図示の例では新ノードはノード302の右下でノード305の
左上に入らねばならない。第3C図はツリーにそう入され
た新しいエントリ、すなわちノード306を示す。
試みられたロックと現ノードとの間にオーバラップがあ
るときにはさらに複雑な状態となる。試みられたロック
または現ノードのロックが排他(共用の逆)であるとす
ると、本発明の方法はロックのコンフリクトを知らせて
終了する。第3C図についてこの状態の一例を次に述べ
る。前の例(第3C図)からのツリーを用いて(160 1
0)で示される共用ロックを得るための試みを考える。
ツリーウォークはノード302の右分岐が前にそう入され
たノード306の次となるまで前と同様に続く。この時点
で本発明は(160 10)で示される範囲(新しく試みら
れたロック)が<150 40>で示される範囲(ノード30
6)とオーバラップすることおよびこれら二つの範囲の
一方(ノード306についてのもの)が排他ロックに対応
することを決定する。このように、真のロックのコンフ
リクトが存在し、(160 10)の要求されたロックは許
可されず、従って対(160 10)はカーテシァンツリー
にそう入されない。
両方のロックが共用ロックであれば、本発明により処理
されねばならない以下の5つのサブケースが存在する。
1. 試みられたロックが現ノードのオフセットと範囲に
正確に整合する。この場合には試みられたロックが確か
に得られる(一つの範囲にまたがる一つの共用ロックは
その範囲内に排他ロックを存在させない)しそして殆ど
の論理的戦略は新しいロックを現存する同一のロックか
ら連鎖させるかあるいは現存するロック内のロックカウ
ントを単に増加させるかであるから、検索要求はそれ以
上進まない。ロックカウントは同一のオフセットと範囲
を有する2個以上の共用ロックの存在をこれらロックの
いずれかが解放されるとき本発明により記憶させる簡単
な方法である。
2. 試みられたロックは現ノードの範囲の適正な副範囲
である。この場合、ロックは確かに得られるが、新しい
ロックについてカーテシァンツリー内の適正なそう入点
を決定するために検索を続ける必要がある。
3. 試みられたロックは現ノードの範囲の左縁にまたが
る。この場合、検索は単に進められる。しかしながら本
発明の一実施例によれば、試みられるロックの範囲の現
ノードの範囲とオーバラップする部分は確かにロックさ
れうるから、このオーバラップする領域を排除するため
にロックの試みの範囲を狭くするとよい。これはツリー
の更に下側での他のオーバラップの検出の機会を減少さ
せることにより検索の性能を改善する。しかしながら予
め存在するロックが将来解放されそしてその関連する保
護の「傘」がなくなることがあるから新しいロックの全
長がツリーでのその位置の決定に用いられねばならない
ことは重要である。
4. 試みられるロックが現ノードの範囲の右縁にまたが
る。前のケースと同様にその範囲のオーバラップしない
部分を考えるために試みられたロックのオフセットを増
加し(コンフリクト検索だけのため)そしてその範囲を
減少させるとよい。
5. 試みられるロックが現ノードの範囲の両縁にまたが
る。現ノードの範囲内にコンフリクトするロックがない
ことは知られているから、問題は上記のケース3と4に
対応する2つのより小さい問題に分けることが出来る。
この新規な方法は現ノードの左側および右側に夫々1つ
の2つの検索を行うことにより進む。これら検索は更に
そのような分割を生じさせうるから、本発明のこの方法
は夫々の縁に1回づつ2回の検索を反復して行う。これ
ら副検索のいずれもコンフリクトを検出しないとすると
コンフリクトは存在しえない。この場合、ロックの正し
いそう入点は第1分割点の上にありそしてすでにそこに
至っている。本発明の一実施例ではそう入位置はすでに
記録されているから付加的な検索は不要である。
以上述べた方法を例示するための例を次に述べる。再び
第3C図において範囲(70 90)について共用ロック、す
なわち、オフセット70ではじまり、オフセット159で終
るバイトシーケンスについてのロックを得る試みを考え
てみる。
はじめに試みられるロックの範囲はルートノードの範囲
とオーバーラップしないことが決定され、通常の2進ツ
リーウォークのアルゴリズムがノード301からノード302
への左の分岐を選ぶ(70は360より小であるから)。
ノード302の検査によりその範囲が試みられたロックの
範囲とオーバーラップすることがわかる。事実、試みら
れたロックの範囲がノード302の範囲をその両側でまた
ぎ、そしていずれの範囲も排他ロックを表わさないとす
ると上記のサブケース5が選ばれる。すなわち本発明は
この問題を副範囲(70 15)についてのコンフリクトの
検索と副範囲(130 30)についてのコンフリクトの検
索の小さい問題に分割する。
第1副範囲(70 15)の第1キーはノード302の第1キ
ーより小さい(常にこの形の分割後の場合)、検索は左
のノード304に進む。検索アーギュメント、副範囲(70
15)は左側でノード304の範囲にオーバーラップし、
それ故上記サブケース3により本発明はこの副範囲を
(70 5)に狭めそしてこの新規な方法が続行する。し
かしながらノード304は子ノードを有せず、その副範囲
での検索がコンフリクトなしとして完了する。
次に、ノード304にもどり、コンフリクトについての検
索が副範囲(130,30)を検索アーギュメントとして用い
て続行される。この副範囲(必然的に)の第1キーはノ
ード304の第1キーより大きいから、検索はノード304の
右の子ノードすなわちノード306で続けられる。
検索副範囲(130 30)とノード306の範囲の比較にもと
づき検索副範囲の右縁がノード306の範囲の左縁とオー
バラップすることについて考慮される。ノード306が排
他ロックを表わすことがわかれば試みられるロックは否
定されねばならない。
第4図は前述の段階を要約するフローチャートである。
このフローチャートとその説明により当業者はコンピュ
ータシステムのデータベース管理能力を改善するために
本発明を(例えばコンピュータプログラムとして)用い
ることが出来る。
特に第4図は或るロック関連パラメータからどのように
してカーテシァンツリーをつくるか(すなわちパラメー
タの構成段階)およびいかにしてロックの試みを許すか
どうかを決定するためにこのツリーに沿って「ウォー
ク」する力(すなわちロックの試みを管理する段階)を
示すものである。
データベース管理システムが初期化される場合、ロック
が行われておらずそして現ノードポインタ(例えば現ノ
ード情報のアドレスを含むべきものとされるレジスタ)
が(空)カーテシァンツリーのルートをポイントするよ
うにセットされるものとする。この初期化段階は第4図
のブロック401で示してある。ツリーから初期化時に与
えられるとすれば、初期化時にツリーを与えておくので
はなくあたかも第4図に示す方法自体がツリーを構成し
たかのごとくに、この方法をロックの試みの処理に等し
く適用しうるものであることは当業者に明らかである。
ここでも、初期化において空のツリーを考えてみると、
第1のロックの試みに関連したパラメータはカーテシァ
ンツリーの前記のルートノードを構成するためにデータ
ベース管理システムに情報を与える。
本発明は複数のロックが記憶手段の少くとも1つの予め
定められた領域を管理するために用いられるものと仮定
する。各ロックはバイトストリームファイルに記憶手段
の一つの連続する範囲をまたぐ(保護する)ことを意味
する。
これらロック(試みられたまたは保持された)の夫々に
ついての複数のロック関連パラメータがまず定義され
る。前述のように、本発明の好適な実施例はファイルオ
フセットキー、スパンおよびロックのタイプ(共用か排
他か)を夫々のロック(試みられたあるいは保持され
た)について限定する。これらパラメータは予め限定し
うるしあるいは本発明を実施するために用いられるメカ
ニズム(例えばハードウェア、ソフトウェアまたはファ
ーム)に対するダイナミックにつくられる入力でありう
る。
第4図の第1決定ブロック402はツリーエントリ(また
はサブツリーエントリ)があるかどうかを決定する。存
在しなければ試みられたロックに関連するロックパラメ
ータが第4図のブロック403で示されるようにそのツリ
ーの適正な位置に置かれる。
第1のロックの試みについてのこの適正な位置はブロッ
ク401で予めセットされたツリーのルートに対する現ノ
ードのポインタである。後述するように第4図の段階に
よるこの方法の動作は試みられた、処理されているロッ
ク(第1またはそれ以降の試みられたロック)をそう入
するための適正なツリー位置を指向する現ノードポイン
タで終了する。
この検索法の出力は、ツリー構造へのロック情報のそう
入がこの方法について満足する終了を表わすからブロッ
ク403の左に示されている。
この検索法の主ループ、すなわち検索される(ブロック
402に続く)べきツリーの残り部分のノード内の第4図
のブロック404は要求されたロックが現ノードポインタ
により指向されるノードの範囲(例えばブロック402か
ら404への第1パスにおけるツリーのルート)に重なる
かどうかについての決定を行う。
オーバーラップがなければブロック404の左へのパスが
採用され、そこで相対キー値により右の子ノードに進む
べきか左の子ノードに進むべきかが決定される。特にブ
ロック405で要求されたロックのスターティングオフセ
ット(第1キー値)が現ノードにより表わされるスター
ティングオフセット(第1キー値)より小さいかあるい
は等しいかを決定する。もしイエスであれば、現ノード
のポインタが左の子ノードのアドレスにセットされ(ブ
ロック406)、ノーであれば現ノードのポインタが右の
子ノードのアドレスにセットされる(ブロック407)。
ブロック406または407からこの方法はブロック402で特
定される決定をなすためにもどされ(ループ「2」を介
して)る。左の子ノード(ブロック406を出た後)また
は右の子ノード(ブロック407を出た後)がない場合に
は現ノードのポインタに置かれたアドレスは無く、そし
てこのループは終了(ブロック403とその左側の出口を
介して)する。新しいロックがカーテシァンツリーをつ
くるために本方法によりツリーにそう入しうる。
しかしながら、ブロック404でオーバーラップが検出さ
れると、ブロック408において、要求されたロックまた
は現ノードのポインタにより指定されたロックが排他ロ
ックであるかどうかについての決定を行う。この決定が
肯定であればコンフリクトが存在(ブロック409に示さ
れるように)し、そしてこのループは要求されたロック
が許可されえないことの指示(ブロック410)で終了す
る。
排他ロックがブロック408で行われた検査で示されない
場合にはブロック411において前記の5つのケースのど
れが存在するかどうかについての決定がなされる。すな
わち、オーバーラップのタイプが決定されそして本方法
はオーバーラップタイプにもとづき進められる。
ブロック412〜416はブロック411から出る5本の考えら
れるパスについての異なった作用を表わしている。
ブロック412は要求されたロックが現ノードの範囲と正
確に一致することが決定された場合である。この場合、
検索は、要求されたロックは許可されるから終了する
(現ノードのポインタを0にセットすることにより)。
前述したようにコピーロックがツリーにそう入出来、ま
たは好適には「ブックキーピング」エントリがコピーロ
ックのトラックを維持するために行われうる。
ブロック413は、要求されたロックが現ノードの範囲内
と決定される場合である。この場合、検索は、そのロッ
クが許容されうるから終了(現ノードのポインタを0に
セットすることにより)する。更に、この場合には要求
されたロックを記録するには「ブックキーピング」エン
トリは不要である。要求されたロックはツリーの適正な
位置に実際にそう入されねばらならい。第4図はブロッ
ク403にループ「Q」を入れることによりこれを行うも
のを示しており、その後にこのループは終了する。
ブロック414は要求ロック(A B)について含範囲
(A C)がつくられ(C<B)る場合であり、A+C
は現ノードの左縁のバイトのアドレスである。この場
合、現ノードのポインタは現ノードの左の子ノードにセ
ット(ブロック417)されるがこの検索の残りの部分に
ついては要求ロックの範囲は短くなる。この検索は第4
図に示すように「Z」にもどすことで連続する。
ブロック415はブロック414の逆である。ブロック415は
要求ロック(A B)について副範囲(D E)がつく
られる(D>A)およびE<B)場合であり、Dは現ノ
ードの右縁のバイトのアドレスであり、D+EはA+B
に等しい(すなわち、A+Bと同一のアドレスすなわち
要求ロックの範囲の右縁が得られる)。この場合、現ノ
ードポインタは現ノードの右の子ノードにセット(ブロ
ック418)されるが検索の残りの部分については要求ロ
ックの範囲とオフセットは現ノードで表わされる範囲の
右(そして元の要求ロックが終了するところ)でスター
トするように変更される。この検索は第4図のように
「Z」にもどることにより連続する。
最後にブロック416は要求ロックが現ノードの範囲の両
端で重なる場合である。この場合、要求ロック(A
B)について両方の副範囲((A C)と(D E))
がつくられそしてブロック419で示すように第4図の方
法は夫々の副範囲について反復する(すわちこの方法が
2度実行される)。
本発明の一実施例によれば、第1回目の実行について現
ノードポインタの初期値として現ノードの左の子ノード
を用いそして要求ロックの範囲として現ノードの左に入
る要求ロック範囲の部分を用いる。
第2の実行については現ノードの右の子ノードを現ノー
ドポインタの初期値として用い、要求ロックの範囲とし
て要求ロック範囲の、現ノードの右に入る部分を用い
る。
これら検索のいずれかがコンフリクトを決定(ブロック
408で)すると、コンフリクトが存在する。そうでなけ
ればコンフリクトは存在せず、要求ロックは許可され
る。
性能については、一般にカテーシァンツリーの性能が通
常の2進ツリーと同じであることは当業者には自明であ
る。このツリーがバランスしていれば検索のコストはほ
ゞlog Nに比例(Nはノードの数)し、そして最悪でも
(ツリーが「ヴァイン(vine)」のとき)ほゞNに比例
する。また、バランスはツリーの構造を選ぶための主因
子ではないから(用いられる方法が一般に「ベスト」バ
ランスツリーを選ぶように構成される従来の2進ツリー
と異なる)、バランスが理想的でないとするのが合理的
である。
しかしながら、通常の場合にはアプリケーションがデー
タについてある種の固定長のレコード構造を必要とする
場合には同一長の多数のロックがしばしば含まれること
は明らかである。この場合には多くのノードの第1のキ
ーの値は同一であり、カーテシァンツリーのルールは構
造を完全には決定しない。この場合、等長のノードのバ
ランスを改善する試みに対し他の戦略を与えるとよい。
一つの可能性は通常の2進ツリーのバランシング戦略を
利用することである。他の可能性はノードのファイルオ
フセットノードにもとづき2進基数ツリーとして等長の
ノードのサブツリーを構成することである(または結果
としての値の分布を改善するために作用するとすればオ
フセット値ビットの置換)。この単純な戦略は多くの場
合にサブツリーの合理的な良好なバランスをつくるが適
正な順序が文脈依存形でありそれ故そう入と削除が高価
となるという問題を有する。しかしながら、付加的な構
造的情報を与えそして一般にバランスの可能性を向上す
るために他の重み因子(逆ビットファイルオフセットの
値のようなもの)を使用しうる。
性能に関する他の問題はページングである。ツリーのノ
ードが仮想記憶手段に記憶される場合には、与えられた
検索パスに沿った各ノードが異なる記憶ページにありそ
してページングがそのため性能因子として計算を左右す
る可能性がある。ページングを最小とするための戦略
は、ツリーノードの未使用位置自体をある種のツリーに
構成することが出来るという事実を利用する。一つの可
能性は未使用位置をそれらのアドレスまたはインデクス
にもとづき2進ツリーとして構成することである。その
場合、1つのノードが割り振られたときこの未使用位置
のツリーがそう入点の親に最も近い位置を見い出すため
の検索が行われる。一般にこの検索は親を含むページ内
に使用可能な位置が見つかると直ちに満足される。
以上、夫々が記憶装置の連続する領域をまたぐ複数のロ
ックを利用して記憶装置の少くとも1つの予定の領域を
管理する方法を述べた。本発明は前記の目的のすべてを
満すものである。
当業者には、以上の説明並びに例が、例示と説明のみの
ためのものであることは明らかである。これまでの説明
はその形に本発明を限定しようとするものではない。明
らかに多くの変更または変形が本発明の範囲を逸脱する
ことなく上記の説明から可能である。
【図面の簡単な説明】
第1図は同一の情報を含む一群の1次元的ツリー構造を
示しそして特にバランスしたツリーの概念を例示する
図、第2図は一定の配列ルールを用いてつくられたカー
テシァンツリーであって、複数のロックを管理するため
に本発明により使用するに適したツリーを示す図、第3A
図、第3B図及び第3C図は夫々のノードにロックデータを
含むカーテシァンツリーを示すものであって、そのよう
なカーテシァンツリーのつくり方およびロックの試みの
許可または不許可を決定するために本発明によりそのよ
うなツリーの使用法を説明するための図、第4図は本発
明の方法の段階を詳細に示すフローチャートであり、ロ
ック関連パラメータからカーテシァンツリーをつくる方
法(すなわちパラメータを構成する段階)およびロック
の試みを許可するか不許可とするかを決定するためにツ
リーを「ウォーク」する方法(すなわちロックの試みを
管理する段階)を示す図である。

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】少なくとも1のバイト・ストリーム・ファ
    イルを含む共有データ記憶資源の少なくとも一部への、
    コンピュータ・システムにおけるアクセスを制御する方
    法であって、 前記システムは複数のロックを使用するデータベース管
    理手段を含み、 前記複数のロックの各々は前記共有データ記憶資源内の
    連続範囲を囲み且つそれに関連する1組のロック関連パ
    ラメータを有しており、共有データの完全性を保証し、 (a)前記複数のロックに関連し、且つ所与のロックに
    より保護されたバイト・ストリーム・ファイル内の前記
    連続範囲の開始位置を示す第1パラメータと、所与のロ
    ックのスパンを示す第2パラメータと、既になされてい
    る又はこれから試みようとしているロックが共有ロック
    (読み取りのみ)又は排他的ロック(読み書き可能)か
    どうかを示す第3パラメータとを有する前記ロック関連
    パラメータの複数の組をツリー構造に組織化するステッ
    プと、 (b)試みられたロックに関連する前記ロック関連パラ
    メータの組を、前記ツリー構造内に組織化された前記ロ
    ック関連パラメータの複数の組の少なくとも一部分と比
    較することにより、前記データベース管理手段を介し
    て、ロックの試みを管理するステップと を含むアクセス制御方法。
  2. 【請求項2】前記ステップ(b)が、 前記ロック関連パラメータの複数の組が組織化される前
    に、前記第1パラメータを表す第1キーと、前記第2パ
    ラメータを表す第2キーとを、前記複数のロックの各々
    に対して有する1組の順列対を規定するステップを さらに有する請求項1記載のアクセス制御方法。
  3. 【請求項3】1組の順列対を規定する前記ステップは、
    固有の順列対に関連し、 (a)前記順列対のどれが最も大きい第2キーを有して
    いるかを判定するステップと、 (b)前記最も大きい第2キーを有している前記順列対
    を、カーテシャン・ツリーのルート・ノードとして指定
    するステップと、 (c)前記ルート・ノードを示し、前記データベース管
    理手段により維持される現在ノード・アドレス・ポイン
    タをセットするステップと、 (d)前記現在ノード・ポインタにより示されるノード
    の第1キーより小さい第1キーを有する順列対の第1の
    組と、前記現在ノード・ポインタにより示されるノード
    の第1キーより大きい第1キーを有する順列対の第2の
    組とに、残りの前記順列対を区分するステップと、 (e)ステップ(d)において生成された第1及び第2
    の組の各々から、どの順列対が最も大きい第2キーを有
    するかを判定するステップと、 (f)前記順列対の第1の組内の最も大きい第2キーを
    有する、ステップ(e)において判定された順列対を、
    前記現在ノード・ポインタにより示されたノードの左の
    子ノードとして指定するステップと、 (g)前記順列対の第2の組内の最も大きい第2キーを
    有する、ステップ(e)において判定された順列対を、
    前記現在ノード・ポインタにより示されたノードの右の
    子ノードとして指定するステップと、 (h)指定された右の子ノード及び左の子ノードを示す
    ように、前記現在ノード・ポインタを交互にセットし、
    全ての前記順列対が前記カーテシャン・ツリーのノード
    として指定されるまで、ステップ(d)から(h)を繰
    り返すステップと を含む請求項2記載のアクセス制御方法。
  4. 【請求項4】前記ロックの試みを管理するステップ(請
    求項1における(b))が、 (a)前記データベース管理手段に、所与の試みられた
    ロックに関連する前記ロック関連パラメータの組を入力
    するステップと、 (b)前記現在ノード・ポインタを前記ルート・ノード
    を指すように初期化するステップと、 (c)ルート・ノードが前記ツリーに先に挿入されたも
    のかどうかを判定するステップと、 (d)先行するルート・ノードが存在しない場合、前記
    試みられたロックを、前記ツリーに前記ルート・ノード
    として挿入するステップと をさらに含む請求項3記載のアクセス制御方法。
  5. 【請求項5】前記ロックの試みを管理するステップ(請
    求項1における(b))が、 (a)ルート・ノードが前記ツリー内に存在する時は、
    前記試みられたロックと前記現在ノード・ポインタによ
    り示されたノードの間にオーバーラップが存在するかど
    うか判定するステップと、 (b)前記オーバーラップが存在する時は、前記試みら
    れたロック、又は前記現在ノードにより表されたロック
    のいずれかが排他的であるかを判断するステップと、 (c)前記試みられたロック、又は前記現在ノードによ
    り表されたロックのいずれかが排他的である場合には、
    コンフリクトを知らせるステップと をさらに含む請求項4記載のアクセス制御方法。
  6. 【請求項6】前記ロックの試みを管理するステップ(請
    求項1における(b))が、 (a)前記試みられているロック及び前記現在ノードに
    より表されているロックに関連する第1及び第2パラメ
    ータの値に依存して、前記現在ノードの左の子ノード、
    又は右の子ノードのいづれに前記現在ノード・ポインタ
    をセットするかを判断するステップと、 (b)前記ステップ(a)(本請求項における(a))
    により判断された子ノードのアドレスに、前記現在ノー
    ド・ポインタをセットするステップと をさらに含む請求項5記載のアクセス制御方法。
  7. 【請求項7】前記ロックの試みを管理するステップ(請
    求項1における(b))が、 前記試みられているロック及び前記現在ノードにより表
    されているロックの双方が共用ロックである時は、前記
    試みられているロックに関連する前記第1及び第2パラ
    メータが、前記現在ノードにより表されているロックに
    関連する第1及び第2パラメータに等しいかどうかを判
    定するステップをさらに含む請求項6記載のアクセス制
    御方法。
  8. 【請求項8】前記ロックの試みを管理するステップ(請
    求項1における(b))が、 前記試みられたロックが前記現在ノードにより表されて
    いるロックの範囲と重なり合うかどうかを判定するステ
    ップをさらに含む請求項7記載のアクセス制御方法。
  9. 【請求項9】少なくとも1のバイト・ストリーム・ファ
    イルを含む記憶手段の少なくとも1の予め規定された部
    分を、複数のロックを用いて管理する方法であって、 前記複数のロックの各々は記憶手段の連続領域を囲み、 (a)前記ロックの各々に対する、複数のロック関連パ
    ラメータを規定するステップと、 (b)各ロックに対する前記複数のパラメータをツリー
    構造に組織化するステップと、 (c)試みられたロックに関連する前記複数のロック関
    連パラメータを、前記ツリー構造に組織化された前記複
    数のパラメータの少なくとも一部分と比較することによ
    り、ロックの試みを管理するステップと を含む記憶手段管理方法。
  10. 【請求項10】前記複数のロック関連パラメータのツリ
    ー構造がカーテシャン・ツリーである請求項9記載の記
    憶手段管理方法。
  11. 【請求項11】前記カーテシャン・ツリーの各ノード
    が、第1キーがロック範囲の開始を示す、前記バイト・
    ストリーム・ファイル内のオフセットであり、第2キー
    がロックのスパンである、キーの順列対からなる請求項
    10記載の記憶手段管理方法。
JP2333433A 1990-01-22 1990-11-29 アクセス制御方法および記憶手段管理方法 Expired - Lifetime JPH0687228B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US46802390A 1990-01-22 1990-01-22
US468023 1990-01-22

Publications (2)

Publication Number Publication Date
JPH03225538A JPH03225538A (ja) 1991-10-04
JPH0687228B2 true JPH0687228B2 (ja) 1994-11-02

Family

ID=23858129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2333433A Expired - Lifetime JPH0687228B2 (ja) 1990-01-22 1990-11-29 アクセス制御方法および記憶手段管理方法

Country Status (2)

Country Link
EP (1) EP0438958A3 (ja)
JP (1) JPH0687228B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860003A (en) * 1997-02-28 1999-01-12 Mti Technology, Inc. I/O controller software with each I/O command having a plurality of nets, each with a group of threads
DE10148007A1 (de) * 2001-09-28 2003-04-24 Siemens Ag Verfahren zur Ressourcenzugriffskoordinierung in einem Datenverarbeitungssystem, Datenverarbeitungssystem und Computerprogramm
US7197585B2 (en) 2002-09-30 2007-03-27 International Business Machines Corporation Method and apparatus for managing the execution of a broadcast instruction on a guest processor
JP5996441B2 (ja) * 2013-01-08 2016-09-21 株式会社東芝 データベース装置
CN111373389B (zh) * 2017-11-20 2023-11-17 华为技术有限公司 数据存储系统以及用于提供数据存储系统的方法
CN112527196B (zh) * 2020-12-07 2023-02-14 成都佰维存储科技有限公司 Cache读写方法、装置、计算机可读存储介质及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0367342A (ja) * 1989-08-04 1991-03-22 Nec Corp オペレーテイングシステムのフアイルアクセス管理方式

Also Published As

Publication number Publication date
EP0438958A3 (en) 1992-12-30
JPH03225538A (ja) 1991-10-04
EP0438958A2 (en) 1991-07-31

Similar Documents

Publication Publication Date Title
Schreiber et al. Optimal multi-way number partitioning
US7103588B2 (en) Range-clustered tables in a database management system
KR101153064B1 (ko) 데이터베이스에 대한 안전한 액세스를 용이하게 하는 컴퓨터로 구현된 시스템, 데이터 액세스 방법, 안전한 액세스를 용이하게 하는 방법, 및 컴퓨터 판독가능 저장 매체
KR101153152B1 (ko) 강화된 보안 모델을 제공하는 시스템 및 방법
US11449507B2 (en) Database engine
Bender et al. Cache-oblivious B-trees
US5454101A (en) Data storage system with set lists which contain elements associated with parents for defining a logical hierarchy and general record pointers identifying specific data sets
KR101183432B1 (ko) 다수의 필드를 갖는 데이터를 안전하게 하기 위한 방법,시스템 및 컴퓨터-액세스가능 매체
US7325017B2 (en) Method of implementation of data storage quota
JPH04229372A (ja) メモリ空間再使用管理方法及びシステム
US8606791B2 (en) Concurrently accessed hash table
US20130024909A1 (en) Access control program, system, and method
JP5807640B2 (ja) アクセス権可否生成装置、アクセス権可否生成方法、プログラム、及び、アクセス制御システム
EP0433882A2 (en) Accelerated deadlock detection in congested data transactions
JPH11143755A (ja) 階層構成情報のコピーおよび共有方法
JPH0766360B2 (ja) 入出力装置の再構成管理システム及び方法並びに入出力装置に対するアクセスシリアル化方法
US7958097B1 (en) Method and system for implementation of data storage quota
Willard Maintaining dense sequential files in a dynamic environment
JPH0687228B2 (ja) アクセス制御方法および記憶手段管理方法
JP4743737B2 (ja) 参照カウントされたアイテムを高速参照するためのシステムおよび方法
Needham et al. The CAP filing system
Wang et al. The concurrent learned indexes for multicore data storage
US11256681B2 (en) Method and apparatus for controlling access to trie data structure
JP2000090115A (ja) インデクス作成方法および検索方法
KR100349667B1 (ko) 고차원 색인구조의 동시성 제어방법