JP2000322293A - データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体 - Google Patents

データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体

Info

Publication number
JP2000322293A
JP2000322293A JP11128136A JP12813699A JP2000322293A JP 2000322293 A JP2000322293 A JP 2000322293A JP 11128136 A JP11128136 A JP 11128136A JP 12813699 A JP12813699 A JP 12813699A JP 2000322293 A JP2000322293 A JP 2000322293A
Authority
JP
Japan
Prior art keywords
data
length
block
record
stored
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.)
Pending
Application number
JP11128136A
Other languages
English (en)
Inventor
Nobuo Kawamura
信男 河村
Masashi Tsuchida
正士 土田
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 JP11128136A priority Critical patent/JP2000322293A/ja
Publication of JP2000322293A publication Critical patent/JP2000322293A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 データベースの格納効率を向上させることが
可能な技術を提供する。 【解決手段】 レコードをブロックに格納して管理する
データベース管理方法において、レコード中のデータを
そのレコードが格納されるブロックとは別のブロックに
格納するかどうかを判定する為のしきい値を設定するス
テップと、レコード中のデータの長さが前記しきい値以
下である場合に、当該データをそのレコードが格納され
るブロックと同一のブロックに格納し、レコード中のデ
ータの長さが前記しきい値を超える場合に、当該データ
をそのレコードが格納されるブロックとは別のブロック
に格納するステップとを有するものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はレコードをブロック
に格納して管理するデータベース管理装置に関し、特に
レコード中の可変長データをそのデータ長に応じて別の
ブロックに格納するデータベース管理装置に適用して有
効な技術に関するものである。
【0002】
【従来の技術】データベース管理システムとは、データ
を記録し保持するコンピュータシステムである。特に、
データベース管理システムの内、リレーショナルデータ
ベース管理システムにおいては、データベースはユーザ
から二次元の表形式で見られる表(或いは、リレーショ
ン)から成り、かつ、この表は複数の行(レコード、或
いはタップル)から構成されている。また、タップルは
複数個の列(アトリビュート、或いはフィールド)から
構成され、各列にはその列の特性を示すデータ型、デー
タ長等が規定される。
【0003】ユーザまたはアプリケーションプログラム
は、データベースに対する要求またはコマンドを発行す
る(問合せと呼ぶ)ことにより、データを処理(選択、
更新、挿入または削除)する。SQL(構造化照会言
語)等のリレーショナル・データベース管理システムの
データ問合せ及び処理言語では、問合せは非定型であ
る。すなわち、ユーザまたはアプリケーションプログラ
ムは、必要なことを指定するだけで、それを実行する為
の処理手順を指定する必要がない。また、ユーザやアプ
リケーションプログラムは、問合せによってアクセスす
る表が格納されている場所を意識する必要もない。
【0004】通常、データベースの格納については、一
般的に物理的に固定長のブロックを最小アクセス単位と
するデータベース領域に表を格納する。また、データベ
ース領域は、一つまたは複数の外部記憶装置上のファイ
ルで構成される。この場合、表の行は前記ブロック内に
複数の行が格納される様にする。
【0005】従来、データベース管理ステムを使用して
構築した業務で取り扱うデータは、数値、文字(固定長
でかつ短い文字列)が主流であった。また、定義された
表も一つの行はなるべく必要最小限のデータから構成す
るものが多い為、短い行長で構成されることが多かっ
た。検索においても、固定長のデータであればB木イン
デクスによって高速なアクセスが可能であったが、可変
長データの場合にはB木インデクスが有効になるケース
が前方一致に限定された。こういったデータベースで
は、可変長データは検索条件に指定されることはなく、
条件によって絞り込まれたデータの中から取り出す情報
に含まれることが大半であった。
【0006】こういったデータベースを取り扱うデータ
ベース管理システムではSQLにおける可変長データ型
であるVARCHAR型はブロック長よりも長いサイズ
の型を定義できるが、同じデータベース領域内に格納す
るのが一般的である。但し、VARCHAR型等の可変
長データを持つ行を格納する場合には、二通りの格納方
法がある。一つは、挿入する行の行長がブロック長を超
える場合、行の途中から別のブロックに格納する方法で
ある。もう一つは、可変長データ型の列のデータがある
一定の長さを超える場合、無条件にその列だけを別のブ
ロックに分岐して格納し、分岐先のポインタ(通常、行
番号)を行の該当する列の部分に格納する方法である。
【0007】例えば、通常行内に格納し、可変長データ
列の長さを1バイトで管理する場合、255バイトを超
えるデータは内部形式上管理できないので、別のブロッ
クに格納する方法が取られる。これらの格納方法につい
ては、「TRANSACTION PROCESSIN
G:CONCEPTS AND TECHNIQUES」
JIM GRAY、ANDREAS REUTER共著、
MORGAN KAUFMAN発行の「14 The T
uple−Oriented File System」
に記述されている。
【0008】近年、VARCHAR型よりも大きな可変
長データ型としてBLOB型のデータ型が規格化され、
文書や画像等のマルチメディアデータが取り扱える様に
なった。BLOB型は、前者のVARCHAR型よりも
長さの長いデータを格納するのに使用され、一般的には
別の専用のデータベース領域に格納し、通常の行と同じ
データベース領域には格納しない。BLOB型の様な長
大可変長データの格納方法については、特開平9−30
5449号公報に記載されている。
【0009】前記、BLOB型ではマルチメディアデー
タを扱える様にはなったが、依然として検索条件を与え
て検索することはできなかった。マルチメディアデータ
を扱った新しい業務形態の要望が高まり、文章や画像の
検索を可能にするデータベース管理システムが見られる
様になったが、文章や画像の全てが大きなデータではな
い為、新聞記事等の様な比較的短いデータはBLOB型
として格納するよりもVARCHAR型で格納すること
を期待するユーザが増えてきている。
【0010】そうした場合に、従来の様なVARCHA
R型のデータの格納方法では格納効率が悪いという問題
に直面することになる。また、検索処理においても並列
データベース処理技術が浸透しつつあり、従来の様なイ
ンデクス検索を主体にするのではなく、全件検索等も行
われる様になり、ますます格納効率の向上への期待が高
まっている。
【0011】
【発明が解決しようとする課題】前述の様に、従来の技
術ではデータベース領域へのデータの格納効率に関する
問題が生じる。格納効率で問題になるのは前記従来技術
における前者のVARCHAR型のデータ長が一定のし
きい値を超える場合に無条件に別のブロックへ格納する
場合である。
【0012】一定のしきい値を超える可変長データを無
条件に別のブロックへ格納するのは、その可変長データ
を含まない検索処理の効率を向上させる為であるが、こ
の場合、たとえ行の総長(可変長データ型定義列も含め
る)がブロック長を超えていなくとも、可変長データ列
がしきい値を超える為に当該列データが別ブロックに格
納されることになる。可変長データが別ブロックに格納
される際には、後の更新処理を考慮してそのブロック内
に空き領域が生じる様な格納が行われる為、こういった
列が複数存在する場合に最も格納効率が悪くなる。
【0013】格納効率が悪くなった場合には、検索処理
性能にも影響を与えることになる。しきい値を超える可
変長データだけを格納する専用のブロックが存在する場
合を除くと、全件検索の様な場合には別ブロックに格納
された行イメージも読み込むことになる為、不要なアク
セスが生じる場合が発生する。特に、全件検索において
検索条件に指定する列に可変長データ列を含んでおら
ず、かつ、取り出す列にも含まれていない場合には無駄
なアクセスが発生する。これは、I/O発行回数にも大
きく影響する。
【0014】また、検索条件に指定されていたり、取り
出しする列に含まれている場合にも、同一ブロック内の
行の中にデータが含まれていない為、必ず別ブロックに
格納された可変長データ列に対するアクセスが発生し、
アクセス効率が悪くなるという問題がある。
【0015】データベース領域のブロックサイズによっ
て、格納効率を上げる手段を持つ方法もあるが、可変長
データ列は実際のデータが一定長を超える場合(多くの
場合、1バイトで表現できる長さ(255バイト)を超
える場合となる)に無条件に別ブロックに格納する為、
別ブロックへの分岐を抑制する点では効果がない。
【0016】本発明の目的は上記問題を解決し、データ
ベースの格納効率を向上させることが可能な技術を提供
することにある。本発明の他の目的はデータベースの検
索効率を向上させることが可能な技術を提供することに
ある。
【0017】
【課題を解決するための手段】本発明は、レコードをブ
ロックに格納して管理するデータベース管理装置におい
て、レコード中のデータに応じて指定されたしきい値に
よりレコード中のデータを分岐させるかどうかを制御す
るものである。
【0018】本発明では、データベースの定義を行う際
に、レコード中のデータをそのレコードが格納されるブ
ロックとは別のブロックに格納するかどうかを判定する
為のしきい値を設定する。
【0019】レコードの挿入処理を行う際にはレコード
中のデータの長さとそのしきい値を比較し、レコード中
のデータの長さが前記しきい値以下である場合に、当該
データをそのレコードが格納されるブロックと同一のブ
ロックに格納する。またレコード中のデータの長さが前
記しきい値を超える場合には、当該データをそのレコー
ドが格納されるブロックとは別のブロックに格納する。
【0020】例えば、データベースのレコード中に定義
される可変長データ項目について、その可変長データ項
目に格納されるデータの長さがある程度予想できる場合
に、その平均的なデータ長を考慮し、平均的なデータ長
をある程度上回るしきい値や平均的なデータ長をある程
度下回るしきい値を設定する。
【0021】平均的なデータ長をある程度上回るしきい
値を設定した場合には、それらのレコードの挿入処理の
際に多くのレコード中の可変長データの長さがそのしき
い値以下となるので、別のブロックへの分岐が抑制さ
れ、分岐先のブロックに生じる空き領域が減少してデー
タベースの格納効率を向上させることができる。
【0022】また、平均的なデータ長をある程度下回る
しきい値を設定した場合には、それらのレコードの挿入
処理の際に多くのレコード中の可変長データの長さがそ
のしきい値以上となるので、別のブロックへの分岐が促
進され、分岐元のブロック中の長大データが減少して、
分岐したデータ以外の検索処理を行う際のデータベース
の検索効率を向上させることが可能である。
【0023】以上の様に本発明のデータベース管理装置
によれば、レコード中のデータに応じて指定されたしき
い値によりレコード中のデータを分岐させるかどうかを
制御するので、データベースの格納効率を向上させるこ
とが可能である。
【0024】
【発明の実施の形態】以下にレコード中の可変長データ
にしきい値を指定してその可変長データを別のブロック
に分岐させるかどうか制御する一実施形態のデータベー
ス管理装置について説明する。
【0025】図1は本実施形態のデータベース管理装置
10の概略構成を示す図である。図1に示す様に本実施
形態のデータベース管理装置10は、しきい値指定処理
部100と、データ挿入処理部101とを有している。
【0026】しきい値指定処理部100は、レコード中
のデータをそのレコードが格納されるブロックとは別の
ブロックに格納するかどうかを判定する為のしきい値を
設定する処理部である。データ挿入処理部101は、レ
コード中のデータの長さが前記しきい値以下である場合
に、当該データをそのレコードが格納されるブロックと
同一のブロックに格納し、レコード中のデータの長さが
前記しきい値を超える場合に、当該データをそのレコー
ドが格納されるブロックとは別のブロックに格納する処
理部である。
【0027】データベース管理装置10をしきい値指定
処理部100及びデータ挿入処理部101として機能さ
せる為のプログラムは、CD−ROM等の記録媒体に記
録され磁気ディスク等に格納された後、メモリにロード
されて実行されるものとする。なお前記プログラムを記
録する記録媒体はCD−ROM以外の他の記録媒体でも
良い。
【0028】図1に示される様に本実施形態のデータベ
ースシステムは、主として、中央処理装置11を有する
データベース管理装置10とデータを物理的に格納する
記憶装置13を備えている。データベース管理処理部1
2はデータベース管理装置10上で動作し、記憶装置1
3上に実際のデータを格納しており、記憶装置13に
は、データベース領域14とそのデータの定義情報を格
納する為のシステム定義情報領域15が存在している。
【0029】図2は本実施形態のシステム定義情報領域
15とデータベース領域14の概略構成を示す図であ
る。本実施形態におけるデータベース領域14は記憶装
置13上の連続した領域に確保され、セグメント20と
いう管理単位に分割される。入力されたデータは表単位
にまとめて、連続する記憶装置13からなるデータベー
スのデータベース領域14の記憶可能なエリアの管理単
位セグメント群として格納される。そのセグメント20
は、実データを格納する為のデータ格納領域21とその
データ格納領域を構成するディスク入出力の単位である
ページ群の空き状態を管理する為のページ管理ビットマ
ップ領域22とから構成される。また、システム定義情
報領域15にはデータベース中に定義された表の定義情
報を格納する為のDB定義情報16が存在する。
【0030】次に、本実施形態の動作について説明す
る。図3は本実施形態のデータベースの表の定義例を示
す図である。図3において「NEWS」表は、リレーシ
ョナルデータベースにおけるデータベースアクセス言語
であるSQLのデータ定義言語であるCREATE T
ABLE文によって定義されるものである。
【0031】表「NEWS」は、4個の列「NEWS_
NO」、「DATE」、「HEADLINE」、「CO
NTEXT」で構成される。各々の列定義には、データ
型及びデータ長が指定される。
【0032】「NEWS_NO」列は、データ型として
数値型であるINTEGER型が指定され、データ長は
4バイトとなる。「DATE」列は、データ型として固
定長文字列型であるCHAR型が指定され、データ長は
10バイトと指定している。
【0033】「HEADLINE」列は、データ型とし
て可変長文字列型であるVARCHAR型が指定され、
データ長として255バイトと指定している。「CON
TEXT」列は、データ型として可変長文字列型である
VARCHAR型が指定され、データ長として1200
0バイトと指定している。
【0034】固定長文字列の場合、入力するデータの最
大長は10バイトであり、内部の実装上も10バイトで
表現される。これに対して、可変長文字列の場合は指定
した長さを最大長とし、内部形式も実際のデータ長しか
格納しない。本定義では、更に「NEWS」表をデータ
ベース領域「AREA1」に格納することを宣言してい
る。
【0035】なお本実施形態において、表「NEWS」
にはニュースに関するデータが格納されるものとし、4
個の列「NEWS_NO」、「DATE」、「HEAD
LINE」、「CONTEXT」それぞれには、ニュー
スの番号、日付、ヘッドライン、ニュースの内容が格納
されるものとする。また、この「HEADLINE」の
データは比較的短いデータであり、そのデータ長は通常
255バイト以下であるものとする。「CONTEX
T」のデータは「HEADLINE」のデータよりも長
いデータであるが、動画データ等とは異なり、1024
バイト程度の長さで十分格納されうる新聞記事等のデー
タであるものとする。
【0036】図4は本実施形態のDB定義情報16中の
定義情報の格納例を示す図である。図4に図3で示した
「NEWS」表に関する定義情報が、図2におけるDB
定義情報16中に格納されている様子を示す。ここで
は、DB定義情報として表定義情報管理テーブル81と
列定義情報管理テーブル82が格納されている。
【0037】表定義情報管理テーブル81には、表の情
報が格納され、図3における「NEWS」表の情報とし
て、表名、表番号、表の所有者、列数、データベース領
域名等の情報が格納される。また、列定義情報管理テー
ブル82には、「NEWS」表を構成する5個の列であ
る「NEWS_NO」、「DATE」、「HEAD_L
INE」、「CONTEXT」に関する列名、列番号、
表名、所有者、データ型、データ長及び可変長データを
別のブロックに格納するかどうかを判定する為のしきい
値等の情報が含まれる。
【0038】本実施形態のしきい値指定処理部100
は、図4に示す様にDB定義情報である表定義情報管理
テーブル81及び列定義情報管理テーブル82の内容を
表示し、ユーザからしきい値が入力されると、入力され
たしきい値を、対応する列データのしきい値として列定
義情報管理テーブル82に設定する。
【0039】ユーザは、データベースのレコード中に定
義される可変長データ項目について、その可変長データ
項目に格納されるデータの長さがある程度予想できる場
合に、その平均的なデータ長を考慮し、平均的なデータ
長をある程度上回るしきい値や平均的なデータ長をある
程度下回るしきい値を設定することにより、分岐を行う
かどうかを制御することができる。
【0040】例えば、図3における「NEWS」表の
「CONTEXT」列に格納されるデータが、「102
4」程度の長さでほぼ格納できると予想される場合に、
そのしきい値を「1024」とすることで分岐をできる
だけ抑止して格納効率の向上させることができる。
【0041】なお図3における「NEWS」表では、
「CONTEXT」列定義において可変長データの別ブ
ロックへの分岐をできるだけ抑止する為のしきい値とし
て「1024」が指定されている。実際に「CONTE
XT」列に格納するデータ長が1024バイトを超える
場合には、そのデータは同じ行内ではなく、別ブロック
へ格納される。その他の列については、しきい値は全て
NULLと格納されており、列データの別ブロックへの
分岐を行わないかしきい値として固定値が用いられるこ
とを示している。
【0042】図5は本実施形態のデータ挿入処理部10
1の処理手順を示すフローチャートである。図5では本
実施形態で表のデータの挿入処理がどの様に実施されて
いるかを表しており、図5における1行挿入処理は、図
1におけるデータベース管理処理部12上で動作し、ユ
ーザからSQLのINSERT文によって要求され、処
理されるものとする。ユーザから与えられる入力データ
は1行ずつ列単位で情報が渡されるものとする。本概略
フローを説明する前に行の格納形式を図6に示す。
【0043】図6は本実施形態の行の格納形式の概要を
示す図である。図6では、図2の記憶装置13上のデー
タベース領域14のデータ格納領域21を構成するペー
ジ内の行の格納形式を表しており、行は、先頭に行ヘッ
ダを持ち、行長及び可変長データ列が分岐した行なのか
否かを示す分岐行フラグ等の情報を持っている。行ヘッ
ダの直後には、当該行を構成する列数分の列データへの
オフセットを指すポインタ領域が置かれる。そして、各
列のオフセット領域の直後に列番号順に列データが格納
される。可変長データ型の列の場合には、列データの先
頭にそのデータの長さ情報が格納される。
【0044】行の格納形式を踏まえて、図5の概略処理
フローを説明する。なお、予め図1におけるデータベー
ス管理装置10上にデータベース管理処理部12が確保
した行作成用領域上に行イメージを作成した後にデータ
ベース領域に出力するものとする。
【0045】まず、図6に示した行ヘッダ中の行長に行
ヘッダ長を初期値として設定する(ステップ400)。
次に、列数をカウントする為に初期値として列数を
「0」に設定する(ステップ401)。そして、入力さ
れた行データから1列ずつ列データを読み込む(ステッ
プ402)。列データを読み込み入力データが続く間、
行への列データの設定処理を行う(ステップ403)。
【0046】各列データを読み込んだら、図4における
列定義情報から列のデータ型を照らし合わせ、可変長デ
ータ型かどうかを判定する(ステップ404)。可変長
データ型でない場合、すなわち図3における「NEW
S」表の「NEWS_NO」列、「DATE」列では固
定長データ型であるので、現在の行長に列長を加える処
理を行う(ステップ412)。その後、入力したデータ
を行ヘッダ直後の列数分の列オフセット直後に各々の列
データを設定し、その列データの行内のオフセット値を
該当するオフセット領域に設定する(ステップ41
3)。そして、現在の列数に列毎に「1」を加える(ス
テップ414)。
【0047】「NEWS」表の「HEADLINE」列
の処理の場合、ステップ404において可変長データ型
であると認識され、続いて図4におけるDB定義情報中
の列定義情報のしきい値情報を参照すると、しきい値は
NULLとなっていることが判る(ステップ405)。
つまり、しきい値の指定はない為、しきい値を固定値と
する(ステップ407)。固定値とはデータベース管理
処理部12が予め定めた値であり、その予め定めたしき
い値を超える場合は無条件に列データを別ブロックに分
岐させるものである。ここでは、固定値のしきい値を
「255」と仮定する。「255」と仮定したのは、
「255」が行の内部形式において長さを表わす領域を
1バイトで表現した場合の最大長であり、可変長データ
型の場合には、その長さが255バイトを超えない場合
には分岐させず、更に長さを管理する領域も最小限にす
る必要があるからである。
【0048】ここで処理フローに戻って、「HEADL
INE」列については、前記の様にその長さはしきい値
を超えることはないと仮定している為(ステップ40
8)、通常の固定長型の列と同様にステップ412から
ステップ414までの処理を行って列データを設定す
る。最後に、「CONTEXT」列の入力データが与え
られると可変長データ型であると認識され(ステップ4
04)、しきい値情報がNULLではない為(ステップ
405)、指定された「1024」をしきい値に設定す
る(ステップ406)。
【0049】そして、列長が指定されたしきい値を超え
るかどうかを判定する(ステップ408)。列長がしき
い値を超えていない場合は、当該列は現在の行にそのま
ま格納するものとし、ステップ412からステップ41
4までの処理を行って行中に列を埋め込む。
【0050】本実施形態では、「NEWS」表の「CO
NTEXT」列に格納される新聞記事等のデータは「1
024」程度の長さでほぼ格納できるものとしているの
で、「CONTEXT」列の殆どのデータは現在の行に
そのまま格納される。この為、可変長データが別ブロッ
クに格納される際に生じていた、後の更新処理を考慮し
た空き領域が生じないので、格納効率を向上させること
が可能である。
【0051】一方、ステップ408で、列長が指定され
たしきい値を超えている場合は、可変長データ挿入処理
(ステップ409)によって当該列を別のブロックに格
納する処理を行い、その別ブロックに格納した先頭の分
岐ポインタを返す処理を行う。別ブロックに分岐する場
合、1ブロックでは格納しきれない場合があるが、その
場合は1列を複数のブロックに分割して格納する処理を
行う。
【0052】図7は本実施形態の可変長データ型の列が
別ブロックに分岐した場合の形態を示す図である。ここ
では、「行2」のある列が可変長データ型であって、か
つ、列長がしきい値を超えており、その列が別の2つの
ブロックに分割されて格納されている状態を示してい
る。その場合、元の行中の該当列の部分には、別ブロッ
クに分割された列データの先頭ブロックのポインタが格
納されている。
【0053】また、別ブロックに格納された列データの
先頭ブロックの行の先頭には、更に分割した次のデータ
を格納したブロックの行へのポインタが格納されてい
る。最後に分割されたブロック上の行の分岐先のポイン
タには、これより先に分割していないことを示す為、ポ
インタ値として「0」が設定されている。
【0054】図8は本実施形態の行形式による分割の形
態を示す図である。本分割の形態を更に行形式として詳
細に示したのが図8である。行形式の基本形式は、図6
の説明により示した通りである。図8では、図3の表の
定義例で示した「NEWS」表の「CONTEXT」列
の分岐している状態を示している。分岐した「CONT
EXT」列のブロックにも通常の行と同様に格納する
が、他の列データは持たない為、列オフセット領域は持
っていない。また、行ヘッダには、当該行の可変長デー
タが分岐されたことを示す分岐行フラグが設定されてい
る。全件検索時には、全てのブロックに格納された行を
対象にするが、当該行の様な場合、行ヘッダ部の行形式
を参照することによって、分岐行フラグが設定されてい
れば検索対象から外す処理が行われる。
【0055】ここで、再度、図5の処理フローに戻る。
可変長データを分岐させる処理が行われると(ステップ
409)、返された分岐先のポインタを格納する為、ま
ず、行長に分岐ポインタの長さを加える(ステップ41
0)。そして、実際に返された分岐ポインタを基の行の
中に設定する(ステップ411)。
【0056】分岐ポインタの設定が終了するとステップ
412からステップ414までの処理を行う。最後にス
テップ402において次の列データがないことが判定さ
れると当該行の行長に列数分のオフセット領域の長さを
加える(ステップ415)。そして、作業用領域上に完
成した行イメージを格納すべきブロックを決定する(ス
テップ416)。本行格納ページ決定処理では、ブロッ
ク内に当該行長を格納するだけの空き領域を持つページ
を探す処理を行う。こうして、決定されたブロックへの
行の格納処理を行い行の挿入処理が完了する(ステップ
417)。行を挿入した場合には、必ず行の更新履歴と
してログを出力することは必須である。
【0057】前記の様に本実施形態では、レコード中の
可変長データにしきい値を指定してその可変長データを
別のブロックに分岐させるかどうか制御する場合につい
て説明したが、レコード中の固定長データにしきい値を
指定してその固定長データを別のブロックに分岐させる
かどうか制御することとしても良い。
【0058】すなわち、ユーザによっては、データベー
スの定義の際に本来可変長であるデータについても固定
長の定義を行って、レコード中のデータを全て固定長デ
ータとしている場合があるが、検索に用いられる頻度が
少なく、データ長の大きい固定長データに対してしきい
値を指定して分岐を促進する様にすれば、検索の際にそ
の固定長データが含まれていないブロックのみが参照さ
れ、分岐先の別のブロックが検索されることが無いの
で、データベースの検索効率を向上させることが可能で
ある。
【0059】以上説明した様に本実施形態のデータベー
ス管理装置によれば、レコード中のデータに応じて指定
されたしきい値によりレコード中のデータを分岐させる
かどうかを制御するので、データベースの格納効率を向
上させることが可能である。
【0060】
【発明の効果】本発明によればレコード中のデータに応
じて指定されたしきい値によりレコード中のデータを分
岐させるかどうかを制御するので、データベースの格納
効率を向上させることが可能である。
【図面の簡単な説明】
【図1】本実施形態のデータベース管理装置の概略構成
を示す図である。
【図2】本実施形態のシステム定義情報領域15とデー
タベース領域14の概略構成を示す図である。
【図3】本実施形態のデータベースの表の定義例を示す
図である。
【図4】本実施形態のDB定義情報16中の定義情報の
格納例を示す図である。
【図5】本実施形態のデータ挿入処理部101の処理手
順を示すフローチャートである。
【図6】本実施形態の行の格納形式の概要を示す図であ
る。
【図7】本実施形態の可変長データ型の列が別ブロック
に分岐した場合の形態を示す図である。
【図8】本実施形態の行形式による分割の形態を示す図
である。
【符号の説明】
10…データベース管理装置、11…中央処理装置、1
2…データベース管理処理部、13…記憶装置、14…
データベース領域、15…システム定義情報領域、10
0…しきい値指定処理部、101…データ挿入処理部、
16…DB定義情報、20…セグメント、21…データ
格納領域、22…ページ管理ビットマップ領域、81…
表定義情報管理テーブル、82…列定義情報管理テーブ
ル。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 レコードをブロックに格納して管理する
    データベース管理方法において、 レコード中のデータをそのレコードが格納されるブロッ
    クとは別のブロックに格納するかどうかを判定する為の
    しきい値を設定するステップと、レコード中のデータの
    長さが前記しきい値以下である場合に、当該データをそ
    のレコードが格納されるブロックと同一のブロックに格
    納し、レコード中のデータの長さが前記しきい値を超え
    る場合に、当該データをそのレコードが格納されるブロ
    ックとは別のブロックに格納するステップとを有するこ
    とを特徴とするデータベース管理方法。
  2. 【請求項2】 前記データが可変長データである場合
    に、そのレコードが格納されるブロックと同一のブロッ
    クに当該可変長データを格納する為のしきい値を設定す
    ることを特徴とするデータベース管理方法。
  3. 【請求項3】 前記データが固定長データである場合
    に、そのレコードが格納されるブロックとは別のブロッ
    クに当該固定長データを格納する為のしきい値を設定す
    ることを特徴とするデータベース管理方法。
  4. 【請求項4】 レコードをブロックに格納して管理する
    データベース管理装置において、 レコード中のデータをそのレコードが格納されるブロッ
    クとは別のブロックに格納するかどうかを判定する為の
    しきい値を設定するしきい値指定処理部と、レコード中
    のデータの長さが前記しきい値以下である場合に、当該
    データをそのレコードが格納されるブロックと同一のブ
    ロックに格納し、レコード中のデータの長さが前記しき
    い値を超える場合に、当該データをそのレコードが格納
    されるブロックとは別のブロックに格納するデータ挿入
    処理部とを備えることを特徴とするデータベース管理装
    置。
  5. 【請求項5】 レコードをブロックに格納して管理する
    データベース管理装置としてコンピュータを機能させる
    為のプログラムを記録したコンピュータ読み取り可能な
    記録媒体において、 レコード中のデータをそのレコードが格納されるブロッ
    クとは別のブロックに格納するかどうかを判定する為の
    しきい値を設定するしきい値指定処理部と、レコード中
    のデータの長さが前記しきい値以下である場合に、当該
    データをそのレコードが格納されるブロックと同一のブ
    ロックに格納し、レコード中のデータの長さが前記しき
    い値を超える場合に、当該データをそのレコードが格納
    されるブロックとは別のブロックに格納するデータ挿入
    処理部としてコンピュータを機能させる為のプログラム
    を記録したことを特徴とする記録媒体。
