JPS61279960A - バッファ管理方法 - Google Patents

バッファ管理方法

Info

Publication number
JPS61279960A
JPS61279960A JP60120462A JP12046285A JPS61279960A JP S61279960 A JPS61279960 A JP S61279960A JP 60120462 A JP60120462 A JP 60120462A JP 12046285 A JP12046285 A JP 12046285A JP S61279960 A JPS61279960 A JP S61279960A
Authority
JP
Japan
Prior art keywords
page
buffer
requested
users
dual vector
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
JP60120462A
Other languages
English (en)
Other versions
JPH0679282B2 (ja
Inventor
Shunichi Torii
俊一 鳥居
Keiji Kojima
啓二 小島
Meiji Sakata
坂田 明治
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 JP60120462A priority Critical patent/JPH0679282B2/ja
Publication of JPS61279960A publication Critical patent/JPS61279960A/ja
Publication of JPH0679282B2 publication Critical patent/JPH0679282B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はバッファ管理方式に関し、特に外部記憶の一部
をデータブロックを単位に主記憶上に常駐化し、データ
ブロックの内容を主記憶アドレスで参照可能とするバッ
ファ管理方式に関する。
すなわち、本発明はデータベース管理システム(以下D
BMSと略す)において、外部記憶上のデータベースの
内容をデータブロックを単位として常駐化するバッファ
管理を高速化する方式に関するものである。
〔発明の背景〕
DBMSにおいて、データブロックはページと呼ばれ、
ページ番号により一意に識別される様になっている。従
来は、(たとえば、特開昭57−169983)小容量
の主記憶上のバッファを前提にバッファのヒツト率が高
くなる点を重視し、バッファをページを単位としたLR
Uチェインにより制御している。しかしこの方法では、
主記憶容量や、参照要求(すなわちバッファアドレスへ
の変換と常駐化の要求)ページ数が増加した時、処理時
間が著しく増加するという欠点を有している。
すなわち、(1)バッファアドレスに変換するため要求
するページを有するバッファをLRUチェイン上でサー
チする。(2)要求したページを解放指示があるまで常
駐化を保証するため要求ページ毎にバッファ毎の使用者
数を更新するの2点に多大の処理時間を要求する。特開
昭57−169983に開示された方法では(1)につ
いて改善が多少期待されるが、(2)については改善が
まったく期待できない、また、特に関係データベース管
理システムにおいては、処理にレコード毎の並列性があ
り、たとえばベクトルプロセッサの適用による高速化の
可能性が考えられるが、上記バッファ管理が実行するレ
コードを保持するページのバッファアドレスを算出する
処理はチェインを操作する逐次処理のためベクトル化が
困難である。
〔発明の目的〕 本発明の目的は、大容量のバッファと多数ページの参照
要求に対して、要求ページ番号のバッファアドレスへの
変換および常駐化の保証を高速に実行するバッファ管理
方式を提供することにある。
別の目的は、バッファ管理処理もベクトル適用可能とし
ベクトルプロセッサによる高速化を実現するバッファ管
理方式を提供することにある。
〔発明の概要〕
関係データベースにおいては、情報は複数のレコードか
らなるテーブルと呼ばれる論理的データ構造で記述され
ている。1つのテーブルは物理的には複数の固定長のペ
ージに分割されて、ディスク上に格納され、1つのペー
ジには複数のレコードを保持することができる。従来は
、ルコード毎にバッファ管理を使用してレコード保持す
るページのバッファアドレスを算出している。本発明で
は、同一テーブルに属する複数個のレコードに対してそ
のレコードを保持する一般には複数ページのバッファア
ドレスに一括して変換し、かつ常駐化を保証するための
使用者数の更新も一括した変換に対して一度しか実行し
ない点に特徴がある。
〔発明の実施例〕
以下本発明の実施例を第1図以降を用いて説明する。第
1図のバッファ管理ユニットにおいて、バッファの管理
情報(ページデュアルベクトル)も、アドレス変換要求
情報もデュアルベクトルと名付けた新しいベクトル形式
で構成されている。
デュアルベクトルの各ベクトル要素は前半のフロント部
と後半のリア部に分かれている。
複数のレコードを格納するページのページ番号の一覧を
入力とし対応したバッファのアドレスに変換を要求する
時、ページ番号主記憶アドレス変換処理5には次の2つ
が入力される(1)上記レコードが属するテーブル名を
格納した要求テーブル名6.(2)リア部にそれぞれの
レコードを保持するページ番号(一般にレコードにもレ
コード番号が付けられており、その上位ビットがページ
番号を示している)を格納した要求ページデュアルベク
トル4(要素数は、レコード数と等しい)。
バッファは、テーブルを単位に管理されており、マスタ
ブロック1より始まるテーブルと対応したテーブルブロ
ックA、B、C・・・のチェインが構成されている。テ
ーブルブロックA21の第1のフィールド21aには、
チェイン上の次のテーブルブロック22へのポインタ、
第2のフィールド21bにはテーブル名、第3フイール
ド21cには使用者数、第4フイールド2LDにはペー
ジデーL 7 /L/ S ′h )LI A 31 
”−(71′< :/ ″h’格sa紅      1
いる。ページデュアルベクトルの各要素のプロント部に
はその要素が管理するバッファの主記憶アドレス、リア
部にはそのバッファが格納するページのページ番号を格
納している。データブロックB22、データブロックC
23、およびページデュアルベクトルB32、ページデ
ュアルベクトルC33もそれぞれ同一形式である。
第2図は、アドレス変換要求に対して第1図のページ番
号主記憶アドレス変換処理部5が各デュアルベクトルに
対して行なう処理フローを示したものである。
第1の処理71では、要求対象テーブルを管理するテブ
ールロツクを見つけるため、マスタブロック1からのチ
ェインをたどりながらテーブル名の一致を条件にサーチ
する。もし見つからない場合には、新しいテーブルブロ
ックをチェインに追加する。したがってこのチェインは
、FIFOに属するものであるが、LRUに変換するこ
とも容易である。
第2の処理72では、サーチにより見つかった該当テー
ブルブロックの使用者数を+1増加することにより、以
降本テーブルに属するページを保持するバッファを他の
ページのために使用したりしないことすなわち常駐化を
保証する。
第3の処理は1本処理の特徴の1つである要求ページデ
ュアルベクトル4のページ番号に関するソートである。
最初のソートに先立って、要求ページデュアルベクトル
4のフロント部に0,1゜2・・・の通し番号を挿入す
る。これはソートによりデュアルベクトルの各要素の順
番がかわっても、元に戻すことを可能とするためであり
後述する10番目の処理80で利用される。「ソート」
は、デュアルベクトルのリア部が上昇順となる様に実行
され、結果はページ番号主記憶アドレス変換部が管理す
る第1の作業用デュアルベクトル(第1図の51)に格
納する。
第4の処理73では、第1の作業用デュアルベクトルか
ら、要求デュアルベクトル31にリア部の一致したもの
が無い要素を見つけるため「ディファレンス」を実行す
る。「ディファレンス」の演算では、2つのリア部がソ
ートされたデュアルベクトル(以下右側、左側と呼ぶ)
を入力し、先頭の要素同士から次の手順を繰返し、左側
のデュアルベクトル要素がなくなるまで続ける。
(1)右側と左側の要素のリア部同士を比較する。
(2)左側が大きいか右側に要素が無くなれば、左側の
要素を出力し、左側は次の要素を取出す。
(3)右側が大き。ければ、右側は次の要素を取出す。
2つのデュアルベクトルはリア部がソートされているの
で出力には、そのリア部の値が一致する要素が右側にな
かった左側の要素を持ったデュアルベクトルが作成され
る。すなわち出力の集合は左側の集合から右側の集合を
引いた差の集合となっている。処理74では、常駐化が
なされておらず、新規にロードすべきページ番号を持っ
た要素が第2の作業デュアルベクトル(第1図の52)
上に格納される。
第5の処理75での判定は、第2の作業デュアルベクト
ルの要素数が0であるかの判定であり、Oより大きい時
は新規にロードすべきページが少なくとも一つ存在する
ことを示している。
第6の処理76から第8の処理78までは、新規にロー
ドすべきページが少なくとも1つは存在する時に実行さ
れる。
第6の処理76は、常駐化しなくても良いページを持つ
バッファをさがし、そのバッファを新規ロード要求のペ
ージに再割当を行なう処理である。
最初に第2のデュアルベクトルよりリア部すなわちペー
ジ番号の重複するものを排除し、新規にロードすべきペ
ージ数を算定する。次に再びマスタブロック1から始ま
るテーブルブロックのチェインをたどりながら、使用者
数が0となっているテーブルブロックを見つける0次に
、見つけたテーブルブロックがポイントするページデュ
アルベクトルの一部又は全部が管理しているバッファを
必要なだけ新規にロードすべきページに割当てる。
すなわち、第2の作業用デュアルベクトルのフロント部
に捻出した各バッファのアドレスを挿入する。
第7の処理では、ディスクよりロードすべきページを読
出し第6の処理で捻出したバッファに格納する。
第8の処理では、「マージ」により既にロード済のペー
ジに関する古い内容のページデュアルベクトルと第2の
デュアルベクトルを統合して、新しい内容のページデュ
アルベクトルを作成する。
「マージ」の演算では、2つのリア部がソートされたデ
ュアルベクトル(以下右側、左側と呼ぶ)を入力し、先
頭の要素同士から次の手順を繰返し、面側のデュアルベ
クトル要素がなくなるまで続ける。
(1)右側と左側の要素のリア部同士を比較する。
(2)右側が小さいか、左側に要素が無くなれば、右側
の要素を出力し、右側は次の要素を取出す。
(3)左側が小さいか、右側に要素が無くなれば、左側
の要素を出力し、左側は次の要素を取出す。
したがって出力には、2つの入力デュアルベクトルの和
に相当するデュアルベクトルがリア部に関してソートし
た関係を保存したまま作成される。
第9の処理79では、「マージジョイン」によりページ
番号からバッファの主記憶アドレスを算出する。「マー
ジジョイン」の演算では、2つのリア部がソートされた
デュアルベクトルc以下右側1.左側と呼ぶ)を入力し
、先頭の要素同士から次の手順を繰返し、少なくとも片
側のデュアルベクトル要素がなくなるまで続ける。
(1)右側と左側の要素のリア部同士を比較する。
(2)小さい側は、次の要素を取出す。
(3)等しい時、右側フロント部を出力のフロント部に
、左側のフロント部を出力のリア部に出力する。左側は
次の要素を取り出す。
ここでは、左側は第3の処理73で作成した第1作業用
デュアルベクトル(フロント部に通し番号、リア部に要
求ページ番号を持つ)、右側は新しい内容のページデュ
アルベクトルとし、出力はフロント部には通し番号、リ
ア部には求めるバッファの主記憶アドレスを持つものを
第3の作業デュアルベクトル上(第1図の53)に作成
する。
第10の処理80では、第3の作業デュアルベクトルの
各要素について、リア部のバッファアドレスをフロント
部の通し番号が示す要求ページデュアルベクトル要素の
フロント部に挿入する。
以上の処理により、アドレスの変換および常駐化の保証
が実行される。
第3図は、ページ参照の終了時にページ解放要求をペー
ジ番号主記憶アドレス変換処理部が実行する処理を示し
たものである。入力は、要求テーブル名6だけである。
第1の処理90では、テーブル名の一致するデータブロ
ックを第2図の71と同一手順でサーチする。
第2の処理91では、見つかったテーブルブロック中の
使用者数を一1減少する。これにより、本テーブルの常
駐化を要求している使用者の減少を報告し、もしOとな
れば該当テーブルの常駐化は不要であり以降のアドレス
変換要求では、該当テーブルが使用していたバッファは
別のテーブルの新しいページに割当可能となる。
〔発明の効果〕
本発明によれば、第2図に示す様な「マージ」「ソート
」、「ディファレンス」、「ジョイン」等の単純な機能
の組合せによりバッファ管理を実現することができる。
バッファの個数をm、アドレスを変換したいレコードの
個数をnとすれば、バッファをサーチしアドレスを算定
する処理は従来処理がO(nXm)であるのに対し、ソ
ート処理を含めてもO(n Q ogn+ n 十m)
に減少できる。
また、常駐化を保証する処理も従来は、0(n)であっ
たものが1回で良くなる。
また、「ソート」等の機能はベクトル演算の専用ハード
ウェアを考案すれば、さらに高速に処理可能である。
【図面の簡単な説明】
第1図は、バッファ管理ユニット構成図、第2図は、ペ
ージ番号主記憶アドレス変換処理部のアドレス変換要求
時のフロー図、第3図は、同じく変換処理部のページ参
照終了時のフロー図。

