JP2003271436A - データ処理方法、データ処理装置およびデータ処理プログラム - Google Patents

データ処理方法、データ処理装置およびデータ処理プログラム

Info

Publication number
JP2003271436A
JP2003271436A JP2002073540A JP2002073540A JP2003271436A JP 2003271436 A JP2003271436 A JP 2003271436A JP 2002073540 A JP2002073540 A JP 2002073540A JP 2002073540 A JP2002073540 A JP 2002073540A JP 2003271436 A JP2003271436 A JP 2003271436A
Authority
JP
Japan
Prior art keywords
lock
pointer
processing
page
object group
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
JP2002073540A
Other languages
English (en)
Other versions
JP4139613B2 (ja
Inventor
Nobuyuki Yamashita
信之 山下
Yukio Nakano
幸生 中野
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002073540A priority Critical patent/JP4139613B2/ja
Priority to US10/152,439 priority patent/US20030177131A1/en
Publication of JP2003271436A publication Critical patent/JP2003271436A/ja
Priority to US12/192,947 priority patent/US7818749B2/en
Application granted granted Critical
Publication of JP4139613B2 publication Critical patent/JP4139613B2/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

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)

Abstract

(57)【要約】 (修正有) 【課題】 ポインタにより複数のオブジェクトが関連づ
けられるデータ構造を持ち、オブジェクトの参照、更
新、挿入および削除を行なう処理が複数並行して動作す
るシステムにおいて、並列実行性を高くし、格納効率ア
クセス効率を向上させる。 【解決手段】 参照、更新および挿入処理において、ポ
インタを辿ってのオブジェクト間の移動に際し、移動前
のオブジェクトに対するロックを解除した後に、移動後
のオブジェクトに対するロックを設定する。この際、処
理の始めにオブジェクトグループに対しISモード(参
照処理の場合)またはIXモード(更新および挿入処理
の場合)を設定し、処理完了時にロックを解除する。ま
た、削除処理において、削除対象へのポインタを切り離
し、あるいは付け替えた後、オブジェクトグループに対
してロックを取得している全処理が完了した後に、削除
対象オブジェクトの領域を解放する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ポインタにより複
数のオブジェクトが関連づけられるデータ構造を持ち、
オブジェクトの参照、更新、挿入および削除を行なう処
理が複数並行して動作するシステムのデータ処理に関す
る。
【0002】
【従来の技術】(従来技術1)本発明に関するインデッ
クスにより高速にデータにアクセスする機能を持ったデ
ータ管理システムは基本的なデータへのアクセス方法と
して次の4つの機能を提供するものとする; (1)参照機能:指定したキー値に関連するデータの参
照 (2)挿入機能:指定したキー値およびそれに関連する
指定したデータの挿入 (3)削除機能:指定したキー値およびそれに関連する
データの削除 (4)更新機能:指定したキー値に関連するデータを指
定したデータへの更新 これらの機能は、複数並列して処理要求されるものとす
る。以下、それぞれの機能を実現する処理方法を参照処
理、挿入処理、削除処理そして更新処理と呼ぶものとす
る。
【0003】これらの機能を実現する従来技術を図1お
よび図2を用いて説明する。図1、101にデータ構造
の一例を示す。3つのオブジェクトA、BおよびCから
構成されるオブジェクトグループTを示す。オブジェク
トはデータの単位であり、領域の確保および解放はオブ
ジェクト単位で行なわれるものとする。またひとつのデ
ータはひとつのオブジェクトに格納されるものとする。
【0004】オブジェクトBにはキー値10とそれに関
連するデータが格納されているものとする。同様にオブ
ジェクトCにはキー値20とそれに関連するデータが格
納されているものとする。オブジェクトAには、オブジ
ェクトBが保持するキー(すなわちキー値10)とオブ
ジェクトBの格納位置情報(以下、ポインタと呼ぶ)お
よびオブジェクトCが保持するキー(すなわちキー値2
0)とオブジェクトCのポインタが格納されている。
【0005】ここで、前記の4機能の実現方法について
説明する。以上の機能を複数の処理が並列実行すること
を可能とするため、ロックの設定・解除が必要となる。
ロックについては例えば、「Gray, J., Reuter, A., TR
ANSACTION PROCESSING:CONCEPTS AND TECHNIQUES, Morg
an Kaufmann Publishers, Inc., 1993, p449-484」に実
現方法が述べられている。ここでは前記文献にある、
S、X、IS、IX各モードのロックを利用する。Sモ
ードのロックはSおよびISモードのロックと並列実行
可能であり、Xモードはすべてのモードのロックと並列
実行はできず、ISモードのロックはS、ISおよびI
Xモードのロックと並列実行可能であり、IXモードの
ロックはISおよびIXモードのロックと並列実行可能
である。ロック設定の方針は、参照処理の場合はオブジ
ェクトグループTにISモードのロックを、挿入、削除
および更新処理の場合はオブジェクトグループTにIX
モードのロックを設定し、その後アクセスするオブジェ
クトに対し、参照する場合はSモード、更新する(可能
性がある)場合はXモードでロックを設定するといった
ように階層的にロックを設定するものである。即ち、オ
ブジェクトグループに対してロックを設定した後、特定
のオブジェクトにロックを設定する。
【0006】オブジェクトグループに対しロックを設定
する場合のリソース名称は、各処理が共通して知ってい
る名称を指定するものとする。また、オブジェクトに対
しロックを設定する場合、オブジェクトの格納位置に対
応するリソース名称(リソース名称をオブジェクトが格
納されている位置情報、例えば、ポインタの値とする)
を指定するものとする。つまり、格納位置がわかればオ
ブジェクトにロックを設定可能である。また、オブジェ
クトグループ内の基点となるオブジェクト(図1ではオ
ブジェクトA)の格納位置はすべての処理が知ってお
り、かつ格納位置が移動したりしないものとする。
【0007】各処理のタイムチャートを図2に示す。タ
イムチャートにおける時間は左から右方向に流れるもの
とする。両端が黒丸で示される線分は、線分の左側に示
されるオブジェクトにロックを設定している期間を表
し、線分の上にロックのモードを示し、線分の下に処理
を示す。両端が白丸で示される線分は、線分の左側に示
されるオブジェクトに対し(ロックを設定せずに)アク
セスを行なっていることを表し、線分の下に処理を示
す。図2(a)は参照処理のフローチャートを示す。こ
こでは、キー値が10のオブジェクトを参照する例を示
している。図2(b)は挿入処理のフローチャートを示
す。ここでは、キー値が30のオブジェクトをグループ
Tに挿入する例を示している。図2(c)は削除処理の
フローチャートを示す。ここでは、キー値が20のオブ
ジェクトを削除する例を示している。図2(d)は更新
処理のフローチャートを示す。ここでは、キー値が10
のオブジェクトを更新する例を示している。
【0008】並列処理での状況を示すために、仮にキー
値30の挿入処理と、キー値20の削除処理が、ほぼ同
時に動作している状況での場合について説明する。挿入
処理202は、まずオブジェクトグループTに対し、I
Xモードでロックを設定する。そして新規のデータを格
納するためのオブジェクト領域を確保(オブジェクトD
とする)して、その領域にキー値30および関連するデ
ータを設定する。一方、削除処理203も、同様にオブ
ジェクトグループTに対し、IXモードでロックを設定
するが、このロックは挿入処理におけるIXと競合して
も並列実行可能であり、いずれかが待たされることはな
い。次は、挿入処理202、削除処理203ともにオブ
ジェクトAに対してXモードのロックを設定する処理で
あり、先行してロック設定した処理がロックを解除する
まで他方は待たされることになる。
【0009】まず、削除処理203が挿入処理202に
先立ってロックの設定に成功した場合について説明す
る。挿入処理202は削除処理203がオブジェクトA
のロックを解除するまで待たされることになる。削除処
理203はオブジェクトAをアクセスしてキー値20に
対応するオブジェクトBへのポインタを取得して、オブ
ジェクトCに対しXモードでロックを設定し、オブジェ
クトA内のキー値20およびオブジェクトCへのポイン
タを削除(以下、ポインタの切り離しと呼ぶ)して、オ
ブジェクトAに対するロックを解除して(この時点で挿
入処理202の待ちは解除される)、オブジェクトCを
格納していたオブジェクト領域を解放し、オブジェクト
Cのロックを解除し、最後にオブジェクトグループTの
ロックを解除する。この状態を図1の102に示す。
【0010】削除処理203によるオブジェクトAのロ
ックの解除を受けて、挿入処理202はオブジェクトA
へのロックの設定に成功する。挿入処理202では、オ
ブジェクトAにアクセスして、オブジェクトAにキー値
30とオブジェクトDの格納位置を設定し、オブジェク
トAに設定したロックを解除し、オブジェクトグループ
Tに設定したロックを解除する。この状態を図1、10
4に示す。
【0011】一方、挿入処理202が削除処理203に
先立ってロックの設定に成功した場合は、削除処理20
3は挿入処理202がオブジェクトAのロックを解除す
るまで待たされることになる。挿入処理202は前記同
様に処理を行い、図1、103の状態となる。その後、
削除処理203が実行され、図1、104に示す状態と
なる。
【0012】参照処理(キー値10)については図2、2
01に、更新処理(キー値10)については図2、20
4に示す。参照処理201や更新処理204でオブジェ
クトAに対するロックを解除する前にオブジェクトBの
ロックを設定しているのは、並列してオブジェクトBの
削除処理が動作していた場合に、誤動作を防止するため
である。つまり、仮に、オブジェクトAに対するロック
を解除した後にオブジェクトBのロックを設定するよう
になっていると、その間に削除処理によってオブジェク
トBの領域解放が可能であり、さらにこの解放領域が別
用途に再割当てされて設定されたデータをオブジェクト
Bのデータと見てしまい誤動作する可能性がある。
【0013】また、より平易な方法として、参照処理の
場合はオブジェクトグループTにSモードのロックを、
挿入、削除および更新処理の場合はオブジェクトグルー
プTにXモードのロックを設定するという方法もある。
この方法では参照処理同士以外は、並列処理実行はでき
ないため、上記の例より更にディスクやプロセッサとい
った資源を有効に活用できず、スループットおよびレス
ポンスタイムが低くなる。
【0014】このように、従来技術1では、オブジェク
トAに対してロックをかけた状態でオブジェクトBにも
ロックをかけるなど同時に2つのオブジェクトにかけ
る。このことによりオブジェクトの削除処理で削除した
オブジェクトの領域を解放することが出来るという利点
があるが、並列実行性能がやや低いという特性がある。
【0015】(従来技術2)DB管理システムにおけ
る、Bツリーインデクスは、従来技術1を拡張したデー
タ構造になっている。図7、701にその一例として、
7つのページ(従来技術1のオブジェクトに相当)から
なる3段のBツリーインデクスを示す。図7、701の
下方に位置するページP4、P5、P6およびP7はリ
ーフページと呼ばれ、それぞれ1個以上のキー(ページ
内の下方に記した値。例えばページP6ではキー値50
およびキー値70)とそれに対応するデータの格納位置
情報の組、右側のページのポインタ(一番右側のページ
P7は除く)、ページ内MAXキー値(リーフページ内
の右上に記した値。ページ内に格納されているデータが
持つ最大のキー値。例えばページP4ではキー値20が
ページ内Maxキー値である)が格納されている。各リ
ーフページは格納を担当するキーの範囲が設定されてお
り、該当ページおよびその左側に位置するページのペー
ジ内Maxキー値によって示される。例えばページP5
が格納を担当するキーの範囲は、ページP5の左側のペ
ージP4のページ内Maxキー値20より大きく、ペー
ジP5のページ内Maxキー値40以下のキーである。
同様にページP6、P7が担当するキーの範囲はそれぞ
れ40より大きく70以下のキー、および70より大き
いキーである。左側に位置するページがないページP4
は、ページ内Maxキー値以下(20以下)のキーを担
当する。
【0016】リーフページの上方には上位ページ(図
7,701のページP1、ページP2およびページP
3、ノードとも呼ばれる)と呼ばれるページが配置され
る。上位ページには、1個以上の直下のページへのポイ
ンタおよびキー値の組、(存在すれば)右側のページへ
のポインタが格納される。ここでのキー値は組になって
いるポインタで指されるページのページ内Maxキー値
と一致する。特にページP1はルートページと呼ばれ
る。あるキー値が格納されているリーフページをサーチ
するためには、ルートページからアクセスして目的のキ
ー値以上の最小のキー値と組になるポインタを辿ってい
けばよい。領域の確保はページ単位で行なわれる。
【0017】ここで、キー値20〜40の範囲のキー値
を指定した削除処理について図8、801を用いて説明
する。まずBツリーインデクス全体Tに対し、IXモー
ドのロックを設定して、ルートページP1に対し、Sモ
ードでロックを設定して、指定範囲の下限であるキー値
20以上であってページP1内の最小のキー値であるキ
ー値40と組になっているページP2へのポインタを取
得して、ページP1のロックを解除する。ページP2に
対しSモードでロックを設定し、同様にキー値20以上
であってページP2内の最小のキー値であるキー値20
と組になっているページP4へのポインタを取得して、
ページP2のロックを解除する。そしてページP4に対
しXモードでロックを設定し、ページP4内の削除対象
であるキー値20〜40の範囲にあるキー値すべて削除
する。
【0018】このときページP4には、キー値20しか
存在しないため、ページ内にキー値が残らなくなるが、
ページP4の領域解放は行なわない。その大きな理由
は、領域解放するには、解放対象ページへのポインタを
適当なロックを設定しながら、設定し直す必要があり、
並列実行性の劣化につながるからである。
【0019】またページP4のページ内Maxキー値が
20であることから、削除対象であるキー値20〜40
の範囲のうち、20より大きいキー値は右側のページに
格納されていることがわかるので、右ページへのポイン
タ(ページP5へのポインタ)を取得して、ページP4
のロックを解除する。ページP5に対するXモードのロ
ックを設定して、ページP5内の削除対象であるキー値
20〜40の範囲にあるキー値すべて削除する。このと
きページP5には、キー値40しか存在しないため、ペ
ージ内にキー値が残らなくなるが、ページP5の領域解
放は行なわない。ページP5のページ内Maxキー値が
40であることよりキー値20〜40の範囲のキーすべ
てを削除できたことになる。ページP5のロックを解除
し、最後にBツリーインデクス全体Tのロックを解除し
削除処理を完了する。削除処理が完了した状態を図7、
702に示す。
【0020】また、図7、702の状態から、挿入処理
(キー値60)を行なう手順について図8、802を用
いて説明する。Bツリーインデクス全体Tに対し、IX
モードのロックを設定して、前記記述の手順と同様にペ
ージP1、ページP3とページをアクセスしていき、ペ
ージP6に対してXモードのロックを設定してページP
6にアクセスする。ページP6には既にキー値50およ
び70のデータが格納されており、キー値60のデータ
を格納するのに十分なスペースがないものとする。この
場合スプリット呼ばれる、ページ分割処理を行なう。ま
ず、新規にページを確保(ページP8とする)する。こ
こでは分割キー値が50であったものとする。つまり、
キー値50のデータをページP6に残し、キー値70の
データおよび挿入するキー値60のデータを新規に確保
するページ領域に移動するものとする。ページP8に必
要な設定を行い、ページP6のページ内Maxキー値を
50に設定し直し、右ページのポインタをページP8に
設定し直すなどの処理を行なった後、ページP6のロッ
クを解除して、ページP3に対しXモードでロックを設
定して、ポインタを設定し直し、ページP3のロックを
解除し、最後にBツリーインデクス全体Tのロックを解
除し挿入処理を完了する。挿入処理が完了した状態を図
7、703に示す。
【0021】前述したように、Bツリーインデクスにお
いて、並列実行性を高く保つために、データの削除によ
りページ内にデータが一件もない状態になっても、ペー
ジの領域解放を行なわない。そのため、一般にデータの
挿入・削除を繰り返すうちに格納効率が低下し、それに
伴いアクセス性能が劣化していく。その性能劣化を抑え
るために、適当な時期にインデクスのアクセスを禁止し
て、インデクスに格納されたデータを一時領域に出力し
て、データを詰め込み直す処理(再編成処理)が一般に
行なわれている。
【0022】このように、従来技術2では同時に2つの
ページにロックをかけることがない。従って、並行実行
可能性は高い。一方、従来技術1で述べたような誤った
ページの参照が生じる可能性があるので、データを削除
しても引き続いてその領域を解放することが出来ない。
【0023】
【発明が解決しようとする課題】以上のような従来技術
1、従来技術2の説明から分かるように、データの削除
処理でのその領域の解放処理が可能であることと、並列
実行性が高いことはトレードオフの関係にあるものと考
えられていた。
【0024】本発明の目的は、ポインタにより複数のオ
ブジェクトが関連づけられるデータ構造を持ち、オブジ
ェクトの参照、更新、挿入および削除を行なう処理が複
数並行して動作するシステムにおいて、参照、更新およ
び挿入の並列実行性が高く、かつ削除処理を参照、更新
および挿入処理と並列実行可能とすることである。
【0025】さらに、データの挿入および削除の繰り返
しにより格納効率・アクセス効率が低下(削除されたが
その領域が解放されないオブジェクトが増えることや、
目的のオブジェクトにアクセスするために不必要なオブ
ジェクトを経由することになること)したBトリーイン
デクスに対し、データ参照、更新および挿入を抑止する
ことなく空きとなっているオブジェクトの領域の回収
し、格納効率、アクセス効率を向上させることである。
【0026】
【課題を解決するための手段】参照、更新および挿入処
理において、ポインタを辿ってのオブジェクト間の移動
に際し、移動前のオブジェクトに対するロックを解除し
た後に、移動後のオブジェクトに対するロックを設定す
ることにより、参照、更新および挿入の並列実行性を高
くする。この際、処理の始めにオブジェクトグループに
対しISモード(参照処理の場合)またはIXモード
(更新および挿入処理の場合)を設定し、処理完了時に
ロックを解除する。一方、削除処理において、削除対象
へのポインタを切り離し、あるいは付け替えた後、オブ
ジェクトグループに対してロックを取得している全処理
が完了した後に、削除対象オブジェクトの領域を解放す
る。
【0027】
【発明の実施の形態】(実施の形態1)本発明を実現す
るシステム構成例を図9に示す。ここに示すシステム構
成例は実施の形態1〜3において共通である。本システ
ムは、プロセッサ2とメモリ3とを有するコンピュータ
システム1と、それに接続された外部記憶装置4と、コ
ンピュータシステム1にネットワーク6を介して接続さ
れた複数の端末7を備えている。
【0028】メモリ3内にはプロセッサ2で解釈可能な
プログラムの形で表現されたデータ管理システム10が
配置され、プロセッサ2によって命令が読み込まれ演算
処理がなされる。データ管理システム10は、システム
制御部11、オブジェクト管理部12、ロック管理部1
3から構成される。システム制御部11は、端末7から
の参照、挿入、更新および削除要求を受け取り、要求内
容を解析してオブジェクト管理部12に制御を渡し、処
理結果をネットワーク6を通じて端末7へ応答する。オ
ブジェクト管理部12はシステム制御部11から渡され
た指示に従って、外部記憶装置4内に格納されたオブジ
ェクト5の管理を行なう。ロック管理部12は、指定さ
れたリソースに対するロック機能をオブジェクト管理部
12に提供する。
【0029】従来技術1における説明に使用した図1に
おいて、参照、更新および挿入の並列実行性がより高
く、かつ削除処理を参照、更新および挿入処理と並列実
行可能な方法の例を図3および図4により開示する。
【0030】図3、301は本実施形態における参照処
理を示すタイムチャートである。図2、201と比較し
て、オブジェクトAに対するロックの解除時期とオブジ
ェクトBに対するSモードのロックの設定時期が入れ替
わっている。即ち、従来はオブジェクトAについてロッ
クを設定して、オブジェクトBへのポインタの値を記憶
し、その後、オブジェクトBについてロックを設定し、
それからオブジェクトAについてのロックを解放してい
た。これに対し本実施形態ではオブジェクトAについて
ロックを設定し、オブジェクトBへのポインタの値を記
憶したならば、オブジェクトAについてのロックを解放
する。それからオブジェクトBについてロックを設定す
る。図3、302は本実施形態における挿入処理を示す
タイムチャートである。これは図2、201と同じもの
である。
【0031】図3、304は本発明における更新処理を
示すタイムチャートである。図2、204と比較して、
オブジェクトAに対するロックの解除時期とオブジェク
トBに対するXモードのロックの設定時期が入れ替わっ
ている。
【0032】図3、303は本発明における削除処理を
示すタイムチャートである。図2、204とは、大きく
変わっており、比較しながら説明する。オブジェクトグ
ループTに対するIXモードのロックの設定およびオブ
ジェクトAに対するXモードのロックの設定は同様であ
るが、その後オブジェクトグループTに対してロックを
取得している全処理を記憶する。その後、オブジェクト
Aから削除対象のオブジェクトCに対するポインタを切
り離すが、この実施形態ではここで前記記憶した全処理
の完了を待つ。完了の待ち方として、ロックの解除時点
でオブジェクトグループTに対してロックを設定してい
る処理側から削除処理へ完了を通知する方法と、削除処
理が一定間隔で他の処理の処理完了をチェックする方法
とがある。いずれかの方法を用いて前記記憶した全処理
の完了を検知できた後、オブジェクトCの領域を解放す
る。
【0033】解放した領域に他処理がアクセスする可能
性はないので、オブジェクトCに対するロックを設定す
る必要はない。その理由について、図4に例で説明す
る。図4では、削除処理401、参照処理402、挿入
処理403、更新処理404および更新処理405が並
列して処理が行なわれていることを示す。406時点、
つまり削除処理401においてオブジェクトAに対しX
モードでロックを設定した直後の時点でオブジェクトグ
ループTに対しロックを設定していない処理(ここでは
更新処理404および更新処理405)は、オブジェク
トCにアクセスし得ない。なぜならばオブジェクトCに
アクセスする前にオブジェクトCへのポインタを設定し
てある時点でのオブジェクトAにアクセスする必要があ
るが削除処理401がXモードで押さえているため、更
新処理404および更新処理405でオブジェクトAを
見られるときにはオブジェクトCへのポインタは切り離
されている。また、参照処理402や更新処理403は
オブジェクトCを見てデータを取得することがあるが、
それらの処理はすべてが完了したことを検知できている
からである。
【0034】前記ISモードおよびIXモードは例であ
って、その代わりに、それらの組と等価な、あるいはよ
り並列実行性の低いロックモードを用いることも出来
る。
【0035】前記処理方法により、従来処理に比べ、参
照、挿入および更新処理の並列実行性を高くして、かつ
削除処理によって解放された領域を誤って他処理がアク
セスすることも回避している。更に詳しくは、上記実施
形態では参照、挿入および更新処理において、一つの処
理が同時に2つのオブジェクトをロックすることがない
ため、従来技術と同等の高い並列実行性を実現出来る。
また、削除処理において、ポインタを切り離した後、削
除処理の対象となっているオブジェクトグループにロッ
クをかけている他の処理の完了を待って削除されたオブ
ジェクトの領域を解放することにより、安全かつ他の処
理の実行を阻害することなく領域の解放も実行出来る。
【0036】(実施の形態2)図5および図6を用いて
第2の実施の形態を開示する。図5、501はあるハッ
シュ値に対応するデータをチェーンにより管理する場合
などに典型的に用いられるデータ構造である(ここで
は、ハッシュ関数がキー値を10で割った余りと定義さ
れていて、ハッシュ値=2のキーおよびデータを管理す
る部分であると想定している)。この状態のデータ構造
に対し、キー値32の削除処理とキー値12の挿入処理
が要求された場合の手順について、図6に示す各処理の
タイムチャートと合わせ説明する。
【0037】図6の削除処理601では、オブジェクト
Bについて削除要求がなされる。まずオブジェクトグル
ープTに対し、IXモードのロックを設定し、オブジェ
クトAに対しXモードでロックが設定する。オブジェク
トAに格納されているオブジェクトBへのポインタを取
得して、(オブジェクトAに対するロックを保持したま
ま)オブジェクトBに対しXモードのロックを設定し、
オブジェクトBをアクセスする。オブジェクトB、即
ち、キー値が32のオブジェクトがあったことを確認
し、この時点でオブジェクトグループTに対しロックを
設定しているすべての処理を記憶する(この時点で挿入
処理602も並行して処理していてオブジェクトグルー
プTに対しロックを設定しているものとする)。オブジ
ェクトAに格納されているオブジェクトBへのポインタ
をオブジェクトBに格納されているポインタ(オブジェ
クトCへのポインタ)に設定し直して(ポインタの付け
替え)、オブジェクトAおよびBのロックを解除し(図
5、502)、記憶した処理の完了待ちとなる。
【0038】一方、挿入処理602ではオブジェクトグ
ループTに対し、IXモードのロックを設定し、挿入用
のオブジェクト領域確保を行い(オブジェクトDとす
る)、キー値12および関連するデータの設定を行な
う。続いてオブジェクトAに対しXモードでロックを設
定(削除処理がロック保持中であれば、解除まで待つこ
とになる)し、オブジェクトAに格納されているポイン
タをオブジェクトDへのポインタに設定し、オブジェク
トAからのポインタを、オブジェクトDを指すように付
け替え、オブジェクトAのロックを解除し、最後にオブ
ジェクトグループTのロックを解除し、挿入処理を完了
する(図5、503)。
【0039】挿入処理602のオブジェクトグループT
のロックを解除により、削除処理601はオブジェクト
Bの領域を(ロックを設定することなく)解放し、オブ
ジェクトグループTのロックを解除して、削除処理を完
了する(図5、504)。
【0040】次に、参照処理(キー値62)603の処
理手順について説明する。まず、オブジェクトグループ
Tに対しISモードのロックを設定し、オブジェクトA
から順にポインタを辿っていってキー値が62であるオ
ブジェクトを探す。オブジェクト間を移動する際には、
移動元のオブジェクトのロックを解除してから移動先の
オブジェクトに対し、Sモードでロックを設定するもの
とする。なお、前記の削除処理601と並行して動作し
ている場合は、オブジェクトAにアクセスした際の状態
が図5、502の状態であれば、オブジェクトBへアク
セスすることはなくポインタはオブジェクトCへのもの
が記憶される。従って、図6、603の点線に囲まれた
処理は行なわれない。603の点線で囲まれた処理はオ
ブジェクトBがまだ501の状態にあるときに実行され
る。このとき、オブジェクトAのアクセスでオブジェク
トBへのポインタが記憶され、点線で囲まれた処理でオ
ブジェクトCへのポインタが記憶される。このように参
照のタイミングにより処理が変わって来る。
【0041】続いて、更新処理(キー値62)604の
処理手順について説明する。まず、オブジェクトグルー
プTに対しIXモードのロックを設定し、オブジェクト
Aから順にポインタを辿っていってキー値が62である
オブジェクトを探し、見つけたら関連付けられているデ
ータを更新する。オブジェクト間を移動する際には、移
動元のオブジェクトのロックを解除してから移動先のオ
ブジェクトに対し、Xモードでロックを設定するものと
する。なお、前記の削除処理601と並行して動作して
いる場合、オブジェクトAにアクセスした際の状態が図
5、502の状態あれば、オブジェクトBへアクセスす
ることはなく、図6、604の点線に囲まれた処理は行
なわれない。
【0042】前記処理方法により、削除処理によって解
放された領域を誤ってアクセスすることなく、参照、挿
入および更新処理の高い並列実行性を実現できる。更に
述べれば、ハッシュ関数を用いたデータの管理において
も実施の形態1と同様に、参照、挿入、および更新処理
において、1つの処理が同時に2つのオブジェクトのロ
ックを設定することがなく高い並列実行性を持つと共
に、削除処理において、削除対象となるオブジェクトへ
のポインタを切り離した後にそのオブジェクトグループ
にロックをかけている他の処理の完了を待って領域の解
放を実行することにより他の処理の実行を阻害すること
なく、かつ誤ったデータが使われることなく領域の解放
が出来る。
【0043】(実施の形態3)従来技術2で説明したB
ツリーインデクスにおいて、データ削除やデータ挿入処
理と並列実行可能な空きページ回収処理方法を図7およ
び図8を用いて開示する。空きページ回収処理は、デー
タの挿入・削除を繰り返すうちに格納効率が低下し、そ
れに伴いアクセス性能が劣化している適当な時期に再編
成に代わり実行することを想定している。
【0044】図7、703の状態において、空きページ
回収処理が実行された場合の処理手順を図8、803に
示す。まず、Bツリーインデクス全体Tに対しIXモー
ドでロックを設定する。以降の説明において、ページに
対するロックのモードについては[]内に記すものとす
る。次にルートページから一番左のリーフページに向か
ってページを辿る(ページP1[S]、P2[S]およびP
4[X])。リーフページP4においてデータ件数が0件
であることを確認し、回収予定であることを示すフラグ
(図7、704 ページP4内の丸枠に「回」を記した
記号)を設定する。続いてページP4の上位ページであ
るページP2にアクセス[X]して、ページP4へのポイ
ンタを切り離す(図7、704)。そして、ページP4
の右側のページであるページP5にアクセス[X]して、
データ件数が0件であることを確認し、回収予定である
ことを示すフラグを設定する。次に、上位ページである
ページP2にアクセス[X]して、ページP5へのポイン
タを切り離すとページP2内にはキーが残らないことを
確認して、ページ2に回収予定であることを示すフラグ
を設定する。続いてページP2の上位ページであるペー
ジP1にアクセス[X]して、ページP2へのポインタを
切り離す(図7、705)。ページP5の右側のページ
であるページP6にアクセス[X]してデータ件数が1件
以上であることを確認しページP6の右側のページであ
るページP8にアクセス[X]してデータ件数が1件以上
であることを確認し、ページP8の右側のページである
ページP7にアクセス[X]してデータ件数が1件以上で
あることを確認し、回収可能なページのフラグ設定およ
びポインタの切り離しが完了する。この時点でBツリー
インデクス全体Tに対しロックを設定している処理を記
憶し、それらの処理の完了を待つ。記憶した処理がすべ
て完了したら、回収予定としたページP2、P4および
P5の領域を解放し、最後にBツリーインデクス全体T
のロックを解除して空きページ回収処理を完了する(図
7、706)。
【0045】前述した空き回収処理方法で得られた最終
的な形では、領域解放を行なったページが格納を担当し
ていたキーは、その右側のページが担当を引き継ぐ形と
なる。例えば、ページP6はキー値が50以下のデータ
を担当する。それに伴い、参照、挿入および更新処理に
おいて、アクセスしたページに回収予定フラグが設定さ
れているのを検知した場合、右側のページへ移動してア
クセスするように処理を一部変更する。
【0046】ここまでに示した処理方法により、Bツリ
ーインデクスにおいても参照、挿入および更新処理の並
列実行性を大きく損なうことなく、かつデータ参照、更
新および挿入を抑止することなく空きとなっているペー
ジの領域を回収し、格納効率、アクセス効率を向上させ
ることが可能である。
【0047】以上述べた実施の形態で説明したように、
ポインタにより複数のオブジェクトが関連づけられるデ
ータ構造を持ち、オブジェクトの参照、更新、挿入およ
び削除を行なう処理が複数並行して動作するシステムに
おいて、参照、更新および挿入の並列実行性が高く、か
つ削除処理を参照、更新および挿入処理と並列実行可能
な処理が可能である。
【0048】さらに、データの挿入および削除の繰り返
しにより格納効率・アクセス効率が低下したBトリーイ
ンデクスに対し、データ参照、更新および挿入を抑止し
たり、一時リソースを使用したりすることなく空きとな
っているページの領域の回収し、格納効率、アクセス効
率を向上させることが可能である。
【0049】
【発明の効果】本発明によれば、参照、挿入および更新
処理の並列実行性を持ち、かつ削除処理によって解放さ
れた領域を誤って他処理がアクセスすることも回避して
削除処理後の解放(回収)も可能としている。
【図面の簡単な説明】
【図1】従来技術1および実施の形態1におけるデータ
構造を示す図である。
【図2】従来技術1におけるタイムチャートを示す図で
ある。
【図3】本発明の実施の形態1におけるタイムチャート
を示す図である。
【図4】本発明の実施の形態1における並列処理の様子
を示す図である。
【図5】本発明の実施の形態2におけるデータ構造を示
す図である。
【図6】本発明の実施の形態2におけるタイムチャート
を示す図である。
【図7】従来技術2および本発明の実施の形態3におけ
るデータ構造を示す図である。
【図8】従来技術2および本発明の実施の形態3におけ
るタイムチャートを示す図である。
【図9】本発明を実現するシステム構成の例を示す図で
ある。
【符号の説明】
1…コンピュータシステム、2…プロセッサ、3…メモ
リ、4…外部記憶装置、5…オブジェクト、6…ネット
ワーク、7…端末、10…データ管理システム、11…
システム制御部、12…オブジェクト管理部、13…ロ
ック管理部
フロントページの続き (72)発明者 中野 幸生 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所ビジネスソリューション事 業部内 Fターム(参考) 5B082 BA05 EA05 GB01

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】ポインタによりオブジェクトグループに属
    する複数のオブジェクトが関連づけられるデータ構造を
    持ち、オブジェクトの参照、更新、挿入および削除を行
    なう処理が複数並行して動作するシステムのデータ処理
    方法であって、削除処理において、削除対象へのポイン
    タを切り離し、あるいは付け替える第1のステップと、
    オブジェクトグループに対してロックを取得している全
    処理が完了したことを判断する第2のステップと、前記
    全処理が完了したことを受けて削除対象オブジェクトの
    領域を解放する第3のステップとを具備することを特徴
    とするデータ処理方法。
  2. 【請求項2】前記第1のステップにおいて前記オブジェ
    クトグループにロックを取得している総ての他の処理を
    記憶することおよび削除対象へのポインタの切り離しあ
    るいは付け替えを行なうことを特徴とする請求項1記載
    のデータ処理方法。
  3. 【請求項3】前記第1のステップ終了後関連するオブジ
    ェクトに設定していたロックを解除することを特徴とす
    る特徴とする請求項1または2記載のデータ処理方法。
  4. 【請求項4】前記第2のステップにおいて前記オブジェ
    クトグループにロックを取得している他の処理から処理
    完了通知を受けることを特徴とする請求項1または2記
    載のデータ処理方法。
  5. 【請求項5】前記データ構造はBツリーインデックスで
    あり、前記データ処理方法は更に、下位ページから順に
    ページをアクセスし、データが格納されていないページ
    に解放する旨のフラグを設定しポインタを切り離す第4
    のステップを有し、前記第3のステップにおいて前記フ
    ラグのあるページを解放することを特徴とする請求項1
    記載のデータ処理方法。
  6. 【請求項6】ポインタによりオブジェクトグループに属
    する複数のオブジェクトが関連づけられるデータ構造を
    持ち、オブジェクトの参照、更新、挿入および削除を行
    なう処理が複数並行して動作するシステムのデータ処理
    方法であって、参照処理において、処理開始時にオブジ
    ェクトグループに対しISモードのロックを設定し、ポ
    インタを辿ってのオブジェクト間の移動に際し、移動前
    のオブジェクトに対するロックを解除した後に、移動後
    のオブジェクトに対するロックを設定する処理手順と、
    更新処理において、処理開始時にオブジェクトグループ
    に対しIXモードのロックを設定し、ポインタを辿って
    のオブジェクト間の移動に際し、移動前のオブジェクト
    に対するロックを解除した後に、移動後のオブジェクト
    に対するロックを設定する処理手順と、挿入処理におい
    て、処理開始時にオブジェクトグループに対しIXモー
    ドのロックを設定する処理手順と、削除処理において、
    削除対象へのポインタを切り離し、あるいは付け替えた
    後、オブジェクトグループに対してロックを取得してい
    る全処理が完了した後に、削除対象オブジェクトの領域
    を解放する処理手順とを具備することを特徴とするデー
    タ処理方法。
  7. 【請求項7】前記ISモードおよびIXモードの代わり
    に、それらの組と等価な、あるいはより並列実行性の低
    いロックモードを用いることを特徴とする請求項6記載
    のデータ処理方法。
  8. 【請求項8】ポインタによりオブジェクトグループに属
    する複数のオブジェクトが関連づけられるデータ構造を
    持ち、オブジェクトの参照、更新、挿入および削除を行
    なう処理が複数並行して動作するシステムのデータ処理
    装置であって、削除処理において、削除対象へのポイン
    タを切り離し、あるいは付け替える手段と、オブジェク
    トグループに対してロックを取得している全処理が完了
    したことを判断する手段と、前記全処理が完了したこと
    を受けて削除対象オブジェクトの領域を解放する手段と
    を具備することを特徴とするデータ処理装置。
  9. 【請求項9】ポインタによりオブジェクトグループに属
    する複数のオブジェクトが関連づけられるデータ構造を
    持ち、オブジェクトの参照、更新、挿入および削除を行
    なう処理が複数並行して動作するシステムのデータ処理
    装置であって、参照処理において、処理開始時にオブジ
    ェクトグループに対しISモードのロックを設定し、ポ
    インタを辿ってのオブジェクト間の移動に際し、移動前
    のオブジェクトに対するロックを解除した後に、移動後
    のオブジェクトに対するロックを設定する手段と、更新
    処理において、処理開始時にオブジェクトグループに対
    しIXモードのロックを設定し、ポインタを辿ってのオ
    ブジェクト間の移動に際し、移動前のオブジェクトに対
    するロックを解除した後に、移動後のオブジェクトに対
    するロックを設定する手段と、挿入処理において、処理
    開始時にオブジェクトグループに対しIXモードのロッ
    クを設定する手段と、削除処理において、削除対象への
    ポインタを切り離し、あるいは付け替えた後、オブジェ
    クトグループに対してロックを取得している全処理が完
    了した後に、削除対象オブジェクトの領域を解放する手
    段とを具備することを特徴とするデータ処理装置。
  10. 【請求項10】ポインタによりオブジェクトグループに
    属する複数のオブジェクトが関連づけられるデータ構造
    を持ち、オブジェクトの参照、更新、挿入および削除を
    行なう処理が複数並行して動作するシステムのデータ処
    理のためにコンピュータを、削除処理において、削除対
    象へのポインタを切り離し、あるいは付け替える第1の
    手段、オブジェクトグループに対してロックを取得して
    いる全処理が完了したことを判断する第2の手段、およ
    び前記全処理が完了したことを受けて削除対象オブジェ
    クトの領域を解放する第3の手段として機能させるため
    のデータ処理プログラム。
  11. 【請求項11】ポインタによりオブジェクトグループに
    属する複数のオブジェクトが関連づけられるデータ構造
    を持ち、オブジェクトの参照、更新、挿入および削除を
    行なう処理が複数並行して動作するシステムのデータ処
    理のためにコンピュータを、参照処理において、処理開
    始時にオブジェクトグループに対しISモードのロック
    を設定し、ポインタを辿ってのオブジェクト間の移動に
    際し、移動前のオブジェクトに対するロックを解除した
    後に、移動後のオブジェクトに対するロックを設定する
    手段と、更新処理において、処理開始時にオブジェクト
    グループに対しIXモードのロックを設定し、ポインタ
    を辿ってのオブジェクト間の移動に際し、移動前のオブ
    ジェクトに対するロックを解除した後に、移動後のオブ
    ジェクトに対するロックを設定する手段と、挿入処理に
    おいて、処理開始時にオブジェクトグループに対しIX
    モードのロックを設定する手段、および削除処理におい
    て、削除対象へのポインタを切り離し、あるいは付け替
    えた後、オブジェクトグループに対してロックを取得し
    ている全処理が完了した後に、削除対象オブジェクトの
    領域を解放する手段、として機能させるためのデータ処
    理プログラム。