JP11128136A 1999-05-10 1999-05-10 データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体 Pending JP2000322293A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11128136A JP2000322293A (ja) 1999-05-10 1999-05-10 データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11128136A JP2000322293A (ja) 1999-05-10 1999-05-10 データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2000322293A true JP2000322293A (ja) 2000-11-24

Family

ID=14977304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11128136A Pending JP2000322293A (ja) 1999-05-10 1999-05-10 データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2000322293A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231329A (zh) * 2020-10-14 2021-01-15 北京人大金仓信息技术股份有限公司 向数据库***数据的方法、装置、设备和可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231329A (zh) * 2020-10-14 2021-01-15 北京人大金仓信息技术股份有限公司 向数据库***数据的方法、装置、设备和可读存储介质
CN112231329B (zh) * 2020-10-14 2024-04-26 北京人大金仓信息技术股份有限公司 向数据库***数据的方法、装置、设备和可读存储介质

Similar Documents

Publication Publication Date Title
US6070158A (en) Real-time document collection search engine with phrase indexing
US6003043A (en) Text data registering and retrieving system including a database storing a plurality of document files therin and a plural-character occurrence table for a text index and an update text buffer to retrieve a target document in cooperation with the database
JP5922716B2 (ja) 個別にアクセス可能なデータユニットの記憶の取り扱い方法
EP0877327B1 (en) Method and apparatus for performing a join query in a database system
US6658437B1 (en) System and method for data space allocation using optimized bit representation
CA2281287C (en) Method and system for efficiently searching for free space in a table of a relational database having a clustering index
US7117222B2 (en) Pre-formatted column-level caching to improve client performance
US7685104B2 (en) Dynamic bitmap processing, identification and reusability
US20030041055A1 (en) Data access system
US20040225666A1 (en) Materialized view system and method
DeFazio et al. Integrating IR and RDBMS using cooperative indexing
CA2387653C (en) File processing method, data processing device and storage medium
US20080082554A1 (en) Systems and methods for providing a dynamic document index
US20220129428A1 (en) Database key compression
US6343293B1 (en) Storing the uncompressed data length in a LOB map to speed substring access within a LOB value
US20020120617A1 (en) Database retrieving method, apparatus and storage medium thereof
US6640225B1 (en) Search method using an index file and an apparatus therefor
US20180011897A1 (en) Data processing method having structure of cache index specified to transaction in mobile environment dbms
JP4109305B1 (ja) マルチオペレーション・プロセッシングを用いたデータベースのクエリー処理システム
JP2000322293A (ja) データベース管理方法及びその実施装置並びにその処理プログラムを記録した記録媒体
JPH09305622A (ja) 文書検索機能を有するデータベース管理方法およびシステム
US11989169B2 (en) Autonomous refactoring system for database
CN112988668B (zh) 基于PostgreSQL的流式文档处理方法、装置以及装置的应用方法
JP2006106907A (ja) 構造化文書管理システム、索引構築方法及びプログラム
JPH1185585A (ja) 完全メモリ常駐型インデックス方法および装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071018

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071204