Claims (1)

  1. 【特許請求の範囲】 1、外部記憶上に格納されかつ論理的なグループを構成
    する複数の付番されたデータブロックの一部を主記憶上
    のバッファに常駐化し、複数のデータブロック番号を入
    力として複数の指定された番号のデータブロックの常駐
    化されたバッファのアドレスに変換するバッファ管理ユ
    ニットにおいて、 論理的なグループ毎に常駐化されたデータブロック番号
    と主記憶上のバッファアドレスの対を要素に番号順に並
    べられたベクトルと、使用者数を格納する領域を持ち、
    変換を要求された複数のデータブロック番号を番号順に
    並べかえる手順と、 上記複数のデータブロック番号の属する論理グループの
    上記使用者数を格納する領域を要求の毎に更新する手段
    を有するバッファ管理方式。
JP60120462A 1985-06-05 1985-06-05 バッファ管理方法 Expired - Lifetime JPH0679282B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60120462A JPH0679282B2 (ja) 1985-06-05 1985-06-05 バッファ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60120462A JPH0679282B2 (ja) 1985-06-05 1985-06-05 バッファ管理方法

Publications (2)

Publication Number Publication Date
JPS61279960A true JPS61279960A (ja) 1986-12-10
JPH0679282B2 JPH0679282B2 (ja) 1994-10-05