JP2002073540A 2002-03-18 2002-03-18 データ処理方法 Expired - Lifetime JP4139613B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002073540A JP4139613B2 (ja) 2002-03-18 2002-03-18 データ処理方法
US10/152,439 US20030177131A1 (en) 2002-03-18 2002-05-20 Data processing method, data processing apparatus, and data processing program
US12/192,947 US7818749B2 (en) 2002-03-18 2008-08-15 Data processing method, data processing apparatus, and data processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002073540A JP4139613B2 (ja) 2002-03-18 2002-03-18 データ処理方法

Publications (2)

Publication Number Publication Date
JP2003271436A true JP2003271436A (ja) 2003-09-26
JP4139613B2 JP4139613B2 (ja) 2008-08-27

Family

ID=28035249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002073540A Expired - Lifetime JP4139613B2 (ja) 2002-03-18 2002-03-18 データ処理方法

Country Status (2)

Country Link
US (2) US20030177131A1 (ja)
JP (1) JP4139613B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282746A (ja) * 2008-05-22 2009-12-03 Fujitsu Ltd データ管理プログラム、データ管理方法、及びデータ管理装置
CN102495753A (zh) * 2011-10-21 2012-06-13 江苏省交通科学研究院股份有限公司 交互式cad工程图纸批量处理方法
WO2012111119A1 (ja) * 2011-02-17 2012-08-23 株式会社 日立製作所 情報処理方法、情報処理装置、及びプログラム記憶媒体
JPWO2013018593A1 (ja) * 2011-07-29 2015-03-05 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法および制御プログラム記録媒体
WO2017179140A1 (ja) * 2016-04-13 2017-10-19 株式会社日立製作所 計算機及びデータベース管理方法
KR20190093144A (ko) * 2018-01-31 2019-08-08 울산과학기술원 락-프리 읽기를 제공하는 장치 및 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321898B1 (en) * 2002-04-04 2008-01-22 Ncr Corp. Locking mechanism for materialized views in a database system
JP5007176B2 (ja) * 2007-08-09 2012-08-22 ボッシュ株式会社 データ更新処理方法及び車両動作制御装置
US20180260255A1 (en) * 2017-03-10 2018-09-13 Futurewei Technologies, Inc. Lock-free reference counting

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5551028A (en) * 1991-02-28 1996-08-27 Mentor Graphics Corporation Design data management system and associated method
US5553267A (en) * 1992-07-01 1996-09-03 Digital Equipment Corporation Method and apparatus for coordinating access to and modifying multiple element data objects in a shared memory
US5551025A (en) * 1994-11-30 1996-08-27 Mci Communications Corporation Relational database system for storing different types of data
US6973656B1 (en) * 1995-08-16 2005-12-06 International Business Machines Corporation Method and apparatus for linking data in a distributed data processing system
US6574654B1 (en) * 1996-06-24 2003-06-03 Oracle Corporation Method and apparatus for lock caching
US5832484A (en) * 1996-07-02 1998-11-03 Sybase, Inc. Database system with methods for parallel lock management
US5949083A (en) * 1997-03-18 1999-09-07 Transnucleaire Container comprising a forged steel body of non-circular cross-section for nuclear fuel assemblies
US5940083A (en) * 1997-04-01 1999-08-17 Novell, Inc. Multi-curve rendering modification apparatus and method
JPH1196159A (ja) * 1997-09-22 1999-04-09 Matsushita Electric Ind Co Ltd ハイパーテキスト編集装置
US6026401A (en) * 1997-10-14 2000-02-15 International Business Machines Corporation Locking tool data objects in a framework environment
US5995998A (en) * 1998-01-23 1999-11-30 Sun Microsystems, Inc. Method, apparatus and computer program product for locking interrelated data structures in a multi-threaded computing environment
US6272491B1 (en) * 1998-08-24 2001-08-07 Oracle Corporation Method and system for mastering locks in a multiple server database system
GB2342198B (en) * 1998-10-02 2003-10-22 Ibm Composite locking of objects in a database
US6343296B1 (en) * 1999-09-03 2002-01-29 Lucent Technologies Inc. On-line reorganization in object-oriented databases
US6792601B1 (en) * 2000-05-18 2004-09-14 International Business Machines Corporation Multiple mode object locking method and system
US6735760B1 (en) * 2000-11-08 2004-05-11 Sun Microsystems, Inc. Relaxed lock protocol
US8032886B2 (en) * 2000-11-22 2011-10-04 Microsoft Corporation Tracking asynchronous execution of program using hierarchical structure of objects

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282746A (ja) * 2008-05-22 2009-12-03 Fujitsu Ltd データ管理プログラム、データ管理方法、及びデータ管理装置
WO2012111119A1 (ja) * 2011-02-17 2012-08-23 株式会社 日立製作所 情報処理方法、情報処理装置、及びプログラム記憶媒体
JPWO2013018593A1 (ja) * 2011-07-29 2015-03-05 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法および制御プログラム記録媒体
CN102495753A (zh) * 2011-10-21 2012-06-13 江苏省交通科学研究院股份有限公司 交互式cad工程图纸批量处理方法
WO2017179140A1 (ja) * 2016-04-13 2017-10-19 株式会社日立製作所 計算機及びデータベース管理方法
KR20190093144A (ko) * 2018-01-31 2019-08-08 울산과학기술원 락-프리 읽기를 제공하는 장치 및 방법
KR102105687B1 (ko) 2018-01-31 2020-04-28 울산과학기술원 락-프리 읽기를 제공하는 장치 및 방법

