(57)【要約】【課題】１つの分割キーでは多次元データベースが使用されるような状況において多面的な観点でのデータ検索を行なうには全データを検索対象としなければならなかった。また、これに改良を加えたものにおいてはハードウェアのシステム構成に依存したものになっていた。【解決手段】それぞれの分割キー毎に分割条件を指定して、これらの分割範囲を組み合わせた多次元となる複数の格納領域を同時に指定することで、分割表の定義を行う。同一層のディクショナリ表に格納される分割定義情報から、どの分割キーの値が検索条件に指定されても検索対象となる格納領域を必要最小限に絞り込むことができる。【選択図】図１
2007048318.tif 000002
【特許請求の範囲】
【請求項１】
リレーショナルデータベースを構成する表をキーレンジ分割またはハッシュ分割を組み合わせることにより複数次元に分割し、該複数次元のうち少なくとも２以上についてキーレンジを割り付ける前記表の列を決定し、該列は複数のキーレンジが予め設けられ、前記少なくとも２以上の列に割り付けられたそれぞれのキーレンジに対応して一つのデータ格納領域を割り付け、その分割定義情報をディクショナリに格納することを特徴とするリレーショナルデータベースの処理方法。
【請求項２】
第１の問合せ要求の入力に応じて前記ディクショナリを参照し、該入力した問合せ要求に含まれる前記列における第１の列に対応するキー値で特定される前記データ格納領域を検索範囲として特定し検索を行い、
第２の問合せ要求の入力に応じて前記ディクショナリを参照し、該入力した問合せ要求に含まれる前記列における第２の列に対応するキー値で特定される前記データ格納領域を検索範囲として特定し検索を行うことを特徴とする請求項１記載のリレーショナルデータベースの処理方法。
【請求項３】
データベースへの挿入要求の入力に応じて、該挿入要求に含まれる該挿入要求をデータベースへの挿入データを該挿入要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域に挿入することを特徴とする請求項１記載のリレーショナルデータベースの処理方法。
【請求項４】
データベースへの更新要求の入力に応じて、該更新要求に含まれるデータベースへの更新データを該更新要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域に格納されたデータについて更新することを特徴とする請求項１記載のリレーショナルデータベースの処理方法。
【請求項５】
検索要求の入力に応じて、該検索要求に含まれるデータベースへの検索条件で、該検索要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域について検索することを特徴とする請求項１記載のリレーショナルデータベースの処理方法。
【請求項６】
リレーショナルデータベースを構成する表をキーレンジ分割またはハッシュ分割を組み合わせることにより複数次元に分割し、該複数次元のうち少なくとも２以上についてキーレンジを割り付ける前記表の列を決定し、該列は複数のキーレンジが予め設けられ、前記少なくとも２以上の列に割り付けられたそれぞれのキーレンジに対応して一つのデータ格納領域を割り付ける手段と、その分割定義情報をディクショナリに格納する手段とを備えたことを特徴とするリレーショナルデータベースの処理装置。
【請求項７】
第１の問合せ要求の入力に応じて前記ディクショナリを参照し、該入力した問合せ要求に含まれる前記列における第１の列に対応するキー値で特定される前記データ格納領域を検索範囲として特定し検索を行い、
第２の問合せ要求の入力に応じて前記ディクショナリを参照し、該入力した問合せ要求に含まれる前記列における第２の列に対応するキー値で特定される前記データ格納領域を検索範囲として特定し検索を行う手段を備えたことを特徴とする請求項６記載のリレーショナルデータベースの処理装置。
【請求項８】
データベースへの挿入要求の入力に応じて、該挿入要求に含まれる該挿入要求をデータベースへの挿入データを該挿入要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域に挿入する手段を備えたことを特徴とする請求項６記載のリレーショナルデータベースの処理装置。
【請求項９】
データベースへの更新要求の入力に応じて、該更新要求に含まれるデータベースへの更新データを該更新要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域に格納されたデータについて更新する手段を備えたことを特徴とする請求項６記載のリレーショナルデータベースの処理装置。
【請求項１０】
検索要求の入力に応じて、該検索要求に含まれるデータベースへの検索条件で、該検索要求に含まれる複数個の前記キーレンジが割り付けられた列に対応するキー値で特定される前記データ格納領域について検索する手段を備えたことを特徴とする請求項６記載のリレーショナルデータベースの処理装置。
【請求項１１】
リレーショナルデータベースにおける複数の列のうちキーレンジを割り付ける前記列を複数決定し、該列は複数のキーレンジが予め割り付けられ、前記列に割り付けられたそれぞれのキーレンジに対応して一つのデータ格納領域を割り付け、その割り付けの定義情報をディクショナリに格納することを特徴とするリレーショナルデータベースの処理方法。
【請求項１２】
列に割り付けられたそれぞれのキーレンジに対応して一つのデータ格納領域を割り付け、その割り付けの定義情報をディクショナリに格納することを特徴とするリレーショナルデータベースの処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースの処理方法に係り、特に、ある規則に従いデータベースを複数の記憶部に格納する方法を指定したデータベースの格納方法に関する。
【背景技術】
【０００２】
リレーショナルデータベース管理システムの表のデータ格納方法として、表の分割格納がある。この表分割格納の手法としては、キーレンジ分割、ハッシュ分割等が知られている。これらの技術を応用したものは特許文献１及び特許文献２に記載されている。また、これらの手法を複数段組み合わせた分割方法は特許文献３に記載されている。
【０００３】
これらの表を分割する理由は単に大量なデータを１つの外部記憶装置に格納することができないからではない。検索時に特定の外部記憶装置または論理的なデータベース格納領域のみを参照及び更新することによる処理速度と同時実行性の向上を目的としており、さらにバックアップや再編成を局所化できることによる運用面でのメリットをも目的としている。
【０００４】
キーレンジ分割やハッシュ分割では、表の１列の値を使用する場合と、表の複数の列を使用する場合がある。表の複数の列を使用する場合は複数の列の値を連結して、あくまで一つのキーとして論理的なデータベース格納領域を決定するものである。また、前述の特許文献３記載のようなこれらの手法を多段に組み合わせた分割方法では、コンピュータ群における各コンピュータへの一段目のデータベースの分割、各コンピュータにおける各プロセッサへの二段目のデータベースの分割、さらに各プロセッサにおける各外部記憶装置への三段目のデータベースの分割というように、ハードウェア構成の多段な構成要素を利用するものである。ここでのそれぞれのフェーズにおける分割ではあくまでも一つのキーが使用されるというものである。
【０００５】
他の従来例としては、特許文献４がある。これは、１つのキーのレンジでデータベースを分割するものである。しかも、表を定義するときにキーの値から自ずとデータの格納位置が決まるようにするものではない。データを格納するときにどこに格納したかを逐一記憶するためにレコードの格納レンジ番号と該レコードに含まれるキー値とを対応付けてキー情報格納域に格納するものである。
【０００６】
更に他の従来例としては特許文献５がある。ここではキーレンジ分割に用いられるキーは主キーの１つのキーだけである。そして、分割された部分テーブルをローカルデータベース処理手段に分散して保持させる。このような環境において２次キーでの検索を可能としたものである。
【０００７】
【特許文献１】特開平６−１３９１１９号公報
【特許文献２】特開平６−３１４２９９号公報
【特許文献３】特開平１０−２６９２２５号公報
【特許文献４】特開平１０−２４０７４４号公報
【特許文献５】特開平５−３３４１６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来の分割格納技術では、１つの表を１つのプロセッサ内で複数の格納領域に分割する場合、その分割条件に使用するキーはただ１つである。したがって、ただ１つである分割キー以外の条件では格納領域を絞り込むことはできず、すべてのデータ格納領域を処理対象とせざるを得ない。また、多段の組合せで複数キーを使用する場合はハードウェアのシステム構成に依存することになる。
【０００９】
そこで本発明は、前記課題を解決するデータベース管理システムを実現することを目的とする。
【課題を解決するための手段】
【００１０】
前記目的を達成するために、本発明はリレーショナルデータベースの１つの表を構成する列の中からＮ個(Ｎ＞１)のキーを用いて、それぞれの分割条件を指定することにより、Ｎ次元となるような各キーによる分割単位をすべて組み合わせてなるデータ格納領域を持つような分割表を定義する。この場合ハッシュ分割をくみ合わせても良い。この際、分割定義情報が同一層（同一のＤＢＭＳ内）のディクショナリに格納される。この分割定義情報に従い、データを多次元の複数の論理的なデータベース格納領域に格納し、問い合わせ要求ではどの分割キーの値からでも論理的なデータベース格納領域を必要最小限に特定することによって、高速なデータベースアクセスを実現するデータベース管理システムを提供する。
【発明の効果】
【００１１】
以上のように、本発明によれば、コンピュータ（システム）毎による分割、各コンピュータ（システム）内におけるプロセッサ毎の分割、各プロセッサ内の記憶装置毎の分割というように階層的な構造があるなしにかかわらず、多大な蓄積データを複数（Ｎ個）の分割キーを指定して、Ｎ次元の格納領域に分割格納することができる。また、どの分割キーの値が指定されても、最適に必要最小限の格納領域に限定して検索処理を実行するため、同時実効性、スループットが向上できる。さらに、バックアップやデータ再編成の実行単位をも、よりフレキシブルに設定できるため、運用性の向上にも役立つ。
【発明を実施するための最良の形態】
【００１２】
本発明はデータベースを動的なあるいは多次元の観点から検索出来るようにしようとするものであり、以下、本発明の一実施例を図１から図９を参照しながら説明する。
【００１３】
本発明を実装するデータベース管理システムの構成を図１に示す。データベース管理システムは、１個のプロセッサ、又は高速ネットワークやプロセッサ間結合装置１０１により接続された複数のプロセッサ１０２から構成され、それぞれのプロセッサにおける複数の外部記憶装置１０３も構成要素となる。論理的なデータベース格納領域１０４は、各外部記憶装置上に割り当てられ、複数の外部装置にまたがって割り当てられる場合もある。表や格納領域の定義情報を格納するディクショナリ１０５は外部記憶装置上の格納領域に存在し、専用のプロセッサで管理される場合と、複数のプロセッサで共有して管理される場合とがある。
【００１４】
ディクショナリ表１１０は分割キーの定義情報を管理する表であり、表名列１１１、分割キーＩＤ（表定義時の指定順序に相当し１つの表でユニークな値）列１１２、分割キー構成列名列１１３、構成列のデータ型列１１４、分割範囲数列１１５から構成される。また、この表の列１１１と１１２から構成されるＢトリーインデクスがディクショナリ表と同じ格納領域内に存在し、表名による分割キー定義情報の検索処理を高速化するために使用される。ディクショナリ表１１０は、図３におけるＤ３０１に相当する。
【００１５】
ディクショナリ表１２０は分割キーの範囲情報を管理する表であり、表名列１２１、分割キーＩＤ列１２２、それぞれの分割範囲の上限となる境界値列１２３、同じ分割キー内で境界値の昇順に従い１から割り当てた（同じ分割キー内でユニークとなる）分割範囲番号列１２４から構成される。また、この表の列１２１、１２２、および１２４から構成されるＢトリーインデクスがディクショナリ表と同じ格納領域内に存在し、表名と分割キーＩＤによる分割範囲情報の検索処理を高速化するために使用される。ディクショナリ表１２０は、図３におけるＤ３０２に相当する。
【００１６】
ディクショナリ表１３０は表と格納領域の対応関係を管理する表であり、表名列１３１、格納領域毎に表定義文で指定された順番通りに１から昇順に割り当てた格納領域順序番号（１つの表でユニークとなる番号）列１３２、格納領域名列１３３から構成される。また、この表の列１３１と１３２から構成されるＢトリーインデクスがディクショナリ表と同じ格納領域内に存在し、表名、または表名と格納領域順序番号による格納領域名の検索処理を高速化するために使用される。ディクショナリ表１３０は、図３におけるＤ３０３に相当する。
【００１７】
ディクショナリ表１４０はシステム内の全ての格納領域の定義情報を管理する表であり、格納領域名列１４１、格納領域が存在する外部記憶装置のファイル名列１４３、外部記憶装置が管理されるプロセッサ名列１４２から構成される。また、この表の列１４１から構成されるＢトリーインデクスがディクショナリ表と同じ格納領域内に存在し、格納領域名による格納領域定義情報の検索処理を高速化するために使用される。ディクショナリ表１４０は、図４におけるＤ４０１に相当する。
【００１８】
本発明の特徴を表すＳＱＬの表定義文の一例と、その分割イメージを図２に示す。例に示す売り上げ実績表では、数ある構成列のうち、３つの列（日付、支店コード、商品種別）をそれぞれ独立した分割キーとしており、各キーとも２つの分割の境界値が指定されているから、３つのキーレンジ（範囲）に分割されているため、結局この例では２７（３×３×３）個の格納領域に分割されることになる。しかし、本発明では分割キーの数、および１つの分割キーによる分割数には特に上限は設けないため、実際には膨大な数の格納領域に分割することが可能である。各格納領域は、どのプロセサのどの外部記憶装置上にあってもかまわない。それぞれの分割範囲の組み合わせにおけるデータ容量やアクセス頻度に応じ、自由に配置することができる。もちろん、１つのプロセサに閉じていてもよい。
【００１９】
図２の表を定義した場合の表の分割定義情報を管理するディクショナリ表の内容を図３に示す。ディクショナリ表１１０に相当するＤ３０１は、分割キーの定義情報を管理する表であり、分割キー毎にそのＩＤ（表定義時の指定順序）、構成列（分割キー構成列名）とそのデータ型（括弧内はキャラクタデータのバイト数を示す）、境界値による分割数などを格納する。ディクショナリ表１２０に相当するＤ３０２は、分割キーの範囲情報を管理する表であり、それぞれの分割キーにおける分割範囲毎にその上限となる境界値および１から昇順に割り当てた分割範囲番号を格納する。ディクショナリ表１３０に相当するＤ３０３は、表を分割して構成されるものであって挿入データを格納する格納領域の情報を管理する表であり、格納領域毎に表定義文で指定された順番通りに１から昇順に割り当てた格納領域順序番号を格納する。上記の例では３つの分割キーがそれぞれ３つの領域に分割されているので格納領域は１から２７までに分割される。
【００２０】
格納領域の定義情報を管理するディクショナリ表の内容の例を図４に示す。ディクショナリ表１４０に相当するＤ４０１は、データベースシステムにおいて定義された全格納領域の定義情報を管理する表であり、格納領域毎に管理ノード（プロセッサ）および外部記憶装置の情報が格納される。
【００２１】
本発明を実装するデータベース管理システムの機能構成図を図５に示す。データベース管理システムは本実施例ではプログラムによって実現されており、コンピュータにより読み取り可能な記録媒体に記録可能である。データベース管理システムは、ＳＱＬを受け付けるコマンド解析部５０１、ＳＱＬの実行手順を生成するアクセスパス生成部５０２、実行手順に従いデータ処理を行うＳＱＬ実行制御部５０３、ディクショナリを管理するディクショナリ管理部５０４、入力データの値や検索条件からアクセス対象となる格納領域を特定する格納領域特定部５０５、データの入出力を司るデータベース入出力部５０６、他プロセッサとの通信を制御する通信制御部５０７から構成される。機能コンポーネント５０１から５０６はすべてのプロセッサに装備される場合と、プロセッサの役割に応じて装備される機能コンポーネントがプロセッサ毎に異なる場合とがあり、通信制御部５０７は複数のプロセッサ構成の場合に限りすべてのプロセッサに備わっている。
【００２２】
リレーショナルデータベースの表「売り上げ実績」の表定義の方法について、図２を例に用いて説明する。データベース利用者は分割キーを複数指定し、各分割キー毎に境界値を指定する。この例では第１分割キーを日付、第２分割キーを支店コード、第３分割キーを商品種別としており、それぞれ２つずつの境界値を指定している（それぞれ３つの分割範囲となる）。また、同時に格納領域を指定する。第１分割キーの１番目の範囲かつ第２分割キーの１番目の範囲かつ第３分割キーの１番目の範囲を満たすデータを格納する格納領域（Ａ１１１）、第１分割キーの１番目の範囲かつ第２分割キーの１番目の範囲かつ第３分割キーの２番目の範囲を満たすデータを格納する格納領域（Ａ１１２）、第１分割キーの１番目の範囲かつ第２分割キーの１番目の範囲かつ第３分割キーの３番目の範囲を満たすデータを格納する格納領域（Ａ１１３）、第１分割キーの１番目の範囲かつ第２分割キーの２番目の範囲かつ第３分割キーの１番目の範囲を満たすデータを格納する格納領域（Ａ１２１）、……という順番（規則）ですべての組み合わせを満足する格納領域を指定する。
【００２３】
表定義の流れについて図６に示す。表定義文をコマンド解析部５０１が解析する（６０１）。解析された分割定義情報はディクショナリ管理部５０４に渡され、図１に示すディクショナリ表に格納される。分割キー毎の定義情報としては、その指定順序に従い１から昇順に分割キーＩＤを割り当て、表名、分割キーＩＤ、分割キー構成列名（複数列で１つのキーを構成することも可）、データ型、分割数を１組（行）のデータとしてディクショナリ表１１０に登録する（６０２）。図２の例ではＤ３０１に３行のデータを登録する。各分割キーにおける各分割範囲の定義情報としては、各分割範囲毎に対応する境界（最大）値の昇順に従い１から分割範囲番号を割当て、表名、分割キーＩＤ、境界値（最後の範囲は分割キーの最大値となる）、分割範囲番号を１組（行）のデータとしてディクショナリ表１２０に登録する（６０３）。図２の例では３つの分割キーそれぞれが３つの分割範囲に分けられるため、Ｄ３０２に９行のデータを登録する。表定義に関する格納領域定義情報としては、各格納領域に対して表定義で指定された順番に従い１から格納領域順序番号を割り当て、表名、格納領域順序番号、格納領域名を１組（行）のデータとしてディクショナリ表１３０に登録する（６０４）。行数は指定された格納領域の数に相当し、図２の例ではＤ３０３に２７行のデータを登録する。
【００２４】
売り上げ実績表にデータを挿入する場合の流れを図７に示す。データベース利用者が端末からデータの挿入を指示するＳＱＬを発行すると、コマンド解析部５０１により解析処理が行われ、 ＳＱＬの最適な実行手順を生成するアクセスパス生成部５０２に制御が渡る（７０１）。アクセスパス生成部５０２は挿入するデータの分割キーの値とともに格納領域特定部５０５に制御を渡す（７０２）。格納領域特定部５０５はディクショナリ管理部５０４を介してディクショナリに格納されている対象表の分割定義情報（１１０、１２０）を求め（７０３）、求めた分割定義情報と挿入データの分割キーの値から格納領域を特定する（７０４、詳細は後述）。アクセスパス生成部５０２は、格納領域特定部で特定された格納領域の情報を元にアクセスパスを生成し、ＳＱＬ実行制御部５０３に制御を渡す（７０５）。ＳＱＬ実行制御部５０３はアクセスパスに従い、同一プロセッサのデータベース入出力部５０６、または通信制御部５０７を介して他プロセッサのデータベース入出力部５０６に制御を渡す（７０６）。データベース入出力部５０６は該当する格納領域にデータを挿入する（７０７）。
【００２５】
格納領域特定処理の流れを図８に示す。ここでは挿入データが持つ分割キー毎の分割範囲番号を求め、さらに、上記の例でいえば格納領域が格納領域順序番号１から２７のどれに該当するかを求めるものである。ここで、データの挿入時には挿入データに関して各分割キーについて必ず値が与えられているものである。
【００２６】
はじめに分割キーＩＤを格納する変数ｎに初期値１を代入する（８０１）（すなわち、最初の分割キーについて処理をする、上記の例でいえば「日付」について処理をすることになる）。次に分割キー毎に用意されるビット変数（各ビットのオフセット＋１が格納領域順序番号に相当するため、１エントリが表の格納表数×１ビット以上の長さの分割キー数分の配列）の要素Ｓ（ｎ）を０クリアする（８０２）（即ち、上記の例でいえば、分割キー「日付」に対応する２７個のビット列が用意され、初期値として「０」にされる）。次に検索時の特定処理の場合は、ある分割キーにおいては条件値が指定されない場合があるため、この時はＳ（ｎ）の全てのビットをＯＮとして（全格納領域を検索対象候補として）８１１に分岐する（８０３）(検索時と共通のフローとしたためで、挿入時は必ず分割キーについての値は特定されるので関係ない)。挿入時または分割キーＩＤがｎである分割キーに対する検索条件が指定されている場合は、分割キーＩＤがｎより大きい分割キーの分割数（ディクショナリ表１１０から取得済み）をすべて掛け合わせ、その値（該当する分割キーが存在しない場合は１）を変数Ｃに代入する（８０４）(上記の例でｎ＝１即ち、「日付」についての処理をしている場合は分割キーＩＤ２の「支店コード」の分割数３と分割キーＩＤ３の「商品種別」の分割数３を掛けた９をＣに代入)。次に分割キーＩＤがｎである分割キーの分割数を変数Ｄに代入する（８０５）（「日付」の場合はＤ＝３である）。
【００２７】
次に分割キーＩＤがｎである分割キーの値（挿入値または検索条件）とディクショナリ表１２０から得たその分割キーの昇順に並んだ境界値とを比較して（分割範囲数が多くても高速処理できるよう２分探索でサーチをかけ）、該当する分割範囲番号を求め、変数Ｆに代入する（８０６）。次に該当する先頭の格納領域順序番号を求めるべく、（Ｆ−１）×Ｃ＋１を変数Ｇに代入する（８０７）（もし、分割キーの値が分割範囲番号２であればＧ＝１０である）。次にビット変数Ｓ（ｎ）におけるＧ番目から連続するＣ個のビットをＯＮにする（８０８）（上記の例でいえばＳ（１）の１０番目から連続する９個のビットをＯＮにする）。
【００２８】
次に、Ｇの値を次に該当する格納領域順序番号に更新すべく、Ｃ×Ｄを加える（８０９）。Ｇの値が格納領域順序番号の最大値を超えていなければ８０８に分岐して処理を繰り返す（８１０）。Ｇの値が格納領域順序番号の最大値を超えていれば（上記の例でいえば２７を越せばもうその分割キーについての処理は終了したから）、次の分割キーによる特定処理を行うためにｎに１を加算する（８１１）。ｎが分割キーの数を超えていなければ８０２に分岐して処理を繰り返す（８１２）（即ち、分割キーＩＤ２の「支店コード」および分割キーＩＤ３の「商品種別」について上記と同様の処理を行う）。ｎが分割キーの数を超えれば、ビット変数の配列要素Ｓ（１）〜Ｓ（ｎ−１）（上記の例でいえばそれぞれ２７個のビット列）までのすべての論理積を求める（上記の例でいえば分割キー毎のそれぞれの２７個のビットのうち共通にビットがＯＮになっている位置が求まる、そこがその挿入データの格納領域順序番号である）。ＯＮとなるビット（挿入時は必ず１つ）位置に対応する格納領域順序番号と表名によりディクショナリ表１３０を検索することで、特定された格納領域名が求まる。これら格納領域名によりディクショナリ表１４０を検索することで、特定された格納領域のプロセッサと外部記憶装置への情報が求まる（８１３）。データ挿入時には、すべての分割キーの値からただ１つの格納領域が求まる。
【００２９】
売り上げ実績表からデータを検索する場合の流れを図９に示す。データベース利用者が端末からデータの検索を指示するＳＱＬを発行すると、コマンド解析部５０１により解析処理が行われ、 ＳＱＬの最適な実行手順を生成するアクセスパス生成部５０２に制御が渡る（９０１）。アクセスパス生成部５０２は検索条件で指定された分割キーの値（またはその範囲）とともに格納領域特定部５０５に制御を渡す（９０２）。格納領域特定部５０５はディクショナリ管理部５０４を介してディクショナリに格納されている対象表の分割定義情報（１１０、１２０）を求め（９０３）、求めた分割定義情報と検索条件の分割キーの値から格納領域を特定する（９０４、詳細は前述）（このとき、ある分割キーについて分割範囲が与えられなかった場合は複数の格納領域について検索が行なわれることになる）。アクセスパス生成部５０２は、格納領域特定部で特定された格納領域の情報を元にアクセスパスを生成し、ＳＱＬ実行制御部５０３に制御を渡す（９０５）。ＳＱＬ実行制御部５０３はアクセスパスに従い、同一プロセッサのデータベース入出力部５０６、または通信制御部５０７を介して他プロセッサのデータベース入出力部に制御を渡す（９０６）。データベース入出力部は該当する格納領域にアクセスしてデータを検索する（９０７）。データ検索時は、すべての分割キーに対して検索条件が指定されている場合に限りただ１つの格納領域が求まる。ただし、いずれかの分割キーに対して検索条件が指定されていれば、アクセス不要な格納領域を検索対象から排除し、格納領域を絞り込むことができる。
【図面の簡単な説明】
【００３０】
【図１】本発明に係わるデータベース管理システムの構成図である。
【図２】多次元分割の定義文の例とイメージ図である。
【図３】表の分割定義情報を格納するディクショナリ表の内容の一例である。
【図４】格納領域の定義情報を格納するディクショナリ表の内容の一例である。
【図５】本発明に係わるデータベース管理システムの機能コンポーネントによる構成を示す図である。
【図６】表定義における流れを示す図である。
【図７】データ挿入時における流れを示す図である。
【図８】格納領域を特定する処理の流れを示す図である。
【図９】データ検索時における流れを示す図である。
【符号の説明】
【００３１】
１０１…ネットワーク又はプロセッサ間結合装置、１０２…プロセッサ、１０３…外部記憶装置、１０４…データベース格納領域、１０５…ディクショナリを格納するデータベース格納領域、１１０…分割キー定義情報管理表、１１１…表名列、１１２…分割キーＩＤ列、１１３…分割キー構成列名列、１１４…データ型列、１１５…分割範囲数列、１２０…分割キー範囲情報管理表、１２１…表名列、１２２…分割キーＩＤ列、１２３…境界値列、１２４…分割範囲番号列、１３０…分割表格納領域管理表、１３１…表名列、１３２…格納領域順序番号列、１３３…格納領域名列、１４０…格納領域定義情報管理表、１４１…格納領域名列、１４２…プロセッサ名列、１４３…外部記憶装置名列。
【図１】
2007048318.tif 000003
【図２】
2007048318.tif 000004
【図３】
2007048318.tif 000005
【図４】
2007048318.tif 000006
【図５】
2007048318.tif 000007
【図６】
2007048318.tif 000008
【図７】
2007048318.tif 000009
【図８】
2007048318.tif 000010
【図９】
2007048318.tif 000011