Family

ID=14786764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60120462A Expired - Lifetime JPH0679282B2 (ja) 1985-06-05 1985-06-05 バッファ管理方法

Country Status (1)

Country Link
JP (1) JPH0679282B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6227821A (ja) * 1985-07-29 1987-02-05 Hitachi Ltd バツフア管理方式

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59220853A (ja) * 1983-05-27 1984-12-12 Toshiba Corp デイスクキヤツシユシステム
JPS6073771A (ja) * 1983-09-29 1985-04-25 Fujitsu Ltd 直接アクセス記憶装置の逐次化方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59220853A (ja) * 1983-05-27 1984-12-12 Toshiba Corp デイスクキヤツシユシステム
JPS6073771A (ja) * 1983-09-29 1985-04-25 Fujitsu Ltd 直接アクセス記憶装置の逐次化方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6227821A (ja) * 1985-07-29 1987-02-05 Hitachi Ltd バツフア管理方式

Also Published As

Publication number Publication date
JPH0679282B2 (ja) 1994-10-05

Similar Documents

Publication Publication Date Title
US20220255014A1 (en) Trie-Based Indices for Databases
US10169366B2 (en) Deduplicated file system
US20070078909A1 (en) Database System
JP2000187668A (ja) グループ化方法と重複排除方法
US20020065793A1 (en) Sorting system and method executed by plural computers for sorting and distributing data to selected output nodes
JP3363292B2 (ja) データベース管理システム
US5918231A (en) Object-oriented database management system with improved usage efficiency of main memory
CN111125216A (zh) 数据导入Phoenix的方法及装置
CN111126619A (zh) 一种机器学习方法与装置
WO2015129109A1 (ja) インデックス管理装置
JPS61279960A (ja) バッファ管理方法
US11868331B1 (en) Systems and methods for aligning big data tables in linear time
US8321480B2 (en) Full-function to high availability large database conversion
CN116737664B (zh) 一种面向对象的嵌入式数据库高效索引组织方法
EP3683698B1 (en) Data storage method and system for datasets
US11734282B1 (en) Methods and systems for performing a vectorized delete in a distributed database system
JP2871755B2 (ja) ダイナミック・ハッシュにおけるスプリット制御方法
JPS6382532A (ja) 論理アドレスから実アドレスへの変換方式
JP2752767B2 (ja) バッファ管理方式
JPS62145441A (ja) キ−順デ−タセツトの更新処理方式
JPS63150724A (ja) デ−タアクセス処理方式
JPS63285631A (ja) 索引ファイル更新処理方式
JPH06208497A (ja) データベース管理方法
JPH03113626A (ja) バッファ制御方式及び装置
JPS63189955A (ja) 仮想計算機システムにおけるデ−タ転送処理方式