Also Published As

Publication number Publication date
JP4139613B2 (ja) 2008-08-27
US7818749B2 (en) 2010-10-19
US20030177131A1 (en) 2003-09-18
US20080320494A1 (en) 2008-12-25

Similar Documents

Publication Publication Date Title
KR100862661B1 (ko) 지연된 로깅 방법 및 그 장치
US8271564B2 (en) Lookup table arrangement and related management method for accommodating concurrent processors
US9953051B2 (en) Multi-version concurrency control method in database and database system
US7702660B2 (en) I/O free recovery set determination
US6772155B1 (en) Looking data in a database system
US10990628B2 (en) Systems and methods for performing a range query on a skiplist data structure
US7953778B2 (en) Efficient support of consistent cyclic search with read-copy update and parallel updates
KR930002331B1 (ko) 키 레코드를 페치, 삽입 및 삭제하는 방법
US9020916B2 (en) Database server apparatus, method for updating database, and recording medium for database update program
US20090183159A1 (en) Managing concurrent transactions using bloom filters
US20070118547A1 (en) Efficient index versioning in multi-version databases
US20060020634A1 (en) Method, system and program for recording changes made to a database
US20120233139A1 (en) Efficient multi-version locking for main memory databases
CN103559231B (zh) 一种文件***配额管理方法、装置及***
WO2006127402A1 (en) Version-controlled cached data store
JP3611295B2 (ja) コンピュータシステム、メモリ管理方法及び記憶媒体
US7818749B2 (en) Data processing method, data processing apparatus, and data processing program
US7539988B1 (en) System and method for deferred rebalancing of a tree data structure
JP4126843B2 (ja) データ管理方法および装置並びにデータ管理プログラムを格納した記録媒体
US20240119039A1 (en) Writing graph data
CN114328591A (zh) 事务执行方法、装置、设备和存储介质
JP2004341926A (ja) データベース管理システム、データベース管理プログラム
CN114328500A (zh) 一种数据访问方法、装置、设备及计算机可读存储介质
CN117076147B (zh) 死锁检测方法、装置、设备和存储介质
KR100709275B1 (ko) 논 블록킹 검색연산을 위한 알-트리 기반의 동시성 제어방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080204

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080417

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: 20080513

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: 20080609

R150 Certificate of patent or registration of utility model

Ref document number: 4139613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

EXPY Cancellation because of completion of term