JPH03158966A - ダイナミック・ハッシュにおけるスプリット制御方法 - Google Patents

ダイナミック・ハッシュにおけるスプリット制御方法

Info

Publication number
JPH03158966A
JPH03158966A JP1299210A JP29921089A JPH03158966A JP H03158966 A JPH03158966 A JP H03158966A JP 1299210 A JP1299210 A JP 1299210A JP 29921089 A JP29921089 A JP 29921089A JP H03158966 A JPH03158966 A JP H03158966A
Authority
JP
Japan
Prior art keywords
page
processing
split
hash
records
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
JP1299210A
Other languages
English (en)
Other versions
JP2871755B2 (ja
Inventor
Koji Obata
小幡 孝司
Kazutaka Ozawa
小沢 一孝
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1299210A priority Critical patent/JP2871755B2/ja
Publication of JPH03158966A publication Critical patent/JPH03158966A/ja
Application granted granted Critical
Publication of JP2871755B2 publication Critical patent/JP2871755B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概要〕 ダイナミック・ハッシュ法を用いた格納構造により、デ
ータを管理するデータ処理システムにおいて、スプリッ
ト時にページ複写を行うことによってページスプリット
機能の改善を図ったダイナミック・ハッシュにおけるス
プリット制御方法に関し。
スプリット処理のオーバヘッドをシステム全体でバラン
スさせ、トランザクション処理におけるレスポンスやス
ループットを保証できるようにすることを目的とし。
スプリット時に、新ページを確保して、スプリット対象
ページの内容を、新ページに複写する処理過程と、複写
処理後のスプリット対象ページおよび新ページについて
、再ハツシュを行い、不要レコードを削除する処理過程
とを備え、前記2つの処理過程を3分離して動作可能に
するように構成する。
〔産業上の利用分野〕
本発明は、ダイナミック・ハッシュ法を用いた格納構造
により、データを管理するデータ処理システムにおいて
、スプリット時にページ複写を行うことによってページ
スプリット機能の改善を図ったダイナミック・ハッシュ
におけるスプリット制御方法に関する。
データベース管理システムにおける格納構造として、ダ
イナミック・ハッシュを用いた研究が行われている。ダ
イナミック・ハッシュ方式には大きく分けて2つの種類
がある。1つはディレクトリを基本とする本状(Tre
e)のダイナミック・ハッシュであり、もう1つは、デ
ィレクトリによらないリニア・ハツシュである。
ダイナミック・ハッシプ、を、データベースに本格的に
実用化した商用データベースは、現在見当たらない。ダ
イナミック・ハッシュは、大規模オンライン・トランザ
クション処理(OLTP)用のデータベースシステムに
適応する上で、いくつかの問題がある。その1つの問題
は、ダイナミック・ハッシュを実現する上で、ページス
プリット機能が、トランザクション処理におけるレスポ
ンスやスループットに重要な影響を与え、それらの許容
値を十分には保証できないことである。
〔従来の技術〕
第5図は従来の木状ハツシュの例、第6図は従来のリニ
ア・ハツシュの例、第7図は従来のスプリット処理の例
、第8図は従来のスプリット制御の概念図を示す。
データベースシステムに求められる要件として。
レスポンスが速いことと、データを格納するスペース使
用率がよいことがある。特に、オンライン・トランザク
ション処理では、これらが、 「平均するとよい」とい
うより、[ちらばりが少なく安定している」、すなわち
「最悪値がある程度の範囲に収まっている」という状態
にあることが重要である。
これらを満たすデータの格納構造として、ダイナミック
・ハッシュによるアプローチが研究されている。このダ
イナミック・ハッシュについては。
例えば、以下の文献に詳しい説明がある。
(参考文献) Rj、Enbody、11.c、Do著
”Dynamic Ilashing Schemes
ACM Computing 5urveys+Vo1
.20+No、2.June、198Bハツシユ関数を
用いて、データを格納する場合。
どうしても、データが偏在し、キーが重複することが起
きる。従来の一般に用いられているスタティック・ハツ
シュでは、データの偏在によるアクセス回数の増加を防
ごうとした場合、スペース使用率が悪くなり、スペース
使用率を維持しようとした場合、アクセス回数が保証で
きなくなる。
ダイナミック・ハッシュでは、データ量に伴い。
使用するスペースが拡大/縮小するので、スペース使用
率とアクセス回数のトレードオフが、ある程度解消され
る。
ダイナミック・ハッシュの代表的なものとして。
本状ハツシュとリニア・ハツシュがある。
ハツシュ値からレコードを求める方法は、木状ハツシュ
とリニア・ハツシュでは違いがある。木状ハツシュでは
、ハツシュ値からディレクトリ内のエントリ識別子を求
める。一方、リニア・ハツシュでは、ハツシュ値からペ
ージ識別子(ページ番号、ページアドレス等)を求める
。ここで、ページは、二次記憶上の物理的または論理的
なIloのアクセス単位である。ブロックまたはパケッ
トと呼ぶこともある。
両ダイナミック・ハッシュとも、ページを複数のハツシ
ュ値のレコードで共有することで、格納構造のスペース
効率を向上させている。ページの維持方法は、木状ハツ
シュならば、従来の2進木構造のように、ページが一杯
になると、スプリットさせる。第5図は、その例を示し
ている。
この木状ハツシュのハツシュ関数ハ。
h* (key) = key//2k  である。
ハツシュ関数の値が、ディレクトリエントリ番号に対応
している。kは、ディレクトリエントリ拡張回数、//
は、剰余を表す。
1ページに2レコードの格納が可能であるとする。第5
図(イ)に示す状態で、005のキーを持つレコードの
格納要求があった場合、新しいページを追加し、002
および003のキーを持つレコードを、再ハツシュによ
って、振り分ける。
そして、第5図(ロ)に示すように、005のキーを持
つレコードについても、ハツシュにより。
該当するページを決め、それに格納する。
リニア・ハツシュでは ページをオーバフローさせてお
き、他の任意の契機に、スプリット処理を行う。第6図
は、その例を示している。
第6図の例では9次のようなハツシュを行っている。
(1)Hをkからランダムなm個のピッ1−列に変換す
る関数とする。
(2)拡張の回数dに応じて、物理空間のページ数を、
2″個(d=o・・・l11)とする。
(3)物理空間に対するマツピング関数を。
h+ (k) −H(k)+*od 2’ とする。
(4)拡張の直後または初期値は、スプリットポインタ
SPを、物理空間の先頭ページとする。この状態でのレ
コードの物理空間へのマツピングは、hdを用いる。
(5)一定性数または量りに応じて、スプリットポイン
タSPを移動し、移動済みの部分については1次の物理
空間へのマツピング関数h a++を用いて、レコード
を再分配させる。したがって。
この状態では、レコードの物理空間へのマツピング関数
h (k)は、以下のようになる。
ha(k)≧SPのとき、  h(k) =h、 (k
)hd(k)<SPのとき、h(k)=h□1(k)こ
こで2例えば初期値dを2とし、Lを3件の格納とする
。ページ内格納を2件とする。
H(k)の結果の具体例を以下とする。
■160.■177、■194.■061.■078、
■095.■006.■023.■028゜この場合、
リニア・ハツシュでは、第6図に示すように格納される
ことになる。
第6図(イ)は、■のレコードまでが格納された状態を
示している。ここで、■〜■のレコードの追加があると
、それぞれ9次の関数により、格納ページが決定される
■ ha  (k)  =006  mod  2” 
 =2■ hd(k)  =023  nod  2”
  =3■ hd(k)  −028mod  2” 
 =0■のレコードの格納先である第2ページには。
すでに2件のレコード■、■が格納されているので、オ
ーバフローページOPが確保され、ここに格納される。
■までのレコードを格納した結果は。
第6図(ロ)に示すようになる。
■〜■までの3件の格納が終わると、スプリット制御に
入る。スプリットポインタSPの指しているページにオ
ーバフローページがあるので、新しいページを確保し、
レコード■、■、■を、新しい関数で再ハツシュする。
■’  ha−+ (k) −194mod  2’ 
=2■’  ha−+ (k) =078 nod  
2’ =6■’  ha++ (k) =OO6l1o
d  2″=にの結果から、■および■のレコードを、
第6図(ハ)に示すように、新しい第6ページに移動す
る。
スプリットポインタSPは、1つ先に進め1次のスプリ
ット契機におけるスプリット対象をポイントさせる。
このように、リニア・ハツシュでは、ページをオーバフ
ローさせておき、後からスプリット制御を行うので、遅
延スプリットと呼ぶ。遅延スプリットをするリニア・ハ
ツシュの場合には9本状ハツシュと比較して、ページの
オーバフロー分だけ。
スプリット処理のオーバヘッドが大きくなる。このオー
バーヘッドは、スプリット処理におけるプログラム走行
ステップ数の増加や資源のロック待ちである。
遅延スプリットでは、スプリット処理をバックグラウン
ドで動作するデーモン機能で制御することが考えられる
。しかし、安易にデーモン機能でスプリット制御をすれ
ば、フォアグラウンド処理として動作する格納構造アク
セス機能のレコード(資源)排他待ちなどにより、レス
ポンスや全体のスループットを低下させる危険がある。
以上のようなリニア・ハツシュの場合には、スプリット
によるページの使用率の変化が激しいため1例えば、上
述の参考文献にも記載されているように、スペースの利
用効率を改良させた部分拡張ハツシュなどが、提案され
ている。しかし、スプリットによるオーバヘットの検討
はなされていないため、オーバヘッドの面からみた場合
には。
本質的には、リニア・ハツシュと同様である。
以上のような、従来のスプリット処理の概要は。
第7図に示すようになっている。
(a)  スプリットが必要になった場合、まず新ペー
ジを確保する。
(b)スプリット対象ページのレコードを読む。
(C)  レコードが終了した場合、処理を終了する。
(d)  新しいハツシュ関数により、再ハツシュする
(e)  ハツシュの結果、格納場所が新ページ側か現
ページ側かを判定する。現ページ側の場合、レコードを
そのままにして、処理(b)に戻り1次のレコードの処
理に移る。
(f)  格納場所が新ページ側の場合、そのレコード
を新ページ側に移動する。すなわち、新ページにレコー
ドを複写し、現ページにある元のレコードを削除する。
その後、処理(b)に戻り、処理を繰り返す。
なお、オーバフローページがある場合には、オーバフロ
ーページについても、同様に、 処理(b)〜(f)を
繰り返す。
このような従来のスプリットでは1例えば第8図(イ)
に示すページP2をスプリットさせる場合、レコードP
2に格納しであるレコードR1〜R4のすべてについて
、各々、再ハシシュして。
第8図(ロ)に示すように、レコードの移動(削除を含
む)を、一連の処理で実行する。
〔発明が解決しようとする課題〕
従来のダイナミック・ハッシュにおけるスプリット制御
では、スプリットが必要となった時点で。
オーバフローページを含むスプリット対象ページの全レ
コードについて、再ハツシュを行うとともに、格納場所
の変更が必要になったレコードの複写および削除を、一
連の処理として実行することになるので、この間の排他
制御により、オンライン・トランザクションの処理が、
長時間待たされる危険性があった。また、このスプリッ
ト制御を行っている間に、CPUの負荷が、集中すると
いう問題があった。
オンライン・トランザクション処理用データベースの格
納構造に必要な条件は、格納構造変更の自己調整機能の
影響を最小限にして、以下に示す3点を満たすことであ
る。
(1)データ処理のトランザクション(フォアグラウン
ド)と、格納構造変更処理(ハックグラウンド)とを分
離して、トランザクション処理のレスポンスを保証する
(2)データ処理のトランザクション処理と、格納構造
変更処理との間の排他待ちが、長時間になるのを防ぐ。
(3)全体的にデータ処理のトランザクション処理コス
トと、格納構造変更処理のコストとを、バランスさせる
上記(1)の条件は、従来技術の遅延スプリット方式で
、ある程度、実現可能である。さらに、(2)。
(3)の条件も満たすようにする必要がある。
本発明は上記問題点の解決を図り、スプリット処理のオ
ーバヘッドをシステム全体でバランスさせ、トランザク
ション処理におけるレスポンスやスルーブツトを保証で
きるようにすることを目的としている。
〔課題を解決するための手段〕
第1図は本発明の原理説明図である。
第1図において、10はCPUおよびメモリなどからな
る処理装置、11はレコードの挿入、検索、更新、削除
などを行う格納構造アクセス処理部、12はスプリット
制御を行う格納構造変更処理部、13はページ複写処理
、14は不要レコード削除処理、15はページの読み込
み、書き出しなどを行うバッファ制御部、16は磁気デ
ィスク装置などの二次記憶装置、17はハツシュ格納構
造によるデータ格納部を表す。
ページ複写処理13では、ダイナミック・ハッシュにお
けるスプリットが必要になったときに。
新ページを確保して、スプリット対象ページの内容を、
新ページにそのまま複写する処理を行う。
不要レコード削除処理14では、ページ複写処理13に
よる複写処理後の元のページおよび新ページについて、
再ハツシュを行い、新ページおよび元のページにおける
重複したレコードの一方の不要レコードを削除する処理
を行う。
本発明では、特に、この格納構造変更処理部12におけ
るページ複写処理13および不要レコード削除処理14
の処理を分離し、この処理の間に。
例えば緊急性を有するオンライン・トランザクションな
どがあれば、それを優先させて実行できるようにする。
例えば、第1図(ロ)に示すような状態で、ページP2
をスプリット対象として、レコードR1〜R4を、再配
置するとする。
ページ複写処理13の処理では、各レコードについて再
ハツシュすることなく、第1図(ハ)に示すように、ペ
ージP2の内容を、そのまま新ページP6に複写する。
オーバフローページがあれば、それについても同様に、
オーバフローページの領域を確保して、そのまま複写す
る。したがって、この処理の開始から終了までの時間は
、きわめて短い。
不要レコード削除処理14の処理では、他の任意の時間
に、ページP2およびR6に重複して格納されているレ
コードR1−R4について、再ハツシュを行い、現在、
格納されている場所が正しいか否かを判定して、正しく
ない場合には、不要レコードと判断し、第1図(ニ)に
示すように。
そのレコードを削除する。
〔作用〕
本発明では3本状ハツシュ、リニア・ハツシュ部分拡張
ハツシュなどのダイナミック・ハッシュにおいて、以下
の制御を行う。
スプリット時には、新ページを確保して、スプリット対
象ページを複写する。
スプリットページの検索時には、複写による不要なレコ
ードは、新ハツシュ関数を用いるので、検索対象となら
ない。ただし、ハツシュ値によらない順検索の場合には
、再ハツシュして検索対象のレコードであることを確認
する。
不要レコードとは3本来、スプリットによって移動対象
とならないレコードである。ページ複写をするので、不
要ページが新ページに複写されることになる。
自己調整機能では、この不要レコードを再ハツシュによ
って検出して削除する。
以上のように、スプリット時には、単にページを複写す
るだけで処理が終了するので、その処理のための排他制
御の期間は、きわめて短い。自己調整機能による不要レ
コードの削除は、全不要レコードを一度に削除する必要
がなく、CPU負荷などとの兼ね合いにより、適当な時
間に順次実施することができるので、オンライン・トラ
ンザクション等に対する影響を極力小さくすることがで
きる。
〔実施例〕
第2図は本発明の木状ハツシュへの適用例、第3図は本
発明のリニア・ハツシュへの適用例、第4図は本発明の
実施例によるリニア・ハツシュ構造の処理構成例を示す
[木状ハツシュへの適用例] 本状ハツシュのスプリット処理では、レコード格納時に
、ページが一杯になったならば、新ページを確保して、
旧ページの内容のすべてを新ページへ複写する。その後
、不要レコードは、新・旧ページ内で削除する。不要レ
コードは、再ハツシュすれば、新ページまたは旧ページ
に存在すべきレコードであるかどうかを判定できる。
ハツシュ値からディレクトリエントリ、そしてページを
求めるため、複写による不要なレコードは、キー検索対
象外となり、不要レコードが存在しても、キー検索では
問題にならない。
ところで、実際のデータベースでは、ハツシュ値によら
ずに、順検索する場合がある。そのためスプリッI・時
に1例えばページ単位でスプリット中表示を立てておく
。後で、自己調整機能が動作して不要レコードを削除し
、ページ内の不要レコードをすべて削除レコードとした
ならば、スプリット中表示を消す。
順検索では、スプリット中表水の立っているページ内の
レコードは、再ハシシュして不要レコドでないものだけ
を検索対象とする。
第2図は、従来例として説明した第5図と同じ木状ハツ
シュのケースについての本発明の適用例を示している。
この木状ハツシュのハツシュ関数は。
h k(key) = key// 2 k  である
ハツシュ関数の値が、ブイレフ!・リエントリ番号に対
応している。kは、ディレクトリエントリ拡張回数、/
/は、剰余を表す。
初期データとして、002,003を挿入すると、第2
図(イ)に示す状態になる。スプリット中表示Fは′0
”である。
次に、005の値を持つレコードを挿入しようとした場
合、そのページが一杯であるので、ページ複写のスプリ
ットを行う。これにより、第2図(ロ)に示すような状
態になる。(003)、 (002)は、不要レコード
であるが、ページ上での直接的な不要レコードの表示は
ない。スプリット中表水Fは、“1′にセットされる。
挿入しようとする005のレコードをハツシュすると、
ディレクトリエントリ「1」が示すページに挿入すべき
ことがわかる。そこで、そのページの不要レコードを再
ハツシュによって求め、第2図(ハ)に示すように、そ
の領域に005のレコードを挿入する。なお、この不要
レコードは。
005のレコードが挿入できる分だけ見つければよく、
この段階で、ページ内のすべての不要レコードを探す必
要はない。
他の機会に、すべての不要レコードを削除したときに、
スプリット中表示Fを“0“に戻す。
[リニア・ハツシュへの適用例] リニア・ハツシュでは、ページが一杯になったならば、
オーバフローページにレコードを格納しスプリットを遅
延する。例えば、ある量のレコードを挿入すると、自己
調整機能がスプリットポインタSPの内容を1つ進めて
、スプリット処理を開始する。
スプリット処理では、新ページを確保して、旧ページの
内容を複写する。ハツシュ値からページを求めるため、
複写による不要なレコードは、キー検索対象外となる。
実際のデータヘースでは、ハツシュ値によらずに、順検
索する場合がある。そのため、スプリット中表示Fを立
て、後で自己調整機能が動作して。
ページ内の不要レコードをすべて削除レコードとしたな
らば、スプリット中表示Fを消す。順検索では、スプリ
ット中表示Fの立っているページ内のレコードは、再ハ
ツシュして、不要レコードでないものだけを検索対象と
する。
第3図は、従来例として説明した第6図と同じリニア・
ハツシュのケースについての本発明の適用例を示してい
る。
スプリットポインタSPが、現在、第2ページ目にあり
、それを第3ページ目に移動するときの再編成において
、第3図に示すように、第2ページ目のプライムページ
PPおよびオーバフローページOPを、そのまま複写す
る。そして、スプリット中表示(図示省略)を立てる。
その後、スプリットポインタSPを、第3ページを指す
ように進める。この処理は、再ハシシュを必要としない
ので、高速に処理することができる。
[部分拡張ハツシュへの適用例] 部分拡張ハツシュの場合には、グループ数で複写ページ
数が決まる。グループ数が2の場合、それぞれのページ
複写操作によって、各グループと新規ページは、2ペー
ジ(プライムページとオーバフローページ)ずつの構成
となる。グループ数がnの場合、各グループと新規ペー
ジは、nページずつの構成となる。以下は、リニア・ハ
ツシュと同様である。
第4図は9本発明のリニア・ハツシュ構造における一実
施例の処理構成を示している。
第4図に示すスプリット制御デーモン処理部20は、第
1図に示す格納構造変更処理部12に相当する。21は
バッファ、22は二次記憶装置l6における格納場所と
バッファ21との関係などを示すアドレス変換表を表す
格納構造アクセス処理部11は、レコード挿入。
キー指定および順検索によるレコード検索、レコード更
新、レコード削除などの処理機能を持つ。
スプリット制御デーモン処理部20は、プライムページ
複写、オーバフローページ複写、不要レコード削除、オ
ーパフ「1−ページ統合などの処理機能を持つ。
バッファ制御部15は、ページ読み込み、ページ書き出
し、新ページ獲得、アドレス変換表22の更新などの処
理機能を持つ。
格納構造アクセス処理部11は、レコードにアクセスす
るときに、バッファ制御部15に、ページ読み込みを依
頼する。読み込みページは、アドレス変換表22を介し
て、二次記憶装置16と関連づけられる。バッファ制御
部15は、レコードの挿入依願などにより、挿入ページ
が一杯になったならば、オーバフローページを切り出し
て、そこにレコードを格納する。
3 スプリット制御デーモン処理部20は、格納構造アクセ
ス処理部11とは非同期に動作する。スプリットが必要
になったならば、スプリットポインタSPから、スプリ
ット対象ページを求める。
図ではPページである。このPページには、現在。
オーバフローページ(0ページ)が1つ存在している。
このスプリット制御では、オンライン・トランザクショ
ン処理向はデータベースの自己調整機能として、スプリ
ット処理をいくつかの処理単位に分割することで、シス
テム性能を安定させるようにしている。
以下に1本実施例におけるスプリット制御の処理単位の
フローを示す。それぞれのフェーズは。
スプリット制御デーモン処理部20による処理で。
何多重かの同時走行が可能になっている。なお。
プログラムを同時走行させる技術については、タスク制
御やプロセス制御として種々の方式が知られているので
、その詳細な説明は省略する。
■ アドレス変換表22に新しいページエントリ4 を登録し、1つの複写ページを作る。
■ オーバフローページが存在すれば、新しいページエ
ントリを登録し、その1つの複写ページを作る。
■ オーバフローページの複写が終了するまで処理■を
繰り返す。
■ 旧ページ(複写元)、新ページ(複写先)内の1つ
のレコードを再ハツシュして、不要レコードを削除する
■ オーバフローページの統合処理をする。この統合処
理は、不要レコードを削除した後のページの使用率が1
例えば40%というような、ある基準以下になったもの
が、2つ以上ある場合に、それらを1つまとめて、オー
バフローページを返却する処理である。なお、この統合
を省略して、オーバフローページがすべて空きになって
から、返却するようにしてもよい。
■ バッファ制御論理にしたがって1以上の処理結果を
、二次記憶装置16に反映する。
以上の処理単位■〜■については、ばらばらでも、いく
つかにまとめてもよい。例えば■〜■を。
スプリット制御フェーズ、■〜■を自己調整フェーズと
することができる。
第4図の例では、具体的には1次の処理を行う。
・PページをP”ページとして、複写する。この新ペー
ジの獲得処理では、バッファ制御部15が。
−次記憶上で新規ページを獲得する。
・アドレス変換表22に、P”エントリを登録する。
・P、P’ ページにスプリット中表示を立てる。
・オーバフローページ0を、0“ページに複写し。
それぞれスプリット中表示を立てる。
・スプリントページの1つのP内のレコードを再ハツシ
ュして、不要レコードを削除する。
・すべてのレコードを処理した後に、スプリット中表示
を消す。
・P”ページについても、Pと同様の処理をする。
・0ページ、0”ページについても、Pと同様の処理を
するが、ページ内がすべて空きとなったならば、オーバ
フローページを返却する。
上記処理の間、格納構造アクセス処理部11で順検索機
能を使用する場合には、スプリット中表示がページに立
っていたならば、そのページ内のレコードを再ハツシュ
して、不要レコードであるかを確かめる。
リニア・ハツシュについて説明したが、木状ハツシュ、
部分拡張ハツシュなどでも、同様の処理構成で対応でき
る。
上述の実施例では、オーバフローページは、リンク構造
としているが、リカーシブ・リニア・ハツシュとして知
られているように、オーバフロー構造として、リニア・
ハシシュを使用してもよい。
また、オーバフロー構造として、2進木構造を使用する
こともできる。
第4図に示すスプリット制御デーモン処理部20は、格
納構造アクセス処理部11と非同期で動作するが、格納
構造アクセス処理部11と同期して動作するようにする
ことも可能である。ただし。
この場合1本格的なオンライン・トランザクション処理
向けではなくなる。
格納構造アクセス処理部11のレコード検索で。
順検索機能がない場合もある。
〔発明の効果〕
以上説明したように1本発明によれば、フォアグラウン
ドで動作するトランザクション処理が。
バックグラウンドで動作する自己調整機能により。
長時間、排他待ちになる可能性を低下させることができ
る。また、システム全体として、トランザクション処理
と格納構造変更の自己調整機能とのコストをバランスさ
せることが可能になる。
【図面の簡単な説明】 第1図は本発明の原理説明図。 第2図は本発明の木状ハツシュへの適用例。 第3図は本発明のリニア・ハツシュへの適用例。 第4図は本発明の実施例によるリニア・ハツシュ構造の
処理構成例。 第5図は従来の木状ハツシュの例。 第6図は従来のリニア・ハツシュの例 第7図は従来のスプリ・ント処理の例。 第8図は従来のスプリット制御の概念図を示す。 図中、10は処理装置、11は格納構造アクセス処理部
、12は格納構造変更処理部、13はペジ複写処理、1
4は不要レコード削除処理、15はバッファ制御部、1
6は二次記憶装置、17はデータ格納部を表す。

Claims (1)

  1. 【特許請求の範囲】 ダイナミック・ハッシュ法を用いた格納構造により、デ
    ータを管理するデータ処理システムにおいて、 スプリット時に、新ページを確保して、スプリット対象
    ページの内容を、新ページに複写する処理過程(13)
    と、 前記複写処理後のスプリット対象ページおよび新ページ
    について、再ハッシュを行い、不要レコードを削除する
    処理過程(14)とを備え、前記2つの処理過程を、分
    離して動作可能にしたことを特徴とするダイナミック・
    ハッシュにおけるスプリット制御方法。
JP1299210A 1989-11-17 1989-11-17 ダイナミック・ハッシュにおけるスプリット制御方法 Expired - Lifetime JP2871755B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1299210A JP2871755B2 (ja) 1989-11-17 1989-11-17 ダイナミック・ハッシュにおけるスプリット制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1299210A JP2871755B2 (ja) 1989-11-17 1989-11-17 ダイナミック・ハッシュにおけるスプリット制御方法

Publications (2)

Publication Number Publication Date
JPH03158966A true JPH03158966A (ja) 1991-07-08
JP2871755B2 JP2871755B2 (ja) 1999-03-17

Family

ID=17869577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1299210A Expired - Lifetime JP2871755B2 (ja) 1989-11-17 1989-11-17 ダイナミック・ハッシュにおけるスプリット制御方法

Country Status (1)

Country Link
JP (1) JP2871755B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262074A (ja) * 1994-03-07 1995-10-13 Internatl Business Mach Corp <Ibm> キャッシュ管理方法、コンピュータ・ファイル・システム及びキャッシュ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262074A (ja) * 1994-03-07 1995-10-13 Internatl Business Mach Corp <Ibm> キャッシュ管理方法、コンピュータ・ファイル・システム及びキャッシュ装置

Also Published As

Publication number Publication date
JP2871755B2 (ja) 1999-03-17

Similar Documents

Publication Publication Date Title
US10496283B2 (en) Adaptive prefix tree based order partitioned data storage system
CN109213772B (zh) 数据存储方法及NVMe存储系统
US9672235B2 (en) Method and system for dynamically partitioning very large database indices on write-once tables
US20230006144A9 (en) Trie-Based Indices for Databases
CN110083601B (zh) 面向键值存储系统的索引树构建方法及系统
Jagadish et al. Incremental organization for data recording and warehousing
US7096227B2 (en) Database utilities
US20090307241A1 (en) Optimizing complex path endpoint resolution
US20130013602A1 (en) Database system
US7805427B1 (en) Integrated search engine devices that support multi-way search trees having multi-column nodes
CN109445702B (zh) 一种块级数据去重存储系统
JP2005267600A5 (ja)
US10289709B2 (en) Interleaved storage of dictionary blocks in a page chain
US10521117B2 (en) Unified table delta dictionary memory size and load time optimization
CN113535670B (zh) 一种虚拟化资源镜像存储系统及其实现方法
Larson Grouping and duplicate elimination: Benefits of early aggregation
Agrawal et al. Survey on Mongodb: an open-source document database
WO2019174558A1 (zh) 一种数据索引方法及装置
Han et al. TeksDB: weaving data structures for a high-performance key-value store
JPH08235040A (ja) データファイル管理システム
JPH03158966A (ja) ダイナミック・ハッシュにおけるスプリット制御方法
Wu et al. SequenceFile storage optimization method based on pile structure
US20230376461A1 (en) Supporting multiple fingerprint formats for data file segment
Omiecinski Concurrent file reorganization: Clustering, conversion and maintenance
Jha et al. AxomDB: A Distributed and Scalable In-memory Database System

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080108

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090108

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100108

Year of fee payment: 11

EXPY Cancellation because of completion of term