JPH09305449A - データベース管理システム - Google Patents
データベース管理システムInfo
- Publication number
- JPH09305449A JPH09305449A JP8121875A JP12187596A JPH09305449A JP H09305449 A JPH09305449 A JP H09305449A JP 8121875 A JP8121875 A JP 8121875A JP 12187596 A JP12187596 A JP 12187596A JP H09305449 A JPH09305449 A JP H09305449A
- Authority
- JP
- Japan
- Prior art keywords
- data
- database
- area
- variable length
- large variable
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 長大可変長データ用データベース領域の再編
成時のオーバヘッドが小さく、且つ、セキュリティや処
理効率の問題を生じることがないデータベース管理シス
テムを提供する。 【解決手段】 基本データ項目のデータは基本行データ
ベース領域50に格納し、長大可変長データ項目のデー
タは長大可変長データ用データベース領域60に格納す
る。長大可変長データ64には通番を付加し、その通番
を基本データ項目中の一つのデータ項目52とし、あた
かも同じデータベース領域内に存在するかのように見せ
る。 【効果】 長大可変長データ用データベース領域60を
再編成しても通番は変化しないから、基本行データベー
ス領域50にアクセスする必要がなく、オーバヘッドを
小さく出来る。また、ファイル管理をシステムプログラ
ムに委ねることがないため、セキュリティや処理効率の
問題を生じない。
成時のオーバヘッドが小さく、且つ、セキュリティや処
理効率の問題を生じることがないデータベース管理シス
テムを提供する。 【解決手段】 基本データ項目のデータは基本行データ
ベース領域50に格納し、長大可変長データ項目のデー
タは長大可変長データ用データベース領域60に格納す
る。長大可変長データ64には通番を付加し、その通番
を基本データ項目中の一つのデータ項目52とし、あた
かも同じデータベース領域内に存在するかのように見せ
る。 【効果】 長大可変長データ用データベース領域60を
再編成しても通番は変化しないから、基本行データベー
ス領域50にアクセスする必要がなく、オーバヘッドを
小さく出来る。また、ファイル管理をシステムプログラ
ムに委ねることがないため、セキュリティや処理効率の
問題を生じない。
Description
【0001】
【発明の属する技術分野】本発明は、データベース管理
システムに関し、さらに詳しくは、画像や音声,文書な
どの長大可変長データ項目のデータを効率良く管理する
ためのデータベース管理システムに関する。
システムに関し、さらに詳しくは、画像や音声,文書な
どの長大可変長データ項目のデータを効率良く管理する
ためのデータベース管理システムに関する。
【0002】
【従来の技術】第1の従来技術では、基本データ項目
(長大可変長データ項目でないデータ項目)のデータ
は、基本行データベース領域に格納する。長大可変長デ
ータ項目のデータは、前記基本行データベース領域とは
異なる長大可変長データ用データベース領域に格納す
る。そして、その長大可変長データ項目のデータを格納
している領域への物理ポインタを、前記基本行データベ
ース領域に格納し、あたかも同じデータベース領域内に
存在するかのように見せる。第2の従来技術では、基本
データ項目のデータは、基本行データベース領域に格納
する。長大可変長データ項目のデータは、前記基本行デ
ータベース領域とは異なる長大可変長データ用データベ
ース領域に各データ毎のファイルとして格納する。そし
て、それらのファイル名を、前記基本行データベース領
域に格納し、あたかも同じデータベース領域内に存在す
るかのように見せる。上記のように、基本行データベー
ス領域と長大可変長データ用データベース領域とを別に
する理由は、両方のデータを同じデータベース領域に混
在させて格納すると、アクセス効率が非常に悪くなるか
らである。
(長大可変長データ項目でないデータ項目)のデータ
は、基本行データベース領域に格納する。長大可変長デ
ータ項目のデータは、前記基本行データベース領域とは
異なる長大可変長データ用データベース領域に格納す
る。そして、その長大可変長データ項目のデータを格納
している領域への物理ポインタを、前記基本行データベ
ース領域に格納し、あたかも同じデータベース領域内に
存在するかのように見せる。第2の従来技術では、基本
データ項目のデータは、基本行データベース領域に格納
する。長大可変長データ項目のデータは、前記基本行デ
ータベース領域とは異なる長大可変長データ用データベ
ース領域に各データ毎のファイルとして格納する。そし
て、それらのファイル名を、前記基本行データベース領
域に格納し、あたかも同じデータベース領域内に存在す
るかのように見せる。上記のように、基本行データベー
ス領域と長大可変長データ用データベース領域とを別に
する理由は、両方のデータを同じデータベース領域に混
在させて格納すると、アクセス効率が非常に悪くなるか
らである。
【0003】
【発明が解決しようとする課題】上記第1の従来技術で
は、長大可変長データ項目のデータを格納している領域
への物理ポインタを基本行データベース領域に格納して
いるため、長大可変長データ用データベース領域のデー
タ配置が乱れた場合に再編成を行うと、基本行データベ
ース領域に格納している物理ポインタを大幅に更新する
必要があり、再編成時のオーバヘッドが大きい問題があ
る。一方、上記第2の従来技術では、ファイル管理をシ
ステムプログラムに委ねることになるため、セキュリテ
ィの点および処理効率の点で問題がある。そこで、本発
明の目的は、長大可変長データ用データベース領域の再
編成時のオーバヘッドが小さく、且つ、セキュリティや
処理効率の問題を生じることがないデータベース管理シ
ステムを提供することにある。
は、長大可変長データ項目のデータを格納している領域
への物理ポインタを基本行データベース領域に格納して
いるため、長大可変長データ用データベース領域のデー
タ配置が乱れた場合に再編成を行うと、基本行データベ
ース領域に格納している物理ポインタを大幅に更新する
必要があり、再編成時のオーバヘッドが大きい問題があ
る。一方、上記第2の従来技術では、ファイル管理をシ
ステムプログラムに委ねることになるため、セキュリテ
ィの点および処理効率の点で問題がある。そこで、本発
明の目的は、長大可変長データ用データベース領域の再
編成時のオーバヘッドが小さく、且つ、セキュリティや
処理効率の問題を生じることがないデータベース管理シ
ステムを提供することにある。
【0004】
【課題を解決するための手段】第1の観点では、本発明
は、基本データ項目(長大可変長データ項目でないデー
タ項目)のデータを格納するための第1のデータベース
格納領域と、長大可変長データ項目のデータを格納する
ための第2のデータベース格納領域とを備え、前記第1
のデータベース格納領域は、基本データ項目のデータを
物理的に固定長のページ単位で格納するデータ格納領域
と、そのデータ格納領域の空きをページ単位の使用/未
使用により管理する空き領域管理領域とを含み、前記第
2のデータベース格納領域は、長大可変長データ項目の
データを格納する長大可変長データ格納領域と、その長
大可変長データ格納領域の空きを管理する空き領域管理
領域と、前記長大可変長データ項目のデータの追加に伴
って単調に増加または減少する通番を付加する採番領域
と、前記通番と前記長大可変長データ項目のデータの格
納位置とを対応付けるデータマッピング領域とを含み、
さらに、前記基本データ項目は、前記長大可変長データ
項目のデータの格納位置を管理するデータ項目を含み、
そのデータ項目のデータは、前記通番を含むことを特徴
とするデータベース管理システムを提供する。上記第1
の観点によるデータベース管理システムでは、基本デー
タ項目のデータと長大可変長データ項目のデータとを異
なるデータベース領域に分離して格納すると共に、長大
可変長データ項目のデータには通番を付加し、その通番
を基本データ項目中の一つのデータ項目にし、あたかも
同じデータベース領域内に存在するかのように見せる。
第2のデータベース領域を再編成しても通番は変化しな
いから、第1のデータベース領域にアクセスする必要が
ない。従って、第1のデータベース領域と第2のデータ
ベース領域の再編成を独立に行えるようになり、オーバ
ヘッドを小さく出来る。また、ファイル管理をシステム
プログラムに委ねることがないため、セキュリティや処
理効率の問題を生じることもない。
は、基本データ項目(長大可変長データ項目でないデー
タ項目)のデータを格納するための第1のデータベース
格納領域と、長大可変長データ項目のデータを格納する
ための第2のデータベース格納領域とを備え、前記第1
のデータベース格納領域は、基本データ項目のデータを
物理的に固定長のページ単位で格納するデータ格納領域
と、そのデータ格納領域の空きをページ単位の使用/未
使用により管理する空き領域管理領域とを含み、前記第
2のデータベース格納領域は、長大可変長データ項目の
データを格納する長大可変長データ格納領域と、その長
大可変長データ格納領域の空きを管理する空き領域管理
領域と、前記長大可変長データ項目のデータの追加に伴
って単調に増加または減少する通番を付加する採番領域
と、前記通番と前記長大可変長データ項目のデータの格
納位置とを対応付けるデータマッピング領域とを含み、
さらに、前記基本データ項目は、前記長大可変長データ
項目のデータの格納位置を管理するデータ項目を含み、
そのデータ項目のデータは、前記通番を含むことを特徴
とするデータベース管理システムを提供する。上記第1
の観点によるデータベース管理システムでは、基本デー
タ項目のデータと長大可変長データ項目のデータとを異
なるデータベース領域に分離して格納すると共に、長大
可変長データ項目のデータには通番を付加し、その通番
を基本データ項目中の一つのデータ項目にし、あたかも
同じデータベース領域内に存在するかのように見せる。
第2のデータベース領域を再編成しても通番は変化しな
いから、第1のデータベース領域にアクセスする必要が
ない。従って、第1のデータベース領域と第2のデータ
ベース領域の再編成を独立に行えるようになり、オーバ
ヘッドを小さく出来る。また、ファイル管理をシステム
プログラムに委ねることがないため、セキュリティや処
理効率の問題を生じることもない。
【0005】第2の観点では、本発明は、上記構成のデ
ータベース管理システムにおいて、長大可変長データ項
目のデータを挿入する要求が与えられた時、そのデータ
に対する通番を採番し、そのデータを第2のデータベー
ス領域に格納し、その格納位置と前記通番との対応をデ
ータマッピング領域に保持し、前記通番をデータ項目と
して含む基本データ項目のデータを作成し、そのデータ
を第1のデータベース領域に格納することを特徴とする
データベース管理システムを提供する。上記第2の観点
によるデータベース管理システムでは、長大可変長デー
タ項目のデータを好適に挿入することが出来る。
ータベース管理システムにおいて、長大可変長データ項
目のデータを挿入する要求が与えられた時、そのデータ
に対する通番を採番し、そのデータを第2のデータベー
ス領域に格納し、その格納位置と前記通番との対応をデ
ータマッピング領域に保持し、前記通番をデータ項目と
して含む基本データ項目のデータを作成し、そのデータ
を第1のデータベース領域に格納することを特徴とする
データベース管理システムを提供する。上記第2の観点
によるデータベース管理システムでは、長大可変長デー
タ項目のデータを好適に挿入することが出来る。
【0006】第3の観点では、本発明は、上記構成のデ
ータベース管理システムにおいて、通番は、ロールバッ
ク対象としないことを特徴とするデータベース管理シス
テムを提供する。上記第3の観点によるデータベース管
理システムでは、障害からの回復時に、長大可変長デー
タ項目のデータの通番を新たに採番することとなるが、
その方が管理を簡単化できる。
ータベース管理システムにおいて、通番は、ロールバッ
ク対象としないことを特徴とするデータベース管理シス
テムを提供する。上記第3の観点によるデータベース管
理システムでは、障害からの回復時に、長大可変長デー
タ項目のデータの通番を新たに採番することとなるが、
その方が管理を簡単化できる。
【0007】
【発明の実施の形態】以下、本発明の実施形態を添付図
面を用いて説明する。まず、図1〜図5により行挿入に
関する説明を行い、その後、図6〜図7により再編成に
関する説明を行う。
面を用いて説明する。まず、図1〜図5により行挿入に
関する説明を行い、その後、図6〜図7により再編成に
関する説明を行う。
【0008】図1は、本発明の一実施形態にかかるデー
タベース管理システム20を含むコンピュータシステム
10の構成図である。但し、データベース管理システム
20の構成は、行挿入に関する部分を示している。この
コンピュータシステム10は、CPU12、主記憶装置
14、磁気ディスク等の外部記憶装置30および多数の
端末18で構成される。主記憶装置14上には、データ
ベース管理システム20が置かれている。外部記憶装置
30上には、データベース管理システム20が管理する
データベースとして、データベースに定義された表定義
情報や格納定義情報等を管理するデータディクショナリ
40、基本データ項目のデータを格納する基本行データ
ベース領域50、長大可変長データ項目のデータを格納
する長大可変長データ用データベース領域60およびデ
ータベース更新履歴情報であるログファイル70が格納
されている。
タベース管理システム20を含むコンピュータシステム
10の構成図である。但し、データベース管理システム
20の構成は、行挿入に関する部分を示している。この
コンピュータシステム10は、CPU12、主記憶装置
14、磁気ディスク等の外部記憶装置30および多数の
端末18で構成される。主記憶装置14上には、データ
ベース管理システム20が置かれている。外部記憶装置
30上には、データベース管理システム20が管理する
データベースとして、データベースに定義された表定義
情報や格納定義情報等を管理するデータディクショナリ
40、基本データ項目のデータを格納する基本行データ
ベース領域50、長大可変長データ項目のデータを格納
する長大可変長データ用データベース領域60およびデ
ータベース更新履歴情報であるログファイル70が格納
されている。
【0009】データベース管理システム20は、質問解
析処理部21、データベース演算処理部22、基本行デ
ータ管理部23、長大可変長データ管理部24、バッフ
ァプール管理部25、ログ管理部26、バッファプール
32およびログバッファ34を具備している。前記質問
解析処理部21は、ユーザからのデータベース問合せ要
求であるSQL(構造化照会言語)を受け取り、構文解
析,意味解析処理を通してデータベースアクセスの最適
なアクセス経路を決定する最適化処理を行い、決定した
アクセス経路に基づいてデータベース処理用の内部処理
コードを生成する。前記データベース演算処理部22
は、生成された内部処理コードを基にデータベースアク
セスを行う。前記基本行データ管理部23は、基本行デ
ータベース領域50に格納された基本データ項目のデー
タにアクセスする。前記長大可変長データ管理部24
は、長大可変長データ用データベース領域60に格納さ
れた長大可変長データ項目のデータにアクセスする。前
記バッファプール管理部25は、データディクショナリ
40,基本行データベース領域50および長大可変長用
データベース領域60からデータを確保したバッファプ
ール32との間でデータの入出力を行う。前記ログ管理
部26は、端末18から投入されたトランザクションに
よって行われたデータの更新履歴情報であるログを管理
し、各ログレコードのログシーケンス番号を割り振り、
トランザクションの完了時にログバッファ34からログ
ファイル70に書き込む。
析処理部21、データベース演算処理部22、基本行デ
ータ管理部23、長大可変長データ管理部24、バッフ
ァプール管理部25、ログ管理部26、バッファプール
32およびログバッファ34を具備している。前記質問
解析処理部21は、ユーザからのデータベース問合せ要
求であるSQL(構造化照会言語)を受け取り、構文解
析,意味解析処理を通してデータベースアクセスの最適
なアクセス経路を決定する最適化処理を行い、決定した
アクセス経路に基づいてデータベース処理用の内部処理
コードを生成する。前記データベース演算処理部22
は、生成された内部処理コードを基にデータベースアク
セスを行う。前記基本行データ管理部23は、基本行デ
ータベース領域50に格納された基本データ項目のデー
タにアクセスする。前記長大可変長データ管理部24
は、長大可変長データ用データベース領域60に格納さ
れた長大可変長データ項目のデータにアクセスする。前
記バッファプール管理部25は、データディクショナリ
40,基本行データベース領域50および長大可変長用
データベース領域60からデータを確保したバッファプ
ール32との間でデータの入出力を行う。前記ログ管理
部26は、端末18から投入されたトランザクションに
よって行われたデータの更新履歴情報であるログを管理
し、各ログレコードのログシーケンス番号を割り振り、
トランザクションの完了時にログバッファ34からログ
ファイル70に書き込む。
【0010】図2は、データディクショナリ40に格納
されたデータベース定義情報の説明図である。データベ
ース管理システム特にリレーショナルデータベース管理
システムでは、データは、複数の行からなる表(リレー
ション)で管理される。表は、複数の列から構成され
る。各列は、データ型,データ長等の属性情報を持つ。
また、データは、外部記憶装置30の基本行データベー
ス領域50または長大可変長データ用データベース領域
60に格納されるため、データベース領域を管理する情
報を持つ必要がある。データベース領域管理表41は、
データベース領域を管理する情報の表であり、データベ
ース領域名,当該データベース領域の種別を表す種別
(Dはデータディクショナリ40,Rは基本行データベ
ース領域50,Lは長大可変長データ用データベース領
域60を示す)および構成ファイル数(当該データベー
ス領域を構成する論理的なファイル数)の列で構成され
る。データベース領域は、データベース容量の大規模化
に対応できるように論理的な領域として捉え、複数のフ
ァイルで構成する。データベース領域構成ファイル管理
表42は、データベース領域を構成するファイルを管理
する表であり、データベース領域名,ファイルの順序を
示す番号および構成ファイル名の列で構成される。表管
理表43は、表名,表の所有者,表の構成列数および表
の基本データ項目のデータを格納する(基本行)データ
ベース領域名の列で構成される。構成列情報管理表44
は、表を構成する列の定義情報であり、列名,当該列を
持つ表名,表の所有者,当該列のデータ型(integer は
数値データ型,charは文字型,LOBは長大可変長デー
タ型)と最大データ長,当該列が表を構成する順序を示
す列番号および当該列が長大可変長データ項目である場
合にそのデータを格納する(長大可変長データ用)デー
タベース領域名の列で構成される。当該列が基本データ
項目のときは、データベース領域名の値には、NULL
が格納される。
されたデータベース定義情報の説明図である。データベ
ース管理システム特にリレーショナルデータベース管理
システムでは、データは、複数の行からなる表(リレー
ション)で管理される。表は、複数の列から構成され
る。各列は、データ型,データ長等の属性情報を持つ。
また、データは、外部記憶装置30の基本行データベー
ス領域50または長大可変長データ用データベース領域
60に格納されるため、データベース領域を管理する情
報を持つ必要がある。データベース領域管理表41は、
データベース領域を管理する情報の表であり、データベ
ース領域名,当該データベース領域の種別を表す種別
(Dはデータディクショナリ40,Rは基本行データベ
ース領域50,Lは長大可変長データ用データベース領
域60を示す)および構成ファイル数(当該データベー
ス領域を構成する論理的なファイル数)の列で構成され
る。データベース領域は、データベース容量の大規模化
に対応できるように論理的な領域として捉え、複数のフ
ァイルで構成する。データベース領域構成ファイル管理
表42は、データベース領域を構成するファイルを管理
する表であり、データベース領域名,ファイルの順序を
示す番号および構成ファイル名の列で構成される。表管
理表43は、表名,表の所有者,表の構成列数および表
の基本データ項目のデータを格納する(基本行)データ
ベース領域名の列で構成される。構成列情報管理表44
は、表を構成する列の定義情報であり、列名,当該列を
持つ表名,表の所有者,当該列のデータ型(integer は
数値データ型,charは文字型,LOBは長大可変長デー
タ型)と最大データ長,当該列が表を構成する順序を示
す列番号および当該列が長大可変長データ項目である場
合にそのデータを格納する(長大可変長データ用)デー
タベース領域名の列で構成される。当該列が基本データ
項目のときは、データベース領域名の値には、NULL
が格納される。
【0011】図3は、基本行データベース領域50およ
び長大可変長データ用データベース領域60の格納構造
図である。基本行データベース領域50は、空き領域を
管理する空き領域管理情報51と、表の各行のデータ5
2a〜52eから構成される。前記空き領域管理情報5
1は、基本行データベース領域50を構成する複数のフ
ァイルについて、予め定義されたサイズに基づきファイ
ルを物理的に固定長の複数のページで区分けすることに
よって、すべてのページをビットマップで表現し、ペー
ジ単位で空きを管理する。行のデータ52は、空き領域
管理情報51に基づいて割り当てたページに格納され
る。1ページには、複数の行を格納する。各行の複数の
列の各データは、定義された列の順番で格納される。図
3の例では、表が4つの列で構成されている。列1から
列3は基本データ項目である。第4列目は、長大可変長
データ項目である。あたかもそこに長大可変長データが
存在するかのように見せるため、第4列目には、長大可
変長データ用データベース領域60に格納したデータに
割り振られた通番(LOBID)が格納される。複数の
表のデータを基本行データベース領域50に格納する場
合には、表毎のデータの格納情報を管理する情報が付加
されるとよい。
び長大可変長データ用データベース領域60の格納構造
図である。基本行データベース領域50は、空き領域を
管理する空き領域管理情報51と、表の各行のデータ5
2a〜52eから構成される。前記空き領域管理情報5
1は、基本行データベース領域50を構成する複数のフ
ァイルについて、予め定義されたサイズに基づきファイ
ルを物理的に固定長の複数のページで区分けすることに
よって、すべてのページをビットマップで表現し、ペー
ジ単位で空きを管理する。行のデータ52は、空き領域
管理情報51に基づいて割り当てたページに格納され
る。1ページには、複数の行を格納する。各行の複数の
列の各データは、定義された列の順番で格納される。図
3の例では、表が4つの列で構成されている。列1から
列3は基本データ項目である。第4列目は、長大可変長
データ項目である。あたかもそこに長大可変長データが
存在するかのように見せるため、第4列目には、長大可
変長データ用データベース領域60に格納したデータに
割り振られた通番(LOBID)が格納される。複数の
表のデータを基本行データベース領域50に格納する場
合には、表毎のデータの格納情報を管理する情報が付加
されるとよい。
【0012】長大可変長データ用データベース領域60
は、領域内のデータに対して通番を付加するためのLO
BID採番情報61、空き領域を管理する空き領域管理
情報62、通番に対応するデータの物理位置情報をマッ
ピングするデータマッピング領域63およびデータ64
a〜64dから構成される。空き領域管理上62は、長
大可変長データ用データベース領域を構成する複数のフ
ァイルについて、予め定義されたサイズに基づきファイ
ルを物理的に固定長の複数のページで区分けすることに
よって、すべてのページをビットマップ等で表現し、空
きをページ単位で管理する。なお、空き領域管理情報6
2は、空き領域の先頭および末尾の位置情報と総空き領
域長を持ち、各々の空き領域間をポインタによってチェ
インする方法で実現してもよい。
は、領域内のデータに対して通番を付加するためのLO
BID採番情報61、空き領域を管理する空き領域管理
情報62、通番に対応するデータの物理位置情報をマッ
ピングするデータマッピング領域63およびデータ64
a〜64dから構成される。空き領域管理上62は、長
大可変長データ用データベース領域を構成する複数のフ
ァイルについて、予め定義されたサイズに基づきファイ
ルを物理的に固定長の複数のページで区分けすることに
よって、すべてのページをビットマップ等で表現し、空
きをページ単位で管理する。なお、空き領域管理情報6
2は、空き領域の先頭および末尾の位置情報と総空き領
域長を持ち、各々の空き領域間をポインタによってチェ
インする方法で実現してもよい。
【0013】次に、データベース管理システム20の動
作を説明する。図1に示す端末18から次のSQLのI
NSERT文による行の挿入要求が投入された場合を想
定する。 INSERT INTO DOCUMENT VALUES(1001,'特許抄録1001',John,'発明の名称・・
・') 上記SQLが投入されると、データベース管理システム
20は、質問解析処理部21にて構文を解析する。解析
の結果、文法が正しいと判断されると、データディクシ
ョナリ40を検索し、指定された表「DOCUMEN
T」の存在を図2に示す表管理表43によりチェックす
る。表「DOCUMENT」の存在が確認できたら、表
「DOCUMENT」のデータを格納する基本行データ
ベース領域名「AREA2」を取得する。また、構成列
情報管理表44から表名「DOCUMENT」の構成列
情報を取得する。この時、列名「CONTEXT」は、
長大可変長データ項目のデータ型「LOB」であり、長
大可変長データ用データベース領域名「AREA3」に
格納することが判る。次に、質問解析処理部21では、
取得した情報にしたがってデータベース処理用の内部処
理コードを生成し、その内部処理コードの実行要求をデ
ータベース演算処理部22に発行する。ここでは、行の
挿入処理要求が発行される。具体的には、表「DOCU
MENT」に対して、列名「CONTEXT」以外の列
のデータは基本行データベース領域「AREA2」に格
納し、列名「CONTEXT」のデータは長大可変長デ
ータ用データベース領域「AREA3」に格納すること
を指示した行の挿入処理要求が発行される。データベー
ス演算処理部22は、処理要求を解析し、列名「CON
TEXT」以外のデータの挿入処理要求を基本行データ
管理部23にて行い、列名「CONTEXT」のデータ
の挿入処理要求を長大可変長データ管理部24にて行う
よう制御する。
作を説明する。図1に示す端末18から次のSQLのI
NSERT文による行の挿入要求が投入された場合を想
定する。 INSERT INTO DOCUMENT VALUES(1001,'特許抄録1001',John,'発明の名称・・
・') 上記SQLが投入されると、データベース管理システム
20は、質問解析処理部21にて構文を解析する。解析
の結果、文法が正しいと判断されると、データディクシ
ョナリ40を検索し、指定された表「DOCUMEN
T」の存在を図2に示す表管理表43によりチェックす
る。表「DOCUMENT」の存在が確認できたら、表
「DOCUMENT」のデータを格納する基本行データ
ベース領域名「AREA2」を取得する。また、構成列
情報管理表44から表名「DOCUMENT」の構成列
情報を取得する。この時、列名「CONTEXT」は、
長大可変長データ項目のデータ型「LOB」であり、長
大可変長データ用データベース領域名「AREA3」に
格納することが判る。次に、質問解析処理部21では、
取得した情報にしたがってデータベース処理用の内部処
理コードを生成し、その内部処理コードの実行要求をデ
ータベース演算処理部22に発行する。ここでは、行の
挿入処理要求が発行される。具体的には、表「DOCU
MENT」に対して、列名「CONTEXT」以外の列
のデータは基本行データベース領域「AREA2」に格
納し、列名「CONTEXT」のデータは長大可変長デ
ータ用データベース領域「AREA3」に格納すること
を指示した行の挿入処理要求が発行される。データベー
ス演算処理部22は、処理要求を解析し、列名「CON
TEXT」以外のデータの挿入処理要求を基本行データ
管理部23にて行い、列名「CONTEXT」のデータ
の挿入処理要求を長大可変長データ管理部24にて行う
よう制御する。
【0014】図4は、上記データベース演算処理部22
により制御される行挿入処理のフローチャートである。
ステップ2310では、指定された表「DOCUMEN
T」のデータを格納する基本行データベース領域「AR
EA2」に対して排他制御のためのロックを取得する。
これは、当該データベース領域の不当な削除を防止する
ためである。ステップ2312では、表「CONTEX
T」に対しロックを取得する。ロックのモードとして
は、排他モード(X:Exclusive)を取得することによ
り、他のユーザからの表に対する同時実行性を確保して
いる。より細かなロックのレベルとして、ページレベル
あるいは行レベルのロックをする機構が備わっていれ
ば、こうした表レベルの排他モードには、IX(Inten
t Exclusive)モードが望ましい。
により制御される行挿入処理のフローチャートである。
ステップ2310では、指定された表「DOCUMEN
T」のデータを格納する基本行データベース領域「AR
EA2」に対して排他制御のためのロックを取得する。
これは、当該データベース領域の不当な削除を防止する
ためである。ステップ2312では、表「CONTEX
T」に対しロックを取得する。ロックのモードとして
は、排他モード(X:Exclusive)を取得することによ
り、他のユーザからの表に対する同時実行性を確保して
いる。より細かなロックのレベルとして、ページレベル
あるいは行レベルのロックをする機構が備わっていれ
ば、こうした表レベルの排他モードには、IX(Inten
t Exclusive)モードが望ましい。
【0015】ステップ2314では、データベース管理
システム20が主記憶装置14上に確保した作業領域上
に、基本行の格納形式にしたがって、図3における基本
行データベース領域50内の行52のように行を組み立
てる。この時、列「CONTEXT」のデータは何でも
良い。ステップ2316では、長大可変長データがある
かどうかをチェックし、あればステップ2318へ進
み、なければステップ2322へジャンプする。ステッ
プ2318では、長大可変長データ挿入処理を行う。こ
の長大可変長データ挿入処理については図5を参照して
後述する。ステップ2320では、長大可変長データの
挿入によって採番された通番LOBIDを列「CONT
EXT」のデータとする。
システム20が主記憶装置14上に確保した作業領域上
に、基本行の格納形式にしたがって、図3における基本
行データベース領域50内の行52のように行を組み立
てる。この時、列「CONTEXT」のデータは何でも
良い。ステップ2316では、長大可変長データがある
かどうかをチェックし、あればステップ2318へ進
み、なければステップ2322へジャンプする。ステッ
プ2318では、長大可変長データ挿入処理を行う。こ
の長大可変長データ挿入処理については図5を参照して
後述する。ステップ2320では、長大可変長データの
挿入によって採番された通番LOBIDを列「CONT
EXT」のデータとする。
【0016】ステップ2322では、完成した基本行を
格納するためのデータベース領域「AREA2」のペー
ジを空き領域管理情報51から決定する。使用中のペー
ジであっても、前記基本行を格納できる空き領域があれ
ば、その使用中のページを行格納ページとして決定す
る。使用中のページに空き領域がなければ、新ページを
確保し、そのページを行格納ページとして決定する。さ
らに、前記基本行に対して識別子として行idを割り振
る。この行idは、ページ番号とページ内の格納位置を
示す番号で構成される。
格納するためのデータベース領域「AREA2」のペー
ジを空き領域管理情報51から決定する。使用中のペー
ジであっても、前記基本行を格納できる空き領域があれ
ば、その使用中のページを行格納ページとして決定す
る。使用中のページに空き領域がなければ、新ページを
確保し、そのページを行格納ページとして決定する。さ
らに、前記基本行に対して識別子として行idを割り振
る。この行idは、ページ番号とページ内の格納位置を
示す番号で構成される。
【0017】ステップ2324では、行idを使用し
て、行レベルのロックを排他モード(X:Exclusive)
で取得する。ステップ2326では、バッファプール管
理部25に対して行格納ページバッファの割り当て要求
を行い、バッファをバッファプール32上に取得する。
この時、決定されている行格納ページが使用中のページ
であれば、その使用中のページに割り当てられているバ
ッファを取得する。また、決定されている行格納ページ
が新ページであれば、空きバッファを取得する。
て、行レベルのロックを排他モード(X:Exclusive)
で取得する。ステップ2326では、バッファプール管
理部25に対して行格納ページバッファの割り当て要求
を行い、バッファをバッファプール32上に取得する。
この時、決定されている行格納ページが使用中のページ
であれば、その使用中のページに割り当てられているバ
ッファを取得する。また、決定されている行格納ページ
が新ページであれば、空きバッファを取得する。
【0018】ステップ2328では、取得したページバ
ッファに対して行を挿入する前に、障害等による回復処
理のために、更新前ログを書き出す。ログの書き出しと
は、ログ管理部26に対してログレコード書き出し要求
を行い、ログをログバッファ34に書き込むことをい
う。なお、物理的なページのログを保持するデータベー
ス管理システムの場合にはログの書き出し処理が必要で
あるが、論理的な操作ログ(データを挿入したことを示
すログ、例えば前述したSQLのINSERT文と同様
な情報)を保持する場合にはログの書き出し処理は不要
である。
ッファに対して行を挿入する前に、障害等による回復処
理のために、更新前ログを書き出す。ログの書き出しと
は、ログ管理部26に対してログレコード書き出し要求
を行い、ログをログバッファ34に書き込むことをい
う。なお、物理的なページのログを保持するデータベー
ス管理システムの場合にはログの書き出し処理が必要で
あるが、論理的な操作ログ(データを挿入したことを示
すログ、例えば前述したSQLのINSERT文と同様
な情報)を保持する場合にはログの書き出し処理は不要
である。
【0019】ステップ2330では、ページバッファへ
の基本行の挿入処理を行う。ステップ2332では、更
新後ログを書き出す処理をログ管理部26に要求する。
更新後ログを書き出す理由は、当該データの挿入処理を
含むトランザクションが完了した後に外部記憶装置30
が故障した場合や、バッファプール32上から外部記憶
装置30上のデータベース領域に書き込みが完了する前
にシステム停止を生じた場合などに、回復可能にするた
めである。
の基本行の挿入処理を行う。ステップ2332では、更
新後ログを書き出す処理をログ管理部26に要求する。
更新後ログを書き出す理由は、当該データの挿入処理を
含むトランザクションが完了した後に外部記憶装置30
が故障した場合や、バッファプール32上から外部記憶
装置30上のデータベース領域に書き込みが完了する前
にシステム停止を生じた場合などに、回復可能にするた
めである。
【0020】ステップ2334では、バッファプール管
理部25に対して行格納ページバッファの書き込み要求
を行う。バッファプール管理部25に対して要求された
書き込み要求は、必ずしも外部記憶装置30上のデータ
ベース領域に即時に反映する必要はない。バッファプー
ル管理部25がバッファプール32の管理方法にしたが
ってページバッファの書き込みが必要になった時点で外
部記憶装置30上のデータベース領域に書き込みが行わ
れればよい。ただし、トランザクション完了までには、
当該トランザクション内で書き出したログはログファイ
ル70に出力されている必要がある。
理部25に対して行格納ページバッファの書き込み要求
を行う。バッファプール管理部25に対して要求された
書き込み要求は、必ずしも外部記憶装置30上のデータ
ベース領域に即時に反映する必要はない。バッファプー
ル管理部25がバッファプール32の管理方法にしたが
ってページバッファの書き込みが必要になった時点で外
部記憶装置30上のデータベース領域に書き込みが行わ
れればよい。ただし、トランザクション完了までには、
当該トランザクション内で書き出したログはログファイ
ル70に出力されている必要がある。
【0021】図5は、長大可変長データ挿入処理(ステ
ップ2318)のフローチャートである。ステップ24
10では、指定された表「DOCUMENT」の長大可
変長データ列「CONTEXT」を格納する長大可変長
データ用データベース領域「AREA3」に対してロッ
クを取得する。ステップ2412では、挿入する長大可
変長データに対して通番LOBIDを採番するため、バ
ッファプール管理25に対してページバッファ取得要求
を行い、LOBID採番情報61をページバッファに取
得する。このとき、他のユーザからの当該LOBID採
番情報61に対する同時アクセスを禁止する必要があ
る。そこで、バッファプール管理部25が、ページバッ
ファを取得する際に行うラッチ(ロックよりも高速で短
期間のバッファプールの物理的整合性を保証する手段)
にてアクセス禁止状態を設定する。なお、Xモードのロ
ックを取得する方法によって同時アクセスを禁止しても
よい。
ップ2318)のフローチャートである。ステップ24
10では、指定された表「DOCUMENT」の長大可
変長データ列「CONTEXT」を格納する長大可変長
データ用データベース領域「AREA3」に対してロッ
クを取得する。ステップ2412では、挿入する長大可
変長データに対して通番LOBIDを採番するため、バ
ッファプール管理25に対してページバッファ取得要求
を行い、LOBID採番情報61をページバッファに取
得する。このとき、他のユーザからの当該LOBID採
番情報61に対する同時アクセスを禁止する必要があ
る。そこで、バッファプール管理部25が、ページバッ
ファを取得する際に行うラッチ(ロックよりも高速で短
期間のバッファプールの物理的整合性を保証する手段)
にてアクセス禁止状態を設定する。なお、Xモードのロ
ックを取得する方法によって同時アクセスを禁止しても
よい。
【0022】ステップ2414では、通番LOBIDの
現在の番号を“1”だけインクリメントし、新たな通番
LOBIDを取得する。ステップ2416では、LOB
ID採番情報61を格納したページバッファを即時に長
大可変長データ用データベース領域60に書き込む。こ
れは、通番LOBIDは、ロールバック対象としないた
めである。通番LOBIDをロールバック対象としない
場合、障害からの回復時に、通番を新たに採番すること
になるが、通番を回復するよりも新たに採番した方が管
理を簡単化できる。
現在の番号を“1”だけインクリメントし、新たな通番
LOBIDを取得する。ステップ2416では、LOB
ID採番情報61を格納したページバッファを即時に長
大可変長データ用データベース領域60に書き込む。こ
れは、通番LOBIDは、ロールバック対象としないた
めである。通番LOBIDをロールバック対象としない
場合、障害からの回復時に、通番を新たに採番すること
になるが、通番を回復するよりも新たに採番した方が管
理を簡単化できる。
【0023】ステップ2418では、長大可変長データ
を格納する領域を確保する。基本行を格納する基本行デ
ータベース領域と同様にページ単位の領域をビットマッ
プにて管理する場合、空き領域管理情報62を用いて、
長大可変長データが格納できるだけのページを確保す
る。
を格納する領域を確保する。基本行を格納する基本行デ
ータベース領域と同様にページ単位の領域をビットマッ
プにて管理する場合、空き領域管理情報62を用いて、
長大可変長データが格納できるだけのページを確保す
る。
【0024】ステップ2420では、確保した長大可変
長データ格納領域の位置情報(ページ番号)を保持して
おき、指定された領域に列名「CONTEXT」のデー
タを書き込む。長大可変長データはデータ長が長いとい
う特徴から、バッファプール32でのバッファリングに
よる入出力処理の削減効果を期待できないため、主記憶
装置14上に確保した作業領域上に格納された列名「C
ONTEXT」のデータを、直接、長大可変長データ用
データベース領域60に書き込む。
長データ格納領域の位置情報(ページ番号)を保持して
おき、指定された領域に列名「CONTEXT」のデー
タを書き込む。長大可変長データはデータ長が長いとい
う特徴から、バッファプール32でのバッファリングに
よる入出力処理の削減効果を期待できないため、主記憶
装置14上に確保した作業領域上に格納された列名「C
ONTEXT」のデータを、直接、長大可変長データ用
データベース領域60に書き込む。
【0025】ステップ2422では、列名「CONTE
XT」のデータを更新後ログとして書き出す。このと
き、更新後ログは、ログバッファ34に書き出すだけで
なく、ログファイル70に強制出力しておく必要があ
る。
XT」のデータを更新後ログとして書き出す。このと
き、更新後ログは、ログバッファ34に書き出すだけで
なく、ログファイル70に強制出力しておく必要があ
る。
【0026】ステップ2424では、挿入したデータの
通番LOBIDに対応するデータマッピング領域63
(図3)のエントリに、挿入したデータの位置情報を格
納する。
通番LOBIDに対応するデータマッピング領域63
(図3)のエントリに、挿入したデータの位置情報を格
納する。
【0027】さて、新たに行を追加したり,行を削除し
たり,列に対して更新を行ったりする操作を繰り返して
いると、データベース領域中の全てのページが使用中状
態となってはいるが実際には多くのページに空きが散在
する現象を生じる。これをデータの配置の乱れという。
データの配置の乱れを生じると、新たに行を追加しよう
とした時、その行を格納するための空き領域を探索する
処理時間のオーバヘッドが大きくなる。そこで、このオ
ーバヘッドを小さくするために、データベース領域中の
空き領域をまとめる処理を行う必要がある。この処理
を、データベースの再編成という。次に、データベース
再編成の動作について説明する。
たり,列に対して更新を行ったりする操作を繰り返して
いると、データベース領域中の全てのページが使用中状
態となってはいるが実際には多くのページに空きが散在
する現象を生じる。これをデータの配置の乱れという。
データの配置の乱れを生じると、新たに行を追加しよう
とした時、その行を格納するための空き領域を探索する
処理時間のオーバヘッドが大きくなる。そこで、このオ
ーバヘッドを小さくするために、データベース領域中の
空き領域をまとめる処理を行う必要がある。この処理
を、データベースの再編成という。次に、データベース
再編成の動作について説明する。
【0028】図6は、本発明の一実施形態にかかるデー
タベース管理システム20を含むコンピュータシステム
10の構成図である。但し、データベース管理システム
20の構成は、再編成に関する部分を示している。デー
タベース管理システム20は、再編成処理部27を具備
している。この再編成処理部27は、データベース検索
処理部271、アンロード処理部272およびリロード
処理部273から構成される。前記データベース検索処
理部271は、端末18からデータベースの再編成要求
が投入されたとき、要求されたデータベース領域からデ
ータベース定義情報を検索する。前記アンロード処理部
272は、要求されたデータベース領域に存在するデー
タを外部記憶装置30に用意されたアンロードファイル
80に対してアンロードする。前記リロード処理部27
3は、アンロード処理完了後にデータベース領域中の空
き領域管理部を初期化することによって、データベース
領域の空きを初期状態にする。そして、アンロードファ
イル80からデータを読み出し、データベース領域にリ
ロードする。
タベース管理システム20を含むコンピュータシステム
10の構成図である。但し、データベース管理システム
20の構成は、再編成に関する部分を示している。デー
タベース管理システム20は、再編成処理部27を具備
している。この再編成処理部27は、データベース検索
処理部271、アンロード処理部272およびリロード
処理部273から構成される。前記データベース検索処
理部271は、端末18からデータベースの再編成要求
が投入されたとき、要求されたデータベース領域からデ
ータベース定義情報を検索する。前記アンロード処理部
272は、要求されたデータベース領域に存在するデー
タを外部記憶装置30に用意されたアンロードファイル
80に対してアンロードする。前記リロード処理部27
3は、アンロード処理完了後にデータベース領域中の空
き領域管理部を初期化することによって、データベース
領域の空きを初期状態にする。そして、アンロードファ
イル80からデータを読み出し、データベース領域にリ
ロードする。
【0029】図7は、前記アンロードファイル80の構
成図である。アンロードヘッダ部81は、アンロードフ
ァイルであることを識別する情報、アンロード種別とし
て基本行データベース領域や長大可変長データ用データ
ベース領域を示す情報、アンロードファイルの作成者の
情報などから構成される。表情報部82は、アンロード
したデータベース領域に含まれる表の定義情報(図3の
表管理表43と同等の情報)から構成される。列情報部
83は、表の定義情報に基づいて取得した列の情報(図
3の構成列情報管理表44と同等の情報)から構成され
る。データ部84は、アンロードしたデータが格納され
る。
成図である。アンロードヘッダ部81は、アンロードフ
ァイルであることを識別する情報、アンロード種別とし
て基本行データベース領域や長大可変長データ用データ
ベース領域を示す情報、アンロードファイルの作成者の
情報などから構成される。表情報部82は、アンロード
したデータベース領域に含まれる表の定義情報(図3の
表管理表43と同等の情報)から構成される。列情報部
83は、表の定義情報に基づいて取得した列の情報(図
3の構成列情報管理表44と同等の情報)から構成され
る。データ部84は、アンロードしたデータが格納され
る。
【0030】いま、データベース領域「AREA3」を
再編成する要求が端末18から投入されると、データベ
ース定義情報検索部271は、データディクショナリ4
0に存在するデータベース領域管理表41およびデータ
ベース領域構成ファイル管理表42から、データベース
領域「AREA3」が存在し、それが長大可変長データ
用データベース領域であることを情報として取得する。
そして、その長大可変長データ用データベース領域「A
REA3」のアンロード処理要求をアンロード処理部2
72に対して発行する。
再編成する要求が端末18から投入されると、データベ
ース定義情報検索部271は、データディクショナリ4
0に存在するデータベース領域管理表41およびデータ
ベース領域構成ファイル管理表42から、データベース
領域「AREA3」が存在し、それが長大可変長データ
用データベース領域であることを情報として取得する。
そして、その長大可変長データ用データベース領域「A
REA3」のアンロード処理要求をアンロード処理部2
72に対して発行する。
【0031】アンロード処理部272は、長大可変長デ
ータ用データベース領域「AREA3」に対してロック
(Xモード)を取得する。これにより、長大可変長デー
タ用データベース領域「AREA3」に対するアクセス
が禁止される。但し、長大可変長データ項目の列「CO
NTEXT」に対するアクセスが行われない限り、表
「DOCUMENT」に対するアクセスは許可される。
次に、アンロード処理部272は、アンロードファイル
80にアンロードヘッダ部81,表情報部82および列
情報部83を書き込む。次に、アンロード処理部272
は、データマッピング領域63(図3)を先頭から参照
し、値の存在するデータを見つけると、図7に示すよう
に、その通番LOBID,データ長および実際のデータ
をアンロードファイル80のデータ部84に書き込む。
長大可変長データ用データベース領域「AREA3」に
存在するすべてのデータをアンロードファイル80に書
き込んだら、リロード処理部273に制御を渡す。
ータ用データベース領域「AREA3」に対してロック
(Xモード)を取得する。これにより、長大可変長デー
タ用データベース領域「AREA3」に対するアクセス
が禁止される。但し、長大可変長データ項目の列「CO
NTEXT」に対するアクセスが行われない限り、表
「DOCUMENT」に対するアクセスは許可される。
次に、アンロード処理部272は、アンロードファイル
80にアンロードヘッダ部81,表情報部82および列
情報部83を書き込む。次に、アンロード処理部272
は、データマッピング領域63(図3)を先頭から参照
し、値の存在するデータを見つけると、図7に示すよう
に、その通番LOBID,データ長および実際のデータ
をアンロードファイル80のデータ部84に書き込む。
長大可変長データ用データベース領域「AREA3」に
存在するすべてのデータをアンロードファイル80に書
き込んだら、リロード処理部273に制御を渡す。
【0032】リロード処理部273は、空き領域管理情
報62に含まれる長大可変長データ用データベース領域
「AREA3」のすべてのビットマップを初期化する
(すべてのデータ格納領域を空きにする)。一般的に、
再編成時にデータを1件ずつ削除するよりも、空き領域
管理情報62に含まれるビットマップデータを初期化す
る方が効率が良い。次に、リロード処理部273は、ア
ンロードファイル80に格納されたデータの順番でデー
タを読み出しながら、図5と同様にして、通番LOBI
Dを指定した長大可変長データの挿入処理を行う。ただ
し、図5の場合と異なり、通番LOBIDの採番処理
(ステップ2414)は必要ない。また、LOBIDデ
ータマッピングエントリ更新処理(ステップ2424)
では、リロード時に新たに決定した格納位置情報を格納
する。アンロードファイル80からすべてのデータをリ
ロードすると、長大可変長データ用データベース領域
「AREA3」に対するロック(Xモード)を開放す
る。
報62に含まれる長大可変長データ用データベース領域
「AREA3」のすべてのビットマップを初期化する
(すべてのデータ格納領域を空きにする)。一般的に、
再編成時にデータを1件ずつ削除するよりも、空き領域
管理情報62に含まれるビットマップデータを初期化す
る方が効率が良い。次に、リロード処理部273は、ア
ンロードファイル80に格納されたデータの順番でデー
タを読み出しながら、図5と同様にして、通番LOBI
Dを指定した長大可変長データの挿入処理を行う。ただ
し、図5の場合と異なり、通番LOBIDの採番処理
(ステップ2414)は必要ない。また、LOBIDデ
ータマッピングエントリ更新処理(ステップ2424)
では、リロード時に新たに決定した格納位置情報を格納
する。アンロードファイル80からすべてのデータをリ
ロードすると、長大可変長データ用データベース領域
「AREA3」に対するロック(Xモード)を開放す
る。
【0033】以上のように、長大可変長データ用データ
ベース領域「AREA3」の再編成時には、基本行デー
タベース領域「AREA2」には何らアクセスは発生し
ない。従って、更新処理のオーバヘッドを小さく出来
る。また、ファイル管理をシステムプログラムに委ねる
ことがないため、セキュリティや処理効率の問題を生じ
ることもない。
ベース領域「AREA3」の再編成時には、基本行デー
タベース領域「AREA2」には何らアクセスは発生し
ない。従って、更新処理のオーバヘッドを小さく出来
る。また、ファイル管理をシステムプログラムに委ねる
ことがないため、セキュリティや処理効率の問題を生じ
ることもない。
【0034】
【発明の効果】本発明のデータベース管理システムによ
れば、基本データ項目のデータベース領域と長大可変長
データ項目のデータベース領域とを独立に再編成できる
ため、オーバヘッドが小さくなり、処理効率を向上でき
る。また、ファイル管理をシステムプログラムに委ねる
ことがないため、セキュリティの点および処理効率の点
で問題を生じない。
れば、基本データ項目のデータベース領域と長大可変長
データ項目のデータベース領域とを独立に再編成できる
ため、オーバヘッドが小さくなり、処理効率を向上でき
る。また、ファイル管理をシステムプログラムに委ねる
ことがないため、セキュリティの点および処理効率の点
で問題を生じない。
【図1】本発明の一実施形態にかかるデータベース管理
システム(行挿入関連部分)を含むコンピュータシステ
ムの構成図である。
システム(行挿入関連部分)を含むコンピュータシステ
ムの構成図である。
【図2】データディクショナリの構成図である。
【図3】データベース領域の構成図である。
【図4】行挿入処理のフローチャートである。
【図5】長大可変長データ挿入処理のフローチャートで
ある。
ある。
【図6】本発明の一実施形態にかかるデータベース管理
システム(再編成関連部分)を含むコンピュータシステ
ムの構成図である。
システム(再編成関連部分)を含むコンピュータシステ
ムの構成図である。
【図7】アンロードファイルの構成図である。
10:コンピュータシステム 12:CPU 14:主記憶装置 18:端末 20:データベース管理システム 21:質問解析処理部 22:データベース演算処理部 23:基本行データ管理部 24:長大可変長データ管理部 25:バッファプール管理部 26:ログ管理部 27:再編成処理部 271:データベース定義情報検索部 272:アンロード処理部 273:リロード処理部 30:外部記憶装置 32:バッファプール 34:ログバッファ 40:データディクショナリ 50:基本行データベース領域 51:空き領域管理情報 52:行 60:長大可変長データ用データベース領域 61:LOBID採番情報 62:空き領域管理情報 63:データマッピング領域 64:長大可変長データ 70:ログフィル 80:アンロードファイル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 原 憲宏 神奈川県川崎市幸区鹿島田890番地の12 株式会社日立製作所情報・通信開発本部内 (72)発明者 北村 健一 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウエアエンジニアリング株式会 社内
Claims (3)
- 【請求項1】 基本データ項目(長大可変長データ項目
でないデータ項目)のデータを格納するための第1のデ
ータベース格納領域と、長大可変長データ項目のデータ
を格納するための第2のデータベース格納領域とを備
え、 前記第1のデータベース格納領域は、基本データ項目の
データを物理的に固定長のページ単位で格納するデータ
格納領域と、そのデータ格納領域の空きをページ単位の
使用/未使用により管理する空き領域管理領域とを含
み、 前記第2のデータベース格納領域は、長大可変長データ
項目のデータを格納する長大可変長データ格納領域と、
その長大可変長データ格納領域の空きを管理する空き領
域管理領域と、前記長大可変長データ項目のデータの追
加に伴って単調に増加または減少する通番を付加する採
番領域と、前記通番と前記長大可変長データ項目のデー
タの格納位置とを対応付けるデータマッピング領域とを
含み、 さらに、前記基本データ項目は、前記長大可変長データ
項目のデータの格納位置を管理するデータ項目を含み、
そのデータ項目のデータは、前記通番を含むことを特徴
とするデータベース管理システム。 - 【請求項2】 請求項1に記載のデータベース管理シス
テムにおいて、長大可変長データ項目のデータを挿入す
る要求が与えられた時、そのデータに対する通番を採番
し、そのデータを第2のデータベース領域に格納し、そ
の格納位置と前記通番との対応をデータマッピング領域
に保持し、前記通番をデータ項目として含む基本データ
項目のデータを作成し、そのデータを第1のデータベー
ス領域に格納することを特徴とするデータベース管理シ
ステム。 - 【請求項3】 請求項1または請求項2に記載のデータ
ベース管理システムにおいて、通番は、ロールバック対
象としないことを特徴とするデータベース管理システ
ム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8121875A JPH09305449A (ja) | 1996-05-16 | 1996-05-16 | データベース管理システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8121875A JPH09305449A (ja) | 1996-05-16 | 1996-05-16 | データベース管理システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09305449A true JPH09305449A (ja) | 1997-11-28 |
Family
ID=14822096
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8121875A Pending JPH09305449A (ja) | 1996-05-16 | 1996-05-16 | データベース管理システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH09305449A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009237906A (ja) * | 2008-03-27 | 2009-10-15 | Fujitsu Ltd | コンピュータシステムのバックアップ方法 |
| JP2010092109A (ja) * | 2008-10-03 | 2010-04-22 | Fujitsu Ltd | 一括登録されるデータに係る情報システム、方法、およびプログラム |
| WO2011132357A1 (ja) * | 2010-04-22 | 2011-10-27 | 株式会社日立製作所 | データ処理方法、データ処理装置及びデータ処理プログラム |
-
1996
- 1996-05-16 JP JP8121875A patent/JPH09305449A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009237906A (ja) * | 2008-03-27 | 2009-10-15 | Fujitsu Ltd | コンピュータシステムのバックアップ方法 |
| JP2010092109A (ja) * | 2008-10-03 | 2010-04-22 | Fujitsu Ltd | 一括登録されるデータに係る情報システム、方法、およびプログラム |
| WO2011132357A1 (ja) * | 2010-04-22 | 2011-10-27 | 株式会社日立製作所 | データ処理方法、データ処理装置及びデータ処理プログラム |
| JP5450803B2 (ja) * | 2010-04-22 | 2014-03-26 | 株式会社日立製作所 | データ処理方法、データ処理装置及びデータ処理プログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5430869A (en) | System and method for restructuring a B-Tree | |
| US9155320B2 (en) | Prefix-based leaf node storage for database system | |
| US7243088B2 (en) | Database management system with efficient version control | |
| US6738790B1 (en) | Approach for accessing large objects | |
| US6061678A (en) | Approach for managing access to large objects in database systems using large object indexes | |
| US5999943A (en) | Lob locators | |
| CN107247808B (zh) | 一种分布式NewSQL数据库系统及图片数据查询方法 | |
| EP0662228B1 (en) | Apparatus for data storage and retrieval | |
| US7136867B1 (en) | Metadata format for hierarchical data storage on a raw storage device | |
| US6606618B2 (en) | Method for optimizing the performance of a database | |
| US6349305B1 (en) | Method and system for database processing by invoking a function related to index type definition, generating an execution plan based on index type name | |
| US6035303A (en) | Object management system for digital libraries | |
| US5613113A (en) | Consistent recreation of events from activity logs | |
| US6411964B1 (en) | Methods for in-place online reorganization of a database | |
| US6834275B2 (en) | Transaction processing system using efficient file update processing and recovery processing | |
| US20070118547A1 (en) | Efficient index versioning in multi-version databases | |
| JPH0652531B2 (ja) | リレーシヨナル・データベース管理システム | |
| US6427143B1 (en) | Method for loading rows into a database table while enforcing constraints | |
| US20030041069A1 (en) | System and method for managing bi-directional relationships between objects | |
| US6535895B2 (en) | Technique to avoid processing well clustered LOB's during reorganization of a LOB table space | |
| JPH09305449A (ja) | データベース管理システム | |
| US7512608B2 (en) | Method for processing structured documents stored in a database | |
| US5978810A (en) | Data management system and method for storing a long record in a set of shorter keyed records | |
| CN121350037A (zh) | 数据库的数据标记方法、装置、电子设备及存储介质 | |
| Huang | The implementation of relational data base management systems on micro-computers |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061116 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061121 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070118 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070619 |