JPH09167167A - オブジェクト指向データベースにおけるオブジェクト検索方法 - Google Patents
オブジェクト指向データベースにおけるオブジェクト検索方法Info
- Publication number
- JPH09167167A JPH09167167A JP7327122A JP32712295A JPH09167167A JP H09167167 A JPH09167167 A JP H09167167A JP 7327122 A JP7327122 A JP 7327122A JP 32712295 A JP32712295 A JP 32712295A JP H09167167 A JPH09167167 A JP H09167167A
- Authority
- JP
- Japan
- Prior art keywords
- class
- information
- search
- attribute
- management unit
- 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)【要約】
【課題】 指定されたクラス以下の階層に存する全ての
オブジェクトの中から指定されたメンバを有するオブジ
ェクトのみを確実かつ効率的に検索する。 【解決手段】 属性に対応する情報からなるオブジェク
トと、属性を備え、自己の備える属性を具備したオブジ
ェクトを所属させるクラスとから構成されており、ま
た、クラスは、自己の備える属性を少なくとも具備した
クラスを下位のクラスとして所属させることで、クラス
階層を構成するオブジェクト指向データベースにおい
て、クラスと属性とを指定して当該データベースを検索
する場合に、クラス及び属性の対応関係の情報と、クラ
スの階層構造の情報とに基づいて、指定されたクラス及
び当該クラスより下位のクラスのうち、指定された属性
を有するクラスのみを検索の対象クラスとして選択する
オブジェクト指向データベースにおけるオブジェクト検
索方法。
オブジェクトの中から指定されたメンバを有するオブジ
ェクトのみを確実かつ効率的に検索する。 【解決手段】 属性に対応する情報からなるオブジェク
トと、属性を備え、自己の備える属性を具備したオブジ
ェクトを所属させるクラスとから構成されており、ま
た、クラスは、自己の備える属性を少なくとも具備した
クラスを下位のクラスとして所属させることで、クラス
階層を構成するオブジェクト指向データベースにおい
て、クラスと属性とを指定して当該データベースを検索
する場合に、クラス及び属性の対応関係の情報と、クラ
スの階層構造の情報とに基づいて、指定されたクラス及
び当該クラスより下位のクラスのうち、指定された属性
を有するクラスのみを検索の対象クラスとして選択する
オブジェクト指向データベースにおけるオブジェクト検
索方法。
Description
【0001】
【発明の属する技術分野】本発明は、計算機を用いたオ
ブジェクト指向データベースにおけるオブジェクト検索
方法に関するものである。
ブジェクト指向データベースにおけるオブジェクト検索
方法に関するものである。
【0002】
【従来の技術】従来のデータベースは階層型、あるいは
関係型と呼ばれるデータベース管理方式を用いたものが
多い。このような従来の方式は、比較的単純な構造の大
量のデータを扱う事務処理分野を中心に利用されてい
る。これらの中でも表形式で表せる単純なデータ構造を
使い、表相互の関係操作によるデータの検索・操作を行
う関係型データベース管理システムが広く利用されてい
る。
関係型と呼ばれるデータベース管理方式を用いたものが
多い。このような従来の方式は、比較的単純な構造の大
量のデータを扱う事務処理分野を中心に利用されてい
る。これらの中でも表形式で表せる単純なデータ構造を
使い、表相互の関係操作によるデータの検索・操作を行
う関係型データベース管理システムが広く利用されてい
る。
【0003】しかし、階層型あるいは関係型のデータベ
ース管理方式をCAD,CASE,画像処理,マルチメ
ディア処理などの分野に適用する場合には以下に示す問
題がありデータベースを開発するのが難しい。また、処
理効率の面からもデータベース化するのが必ずしも得策
であるとは限らない場合が多い。
ース管理方式をCAD,CASE,画像処理,マルチメ
ディア処理などの分野に適用する場合には以下に示す問
題がありデータベースを開発するのが難しい。また、処
理効率の面からもデータベース化するのが必ずしも得策
であるとは限らない場合が多い。
【0004】(a)個々のデータ要素のデータ構造が複
雑でありデータベース管理システムの提供するデータ定
義形式で直接的に表現できない。 (b)データ相互が複雑に関係し合うデータの定義およ
び操作指定が複雑であり、しかも全データを対象に検索
・比較を行うための処理効率が悪い。
雑でありデータベース管理システムの提供するデータ定
義形式で直接的に表現できない。 (b)データ相互が複雑に関係し合うデータの定義およ
び操作指定が複雑であり、しかも全データを対象に検索
・比較を行うための処理効率が悪い。
【0005】(c)データの定義・操作機能を提供する
データベース管理がそれ自体独立した体系となっており
人間との対話形式の実行を主な利用方法としている。こ
のためデータベース処理と計算処理などのプログラムを
結合した処理体系を構築するのが難しい。
データベース管理がそれ自体独立した体系となっており
人間との対話形式の実行を主な利用方法としている。こ
のためデータベース処理と計算処理などのプログラムを
結合した処理体系を構築するのが難しい。
【0006】これらの問題を解決するものとしてオブジ
ェクト指向データベースが提唱され、開発・利用されて
いる。オブジェクト指向データベースはC言語であるC
++やSmalltalkなどの既存のオブジェクト指向プログ
ラミング言語を基本としてデータベース管理機能を付加
したものが多い。
ェクト指向データベースが提唱され、開発・利用されて
いる。オブジェクト指向データベースはC言語であるC
++やSmalltalkなどの既存のオブジェクト指向プログ
ラミング言語を基本としてデータベース管理機能を付加
したものが多い。
【0007】オブジェクト指向では、少しだけ性質の異
なるクラスをクラス階層という関係で結びつける。例え
ば、“従業員”というクラスと“部長”,“課長”,
“一般”というクラスを考えた場合、“部長”,“課
長”,“一般”クラスは、“従業員”とは少しずつ異な
った性質を持つクラスであり、より一般的な性質を持つ
“従業員”クラスを上位クラス,“従業員”クラスから
見ればより特殊な性質を持つ“部長”,“課長”,“一
般”を下位クラスと考えることができる。
なるクラスをクラス階層という関係で結びつける。例え
ば、“従業員”というクラスと“部長”,“課長”,
“一般”というクラスを考えた場合、“部長”,“課
長”,“一般”クラスは、“従業員”とは少しずつ異な
った性質を持つクラスであり、より一般的な性質を持つ
“従業員”クラスを上位クラス,“従業員”クラスから
見ればより特殊な性質を持つ“部長”,“課長”,“一
般”を下位クラスと考えることができる。
【0008】この上位,下位の関係をクラス階層とい
う。ここで、上位のクラスの性質を下位のクラスが受け
継ぐことを継承という。継承を用いれば、下位のクラス
の性質を記述する際に下位クラスとの差分だけを記述す
ればすむ。クラス階層の継承関係を利用すればプログラ
ムを効率よく記述できるなどの利点があり、オブジェク
ト指向の重要な概念の一つである。
う。ここで、上位のクラスの性質を下位のクラスが受け
継ぐことを継承という。継承を用いれば、下位のクラス
の性質を記述する際に下位クラスとの差分だけを記述す
ればすむ。クラス階層の継承関係を利用すればプログラ
ムを効率よく記述できるなどの利点があり、オブジェク
ト指向の重要な概念の一つである。
【0009】
【発明が解決しようとする課題】上述したオブジェクト
指向データベースにおいて、通常オブジェクトの検索
は、一つのクラスのみを対象として行う。したがって、
クラスが複数あり、また、クラス階層が複数あるような
場合、ユーザは、検索したい情報と関連のありそうなク
ラスについてそれぞれ検索を行わなければならない。こ
のやり方は、検索の効率性と確実性の観点からして問題
がある。
指向データベースにおいて、通常オブジェクトの検索
は、一つのクラスのみを対象として行う。したがって、
クラスが複数あり、また、クラス階層が複数あるような
場合、ユーザは、検索したい情報と関連のありそうなク
ラスについてそれぞれ検索を行わなければならない。こ
のやり方は、検索の効率性と確実性の観点からして問題
がある。
【0010】一方、例えばクラス階層がある場合には、
検索時に上位のクラスを指定して、上位クラスから下位
のクラスにまでに検索対象を拡張することが考えられ
る。これでは、検索対象の量が膨大なものとなり、非効
率的であり検索にも時間を要することになる。
検索時に上位のクラスを指定して、上位クラスから下位
のクラスにまでに検索対象を拡張することが考えられ
る。これでは、検索対象の量が膨大なものとなり、非効
率的であり検索にも時間を要することになる。
【0011】さらに、階層関係のあるクラス間におい
て、クラスの性質を示すメンバ(属性)中に共通するも
のがあれば、当該共通するメンバをあらかじめオブジェ
クトを検索するときの索引として持たせる方法が考えら
れる。
て、クラスの性質を示すメンバ(属性)中に共通するも
のがあれば、当該共通するメンバをあらかじめオブジェ
クトを検索するときの索引として持たせる方法が考えら
れる。
【0012】しかし、このようにクラス階層を有するク
ラス間で共通の属性(メンバ)に対して一つの索引を持
たせる場合、次のような問題がある。 ・クラス間で共通な属性のみを索引として持たせるた
め、部分的なクラス、すなわち共通属性のないクラスに
対して検索を行う場合には、この索引は適さない。
ラス間で共通の属性(メンバ)に対して一つの索引を持
たせる場合、次のような問題がある。 ・クラス間で共通な属性のみを索引として持たせるた
め、部分的なクラス、すなわち共通属性のないクラスに
対して検索を行う場合には、この索引は適さない。
【0013】・あらかじめあらゆる組み合わせの索引を
用意しなければならず、索引の管理が大がかりになる。 ・共通でない属性は索引の対象に含めることができな
い。
用意しなければならず、索引の管理が大がかりになる。 ・共通でない属性は索引の対象に含めることができな
い。
【0014】このように各従来方式には種々の問題点が
あるが、これらの問題を解決し、検索対象にサブクラス
を含めた効率の良いオブジェクト検索方法を確立するこ
とが、本発明が解決しようとする技術的課題である。
あるが、これらの問題を解決し、検索対象にサブクラス
を含めた効率の良いオブジェクト検索方法を確立するこ
とが、本発明が解決しようとする技術的課題である。
【0015】すなわち本発明は、このような実情を考慮
してなされたもので、オブジェクト指向データベースに
おいてクラス階層がある場合に、指定されたクラス以下
の階層に存する全てのオブジェクトの中から指定された
メンバを有するオブジェクトのみを確実かつ効率的に検
索することを可能としたオブジェクト指向データベース
におけるオブジェクト検索方法を提供することを目的と
する。
してなされたもので、オブジェクト指向データベースに
おいてクラス階層がある場合に、指定されたクラス以下
の階層に存する全てのオブジェクトの中から指定された
メンバを有するオブジェクトのみを確実かつ効率的に検
索することを可能としたオブジェクト指向データベース
におけるオブジェクト検索方法を提供することを目的と
する。
【0016】
【課題を解決するための手段】上記課題を解決するため
に、請求項1に対応する発明は、属性に対応する少なく
とも一つの属性情報からなるオブジェクトと、少なくと
も一つの属性を備え、自己の備える属性を具備した前記
オブジェクトを所属させるクラスとから構成されてお
り、また、クラスは、自己の備える属性を少なくとも具
備したクラスを下位のクラスとして所属させることで、
クラス階層を構成するオブジェクト指向データベースに
おいて、少なくともクラスと属性とを指定して当該デー
タベースを検索する場合に、クラス及び属性の対応関係
の情報と、クラスの階層構造の情報とに基づいて、指定
されたクラス及び当該クラスより下位のクラスのうち、
指定された属性を有するクラスのみを前記検索の対象ク
ラスとして選択するオブジェクト指向データベースにお
けるオブジェクト検索方法である。
に、請求項1に対応する発明は、属性に対応する少なく
とも一つの属性情報からなるオブジェクトと、少なくと
も一つの属性を備え、自己の備える属性を具備した前記
オブジェクトを所属させるクラスとから構成されてお
り、また、クラスは、自己の備える属性を少なくとも具
備したクラスを下位のクラスとして所属させることで、
クラス階層を構成するオブジェクト指向データベースに
おいて、少なくともクラスと属性とを指定して当該デー
タベースを検索する場合に、クラス及び属性の対応関係
の情報と、クラスの階層構造の情報とに基づいて、指定
されたクラス及び当該クラスより下位のクラスのうち、
指定された属性を有するクラスのみを前記検索の対象ク
ラスとして選択するオブジェクト指向データベースにお
けるオブジェクト検索方法である。
【0017】また、請求項2に対応する発明は、請求項
1に対応する発明において、検索の対象クラスの選択
は、属性を索引として対応する下位クラスを検索可能
な,少なくとも下位クラスを所属させる各クラス毎に設
けられた階層索引情報を用いて行われるオブジェクト指
向データベースにおけるオブジェクト検索方法である。
1に対応する発明において、検索の対象クラスの選択
は、属性を索引として対応する下位クラスを検索可能
な,少なくとも下位クラスを所属させる各クラス毎に設
けられた階層索引情報を用いて行われるオブジェクト指
向データベースにおけるオブジェクト検索方法である。
【0018】さらに、請求項3に対応する発明は、請求
項1又は2に対応する発明において、オブジェクト又は
クラスの追加、変更もしくは削除が可能な場合に、追
加、変更もしくは削除がされると、対応するクラス及び
属性の対応関係の情報とクラスの階層構造の情報、もし
くは対応する階層索引情報を修正することで、追加、変
更もしくは削除後においても検索の対象クラスの選択を
可能としたオブジェクト指向データベースにおけるオブ
ジェクト検索方法である。
項1又は2に対応する発明において、オブジェクト又は
クラスの追加、変更もしくは削除が可能な場合に、追
加、変更もしくは削除がされると、対応するクラス及び
属性の対応関係の情報とクラスの階層構造の情報、もし
くは対応する階層索引情報を修正することで、追加、変
更もしくは削除後においても検索の対象クラスの選択を
可能としたオブジェクト指向データベースにおけるオブ
ジェクト検索方法である。
【0019】したがって、まず、請求項1に対応する発
明のオブジェクト指向データベースにおけるオブジェク
ト検索方法においては、そのオブジェクト指向データベ
ースは、階層構造を有し、あるクラスの下位に、そのク
ラスの属性を含む属性を有するクラスが所属する構成と
なっている。
明のオブジェクト指向データベースにおけるオブジェク
ト検索方法においては、そのオブジェクト指向データベ
ースは、階層構造を有し、あるクラスの下位に、そのク
ラスの属性を含む属性を有するクラスが所属する構成と
なっている。
【0020】このような階層構造を有するデータベース
の少なくともクラスと属性とを指定して検索する場合
に、クラス及び属性の対応関係の情報と、クラスの階層
構造の情報とに基づいて、指定されたクラス及び当該ク
ラスより下位のクラスのうち、指定された属性を有する
クラスのみが検索の対象クラスとして選択される。
の少なくともクラスと属性とを指定して検索する場合
に、クラス及び属性の対応関係の情報と、クラスの階層
構造の情報とに基づいて、指定されたクラス及び当該ク
ラスより下位のクラスのうち、指定された属性を有する
クラスのみが検索の対象クラスとして選択される。
【0021】したがって、指定されたクラス以下の階層
に存する全てのオブジェクトの中から指定されたメンバ
(属性)を有するオブジェクトのみを確実かつ効率的に
検索することができる。
に存する全てのオブジェクトの中から指定されたメンバ
(属性)を有するオブジェクトのみを確実かつ効率的に
検索することができる。
【0022】また、請求項2に対応する発明のオブジェ
クト指向データベースにおけるオブジェクト検索方法に
おいては、請求項1に対応する発明と同様に作用する
他、検索の対象クラスの選択は、属性を索引として対応
する下位クラスを検索可能な,下位クラスを有する各ク
ラス毎に設けられた階層索引情報を用いて行われる。
クト指向データベースにおけるオブジェクト検索方法に
おいては、請求項1に対応する発明と同様に作用する
他、検索の対象クラスの選択は、属性を索引として対応
する下位クラスを検索可能な,下位クラスを有する各ク
ラス毎に設けられた階層索引情報を用いて行われる。
【0023】したがって、より効率的に検索の対象クラ
スの選択を行うことができる。さらに、請求項3に対応
する発明のオブジェクト指向データベースにおけるオブ
ジェクト検索方法においては、請求項1又は2に対応す
る発明と同様に作用する他、オブジェクト又はクラスの
追加、変更もしくは削除が可能な場合に、追加、変更も
しくは削除がされると、対応するクラス及び属性の対応
関係の情報とクラスの階層構造の情報、もしくは対応す
る階層索引情報が修正される。したがって、追加、変更
もしくは削除後においても検索の対象クラスの選択を確
実に行うことができる。
スの選択を行うことができる。さらに、請求項3に対応
する発明のオブジェクト指向データベースにおけるオブ
ジェクト検索方法においては、請求項1又は2に対応す
る発明と同様に作用する他、オブジェクト又はクラスの
追加、変更もしくは削除が可能な場合に、追加、変更も
しくは削除がされると、対応するクラス及び属性の対応
関係の情報とクラスの階層構造の情報、もしくは対応す
る階層索引情報が修正される。したがって、追加、変更
もしくは削除後においても検索の対象クラスの選択を確
実に行うことができる。
【0024】
【発明の実施の形態】以下、本発明の実施の形態につい
て説明する。 (発明の第1の実施の形態)図1は本発明の第1の実施
の形態に係るオブジェクト検索方法を適用したオブジェ
クト指向データベースの一例を示す構成図である。
て説明する。 (発明の第1の実施の形態)図1は本発明の第1の実施
の形態に係るオブジェクト検索方法を適用したオブジェ
クト指向データベースの一例を示す構成図である。
【0025】このオブジェクト指向データベースは、要
求処理部3と、インスタンス管理部4と、データ領域5
と、データベース6と、データベース管理部7と、クラ
ス情報管理部8と、インスタンス管理部4に設けられた
クラスCi管理部10と、その他の図示しない周辺要素
とによって構成されている。
求処理部3と、インスタンス管理部4と、データ領域5
と、データベース6と、データベース管理部7と、クラ
ス情報管理部8と、インスタンス管理部4に設けられた
クラスCi管理部10と、その他の図示しない周辺要素
とによって構成されている。
【0026】要求処理部3は、オブジェクト検索要求1
を入力とし、その要求に含まれる条件式等をもとにクラ
ス情報管理部8と協働して検索情報を求め、その検索情
報に基づいて、インスタンス管理部4において得られた
検索結果を集合やその他の指定された形で検索結果2と
して出力する。
を入力とし、その要求に含まれる条件式等をもとにクラ
ス情報管理部8と協働して検索情報を求め、その検索情
報に基づいて、インスタンス管理部4において得られた
検索結果を集合やその他の指定された形で検索結果2と
して出力する。
【0027】ここで、集合とは、オブジェクト全てをま
とめたものである。また、その他の指定された形の例と
して、例えば検索条件に適合する一つのオブジェクトの
属性情報内容すべてを表示するなどがある。なお、本実
施の形態では検索結果として集合を返す場合で説明す
る。
とめたものである。また、その他の指定された形の例と
して、例えば検索条件に適合する一つのオブジェクトの
属性情報内容すべてを表示するなどがある。なお、本実
施の形態では検索結果として集合を返す場合で説明す
る。
【0028】要求処理部3は、まず、条件式の解析及び
検索情報の作成を行う。図2は同実施の形態のオブジェ
クト指向データベースにおける要求処理部及びクラス情
報管理部8の構成例を示すブロック図である。
検索情報の作成を行う。図2は同実施の形態のオブジェ
クト指向データベースにおける要求処理部及びクラス情
報管理部8の構成例を示すブロック図である。
【0029】同図(a)に示すように、要求処理部3
は、集合作成部12と条件解析部13とから検索情報1
4を作成する。条件解析部13は、条件式を解析して、
次の項目を取り出すようになっている。
は、集合作成部12と条件解析部13とから検索情報1
4を作成する。条件解析部13は、条件式を解析して、
次の項目を取り出すようになっている。
【0030】・クラスID(条件式内で当初指定された
クラスを示すID。ここでは、何れかのクラスIDを示
すものとして、クラスID=Ciとする) ・メンバID(条件式内で指定されたメンバ(属性)を
示すID。ここでは、メンバID=Miとする) ・比較演算子(例えば大、小、イコールなどの演算子) ・キー値(メンバと比較演算子に対応する検索のための
対象となる値、比較演算子によっては複数ある) ・制約事項(検索結果が複数必要,検索対象のクラス制
限等といった付加条件) なお、Ciは、データベースに存在するクラスに付けら
れたオブジェクトID、すなわちOIDで特にクラス識
別子(クラスID)と呼ぶ。
クラスを示すID。ここでは、何れかのクラスIDを示
すものとして、クラスID=Ciとする) ・メンバID(条件式内で指定されたメンバ(属性)を
示すID。ここでは、メンバID=Miとする) ・比較演算子(例えば大、小、イコールなどの演算子) ・キー値(メンバと比較演算子に対応する検索のための
対象となる値、比較演算子によっては複数ある) ・制約事項(検索結果が複数必要,検索対象のクラス制
限等といった付加条件) なお、Ciは、データベースに存在するクラスに付けら
れたオブジェクトID、すなわちOIDで特にクラス識
別子(クラスID)と呼ぶ。
【0031】集合作成部12は、オブジェクトのID、
すなわちOIDを格納するための集合を作成する。ただ
し検索結果が一つだけという制約が制約事項にあれば集
合を作成する必要はない。このOIDの格納は、検出結
果を出力するために行われる。
すなわちOIDを格納するための集合を作成する。ただ
し検索結果が一つだけという制約が制約事項にあれば集
合を作成する必要はない。このOIDの格納は、検出結
果を出力するために行われる。
【0032】要求処理部3は、先に求めたクラスIDと
メンバIDを用いて、クラス情報管理部8の後述する階
層構造情報15及びクラス構成情報16から下位のクラ
スでメンバIDがMiであるメンバを持つクラスを求め
る。これとクラスIDがCiであるクラスを含めて、実
際にオブジェクトにメンバID,Miを持つクラスを検
索対象範囲とする。
メンバIDを用いて、クラス情報管理部8の後述する階
層構造情報15及びクラス構成情報16から下位のクラ
スでメンバIDがMiであるメンバを持つクラスを求め
る。これとクラスIDがCiであるクラスを含めて、実
際にオブジェクトにメンバID,Miを持つクラスを検
索対象範囲とする。
【0033】ここで、オブジェクトとは、オブジェクト
OIDに対応し、種々の項目(メンバ)に対応する情
報、値等を格納するデータベースの最小単位である。一
方、メンバ(属性)とは、オブジェクトが格納する上記
項目のそれぞれを指し示すものである。
OIDに対応し、種々の項目(メンバ)に対応する情
報、値等を格納するデータベースの最小単位である。一
方、メンバ(属性)とは、オブジェクトが格納する上記
項目のそれぞれを指し示すものである。
【0034】また、各クラスには、そのクラスに属する
オブジェクト,もしくはそのクラスに属するクラスがど
のようなメンバを有するかという情報を持っている。つ
まり、このクラスにおけるメンバの情報は、従来技術で
説明したように継承の形で設けられ、各クラスで重複し
ないようになっている。したがってメンバはクラスの性
質を示すものともなる。また、各クラスは、従来技術で
説明したようにクラス階層を構成する。
オブジェクト,もしくはそのクラスに属するクラスがど
のようなメンバを有するかという情報を持っている。つ
まり、このクラスにおけるメンバの情報は、従来技術で
説明したように継承の形で設けられ、各クラスで重複し
ないようになっている。したがってメンバはクラスの性
質を示すものともなる。また、各クラスは、従来技術で
説明したようにクラス階層を構成する。
【0035】したがって、オブジェクトは、そのオブジ
ェクトの有する全メンバが継承により合計されるクラス
のメンバと一致したとき、そのクラスに属するオブジェ
クトとしてそのクラス内に登録される。
ェクトの有する全メンバが継承により合計されるクラス
のメンバと一致したとき、そのクラスに属するオブジェ
クトとしてそのクラス内に登録される。
【0036】このようなクラス情報は、クラス情報管理
部8に備えられ、当該クラス情報管理部8は、図2
(b)に示すような構成となっている。クラス情報管理
部8には、階層構造情報15と、クラス構成情報16
と、クラス構造情報17とが設けられ、これらの情報
は、クラス(オブジェクト)作成/削除/変更要求9時
に作成され、また変更、削除される。これらの各構成を
図3、図4に示す。
部8に備えられ、当該クラス情報管理部8は、図2
(b)に示すような構成となっている。クラス情報管理
部8には、階層構造情報15と、クラス構成情報16
と、クラス構造情報17とが設けられ、これらの情報
は、クラス(オブジェクト)作成/削除/変更要求9時
に作成され、また変更、削除される。これらの各構成を
図3、図4に示す。
【0037】図3は本実施の形態のオブジェクト指向デ
ータベースの階層構造情報15を示す図である。図4は
本実施の形態のオブジェクト指向データベースのクラス
構成情報及びクラス構造情報を示す図である。
ータベースの階層構造情報15を示す図である。図4は
本実施の形態のオブジェクト指向データベースのクラス
構成情報及びクラス構造情報を示す図である。
【0038】なお、図3、図4において、各情報は簡単
のため表形式で表し、また、クラス構成情報16及びク
ラス構造情報17を一つにまとめて表している。まず、
図3において、階層構造部15には、クラスに対するス
ーパークラスのクラスID(識別子)とサブクラスのク
ラスID(識別子)のリストが設けられている。ここ
で、スーパークラスとは、クラス階層がある場合に、そ
のクラスの上位のクラスをいい、サブクラスとは、その
クラスの下位のクラスをいう。この図3においては、あ
るクラスに対応するスーパークラス・クラス識別子リス
ト18とサブクラス・クラス識別子リスト19とが示さ
れている。
のため表形式で表し、また、クラス構成情報16及びク
ラス構造情報17を一つにまとめて表している。まず、
図3において、階層構造部15には、クラスに対するス
ーパークラスのクラスID(識別子)とサブクラスのク
ラスID(識別子)のリストが設けられている。ここ
で、スーパークラスとは、クラス階層がある場合に、そ
のクラスの上位のクラスをいい、サブクラスとは、その
クラスの下位のクラスをいう。この図3においては、あ
るクラスに対応するスーパークラス・クラス識別子リス
ト18とサブクラス・クラス識別子リスト19とが示さ
れている。
【0039】一方、図4に示すように、クラス構成情報
16及びクラス構造情報17は、クラス識別子20(ク
ラスID)と、メンバ識別子21(メンバID)と、メ
ンバ型22と、物理情報23とから構成される。ここ
で、メンバ型22は、物理情報23のデータの型を示
し、物理情報23には対応するメンバの格納位置などの
実際の物理構造に関する情報が格納されている。
16及びクラス構造情報17は、クラス識別子20(ク
ラスID)と、メンバ識別子21(メンバID)と、メ
ンバ型22と、物理情報23とから構成される。ここ
で、メンバ型22は、物理情報23のデータの型を示
し、物理情報23には対応するメンバの格納位置などの
実際の物理構造に関する情報が格納されている。
【0040】このように、クラス情報管理部8に、各ク
ラスとそのメンバの対応関係が格納され、かつ、各クラ
ス間の上位下位の対応関係が格納されていることから、
上述したように、要求処理部3は、条件式から求めたク
ラスID,CiとメンバID,Miとを用いて、下位の
クラスでメンバIDにMiを有するクラスを検出するこ
とが可能となる。なお、この場合は、クラスIDを索引
として、その中に検索対象となるメンバID,Miがあ
るか否かを調べ、Miがあれば、そのクラスを検出す
る。
ラスとそのメンバの対応関係が格納され、かつ、各クラ
ス間の上位下位の対応関係が格納されていることから、
上述したように、要求処理部3は、条件式から求めたク
ラスID,CiとメンバID,Miとを用いて、下位の
クラスでメンバIDにMiを有するクラスを検出するこ
とが可能となる。なお、この場合は、クラスIDを索引
として、その中に検索対象となるメンバID,Miがあ
るか否かを調べ、Miがあれば、そのクラスを検出す
る。
【0041】また、例えば制約事項にあらかじめクラス
を限定する情報が与えられる場合もあるので、上記検出
されたクラスとクラスID,Ciのクラスとから制限事
項により制限されるクラスを除いた各クラスが、検索対
象クラスの範囲と、なる。
を限定する情報が与えられる場合もあるので、上記検出
されたクラスとクラスID,Ciのクラスとから制限事
項により制限されるクラスを除いた各クラスが、検索対
象クラスの範囲と、なる。
【0042】また、要求処理部3は、検索条件をも作成
する。これは、メンバID,Mi、比較演算子、キー値
とから作成され、例えば「乗り物」を扱うデータベース
において、「馬力(メンバ)200(キー値)以上(比
較演算値)の車(クラス)」という内容の条件式であれ
ば、その検索条件は「馬力≧200」といった内容とな
る。
する。これは、メンバID,Mi、比較演算子、キー値
とから作成され、例えば「乗り物」を扱うデータベース
において、「馬力(メンバ)200(キー値)以上(比
較演算値)の車(クラス)」という内容の条件式であれ
ば、その検索条件は「馬力≧200」といった内容とな
る。
【0043】したがって、最終的に作成された検索情報
14は、検索条件と、検索対象クラスの範囲と、OID
を格納する集合とから構成される。なお、検索情報の一
部として、検索対象範囲のクラスに関する情報も付加さ
れる。
14は、検索条件と、検索対象クラスの範囲と、OID
を格納する集合とから構成される。なお、検索情報の一
部として、検索対象範囲のクラスに関する情報も付加さ
れる。
【0044】次に、この検索情報14をもとにオブジェ
クトOIDを検索するための各部について説明する。イ
ンスタンス管理部4、つまりオブジェクトの管理部は、
クラス毎に設けられたクラスCi管理部10を備え、要
求処理部3で求めた検索情報に従って階層関係のあるク
ラスの中から要求されたオブジェクトのOIDを求め
る。
クトOIDを検索するための各部について説明する。イ
ンスタンス管理部4、つまりオブジェクトの管理部は、
クラス毎に設けられたクラスCi管理部10を備え、要
求処理部3で求めた検索情報に従って階層関係のあるク
ラスの中から要求されたオブジェクトのOIDを求め
る。
【0045】具合的には、検索対象範囲のクラスから、
未検索クラスを選択し、選択されたクラスのオブジェク
トをデータ領域5から検索し、検索条件等の検索情報に
合致したオブジェクトのOIDを検索結果として検索情
報の集合へ登録する。
未検索クラスを選択し、選択されたクラスのオブジェク
トをデータ領域5から検索し、検索条件等の検索情報に
合致したオブジェクトのOIDを検索結果として検索情
報の集合へ登録する。
【0046】各クラスCi管理部10は、それぞれ担当
するクラスのオブジェクトをクラス単位に管理する。つ
まり、各クラスのオブジェクト11をクラス毎に索引に
より管理する。
するクラスのオブジェクトをクラス単位に管理する。つ
まり、各クラスのオブジェクト11をクラス毎に索引に
より管理する。
【0047】例えばクラスCi管理部10には、メンバ
識別子(メンバID、例えばメンバ名)とキー値と比較
演算子とから、メンバの値がキー値に同じ(比較演算子
によってはキー値に示される範囲にある)オブジェクト
のOIDを検索することが可能である。
識別子(メンバID、例えばメンバ名)とキー値と比較
演算子とから、メンバの値がキー値に同じ(比較演算子
によってはキー値に示される範囲にある)オブジェクト
のOIDを検索することが可能である。
【0048】また、クラスCi管理部10は、当該クラ
スのオブジェクトの作成/削除/変更要求9時に索引の
更新を行う。データ領域5は、オブジェクト11を保存
し、これらのオブジェクト11はインスタンス管理部4
からの検索対象となる。
スのオブジェクトの作成/削除/変更要求9時に索引の
更新を行う。データ領域5は、オブジェクト11を保存
し、これらのオブジェクト11はインスタンス管理部4
からの検索対象となる。
【0049】データベース6は、オブジェクト11や各
管理部で管理される情報やクラスをもオブジェクトとと
して保存する。なお、Ci(1≦i≦N,Nはデータベ
ースに登録されているクラスの総数)は、データベース
6に含まれるクラスの何れかのクラスIDを示してい
る。データベース6は、具体的にはハードディスク等の
大容量記憶媒体からなり、データベースの各情報を保存
する。
管理部で管理される情報やクラスをもオブジェクトとと
して保存する。なお、Ci(1≦i≦N,Nはデータベ
ースに登録されているクラスの総数)は、データベース
6に含まれるクラスの何れかのクラスIDを示してい
る。データベース6は、具体的にはハードディスク等の
大容量記憶媒体からなり、データベースの各情報を保存
する。
【0050】データベース管理部7は、オブジェクトの
生成/削除/変更要求9に従って、クラス情報管理部8
とインスタンス管理部4とデータ領域5と全てのオブジ
ェクトに対して一意に決まるOIDとを管理する。
生成/削除/変更要求9に従って、クラス情報管理部8
とインスタンス管理部4とデータ領域5と全てのオブジ
ェクトに対して一意に決まるOIDとを管理する。
【0051】すなわち、各部の管理をも行っており、例
えばシステムの高速動作を担保するため、システム立ち
上げ時に、データベース内に保存されたオブジェクト1
1をデータ領域5に複写する。また、各部の動作にした
がって必要な管理動作を行うようになっている。
えばシステムの高速動作を担保するため、システム立ち
上げ時に、データベース内に保存されたオブジェクト1
1をデータ領域5に複写する。また、各部の動作にした
がって必要な管理動作を行うようになっている。
【0052】次に、以上のように構成された本発明の実
施の形態に係るオブジェクト検索方法を適用したオブジ
ェクト指向データベースの動作について図5の流れ図に
沿って説明する。
施の形態に係るオブジェクト検索方法を適用したオブジ
ェクト指向データベースの動作について図5の流れ図に
沿って説明する。
【0053】図5は本実施の形態のオブジェクト指向デ
ータベースの動作を示す流れ図である。このデータベー
スが起動され、要求受け付け可能状態になった後、ま
ず、オブジェクト検索要求1が入力され、要求処理部3
により条件式の解析がされる(ST101)。
ータベースの動作を示す流れ図である。このデータベー
スが起動され、要求受け付け可能状態になった後、ま
ず、オブジェクト検索要求1が入力され、要求処理部3
により条件式の解析がされる(ST101)。
【0054】次に、解析されたクラスID、メンバID
をもとにクラス情報管理部8内の階層構造情報15及び
クラス構成情報16から検索対象クラスの範囲が検出さ
れ、また、検索条件、検索情報の集合が作成され、これ
らから検索情報14が作成される(ST102)。
をもとにクラス情報管理部8内の階層構造情報15及び
クラス構成情報16から検索対象クラスの範囲が検出さ
れ、また、検索条件、検索情報の集合が作成され、これ
らから検索情報14が作成される(ST102)。
【0055】ここで、各検索対象クラスは、指定された
クラスID,Ciを含み、またそれよりも下位のクラス
すべての中から、それぞれのクラスに指定されたメンバ
ID,Miがあるか否かが調べられ、検出される。
クラスID,Ciを含み、またそれよりも下位のクラス
すべての中から、それぞれのクラスに指定されたメンバ
ID,Miがあるか否かが調べられ、検出される。
【0056】次に、インスタンス管理部4により、対象
となるオブジェクトの検索が開始される。まず、検索対
象クラスのうち、まだ未検索のものがあるか否かが判定
され(ST103)、未検索のものがなければ検索終了
し、未検索のものがあれば、検索対象クラスの範囲の未
検索のクラスの選択がなされる(ST104)。
となるオブジェクトの検索が開始される。まず、検索対
象クラスのうち、まだ未検索のものがあるか否かが判定
され(ST103)、未検索のものがなければ検索終了
し、未検索のものがあれば、検索対象クラスの範囲の未
検索のクラスの選択がなされる(ST104)。
【0057】次に、そのクラスにおいて、検索がされ、
各オブジェクト11について検索条件を満たすか否か判
定される(ST105)。ここで、検索条件等の検索情
報を満たすオブジェクトがあれば、そのオブジェクトの
OIDが検索情報の集合に登録される(ST106) そして、検索情報の更新(ST107)、つまり、次の
検索対象クラスの検索について調べられ、ステップST
103に戻って検索対象クラスのうち、未検索のクラス
があるかぎり、検索が継続される。
各オブジェクト11について検索条件を満たすか否か判
定される(ST105)。ここで、検索条件等の検索情
報を満たすオブジェクトがあれば、そのオブジェクトの
OIDが検索情報の集合に登録される(ST106) そして、検索情報の更新(ST107)、つまり、次の
検索対象クラスの検索について調べられ、ステップST
103に戻って検索対象クラスのうち、未検索のクラス
があるかぎり、検索が継続される。
【0058】なお、検索が終了すると、検索情報の集合
に登録されたOIDに対応するオブジェクトの集合が、
その検索結果2として要求処理部3から出力される。上
述したように、本発明の実施の形態に係るオブジェクト
指向データベース及びそのオブジェクト検索方法によれ
ば、階層構造情報15及びクラス構成情報16から指定
されたクラスID以下のクラスの中から指定されたメン
バIDを有するクラスのみを検索対象クラスとして指定
し、当該検索対象クラスに所属するオブジェクトのみを
その検索条件の検索対象とするようにしたので、クラス
に階層がある場合であっても、指定されたクラス以下の
階層に存する全てのオブジェクトの中から、指定された
メンバを有するオブジェクトのみを確実かつ効率的に検
索することができる。
に登録されたOIDに対応するオブジェクトの集合が、
その検索結果2として要求処理部3から出力される。上
述したように、本発明の実施の形態に係るオブジェクト
指向データベース及びそのオブジェクト検索方法によれ
ば、階層構造情報15及びクラス構成情報16から指定
されたクラスID以下のクラスの中から指定されたメン
バIDを有するクラスのみを検索対象クラスとして指定
し、当該検索対象クラスに所属するオブジェクトのみを
その検索条件の検索対象とするようにしたので、クラス
に階層がある場合であっても、指定されたクラス以下の
階層に存する全てのオブジェクトの中から、指定された
メンバを有するオブジェクトのみを確実かつ効率的に検
索することができる。
【0059】これにより、従来ユーザが複数のクラスに
跨って行わなければならない検索処理を自動的に処理す
ることができ、特に、クラス構成が複雑な場合には、ユ
ーザの検索要求の記述量を大幅に減らすことができる。
跨って行わなければならない検索処理を自動的に処理す
ることができ、特に、クラス構成が複雑な場合には、ユ
ーザの検索要求の記述量を大幅に減らすことができる。
【0060】また、オブジェクトを検索するための索引
は、クラス単位で管理されているものを用いるので、ク
ラス単独での検索でも索引をそのまま利用でき、管理も
簡単で済む。なお本実施の形態では、検索時にオブジェ
クトそのものにはアクセス、すなわち呼び出しせずに検
索が可能である。
は、クラス単位で管理されているものを用いるので、ク
ラス単独での検索でも索引をそのまま利用でき、管理も
簡単で済む。なお本実施の形態では、検索時にオブジェ
クトそのものにはアクセス、すなわち呼び出しせずに検
索が可能である。
【0061】また、本発明の構成動作から当然のことで
あるが、下位クラスとで共通でないメンバに関する検索
にも対応できる。 (発明の第2の実施の形態)本実施の形態は、発明の第
1の実施の形態のオブジェクト指向データベースのクラ
ス情報管理部8に階層索引情報を付加し、検索対象クラ
スの範囲をより効率的に求めるようにしたものである。
あるが、下位クラスとで共通でないメンバに関する検索
にも対応できる。 (発明の第2の実施の形態)本実施の形態は、発明の第
1の実施の形態のオブジェクト指向データベースのクラ
ス情報管理部8に階層索引情報を付加し、検索対象クラ
スの範囲をより効率的に求めるようにしたものである。
【0062】つまり、本実施の形態のオブジェクト指向
データベースは、検索対象クラスの範囲を求める方式に
図6に示す階層索引情報を用いることを除き、第1の実
施の形態の場合と同様に構成される。
データベースは、検索対象クラスの範囲を求める方式に
図6に示す階層索引情報を用いることを除き、第1の実
施の形態の場合と同様に構成される。
【0063】図6は本発明の第2の実施の形態に係るオ
ブジェクト検索方法を適用したオブジェクト指向データ
ベースのクラス情報管理部8を示す図である。このクラ
ス情報管理部8には、階層構造情報15と、クラス構成
情報16と、クラス構造情報17と、図7に示す階層索
引情報24とが設けられている。
ブジェクト検索方法を適用したオブジェクト指向データ
ベースのクラス情報管理部8を示す図である。このクラ
ス情報管理部8には、階層構造情報15と、クラス構成
情報16と、クラス構造情報17と、図7に示す階層索
引情報24とが設けられている。
【0064】ここで、階層構造情報15と、クラス構成
情報16と、クラス構造情報17とは、第1の実施の形
態と同様に構成されるが、検索対象クラスの範囲を求め
るのには使用されない。
情報16と、クラス構造情報17とは、第1の実施の形
態と同様に構成されるが、検索対象クラスの範囲を求め
るのには使用されない。
【0065】図7は本実施の形態に係るオブジェクト指
向データベースの階層索引情報24を示す構成図であ
る。この階層索引情報24は、2組の属性リスト25#
1及び25#2によって構成される。
向データベースの階層索引情報24を示す構成図であ
る。この階層索引情報24は、2組の属性リスト25#
1及び25#2によって構成される。
【0066】各属性リスト25#1及び25#2は、メ
ンバ識別子26を索引としてクラス識別子リスト27を
検索できるように構成されている。また両属性リスト
は、すべてのクラスに対応して設けられ、検索対象とす
るクラス識別子リスト27は、自クラスよりも下位とな
るクラスのみである。
ンバ識別子26を索引としてクラス識別子リスト27を
検索できるように構成されている。また両属性リスト
は、すべてのクラスに対応して設けられ、検索対象とす
るクラス識別子リスト27は、自クラスよりも下位とな
るクラスのみである。
【0067】また、属性リスト25#1において、当該
クラス識別子リスト27は、その対応するクラスの下位
にクラスを有していない最下位のクラスIDリストであ
る。一方、属性リスト25#2において、当該クラス識
別子リスト27は、その対応するクラスよりも下位にさ
らにサブクラスを持ち得るクラスのクラスIDリストで
ある。
クラス識別子リスト27は、その対応するクラスの下位
にクラスを有していない最下位のクラスIDリストであ
る。一方、属性リスト25#2において、当該クラス識
別子リスト27は、その対応するクラスよりも下位にさ
らにサブクラスを持ち得るクラスのクラスIDリストで
ある。
【0068】なお、クラス情報管理部8が管理している
その他の情報の構成例は、図5と図6に示すものと同様
であり、図7を含め、各図の情報は簡単のため表形式で
表している。
その他の情報の構成例は、図5と図6に示すものと同様
であり、図7を含め、各図の情報は簡単のため表形式で
表している。
【0069】次に、以上のように構成された本発明の実
施の形態に係るオブジェクト検索方法を適用したオブジ
ェクト指向データベースの動作について説明する。本実
施の形態のオブジェクト指向データベースの動作は、検
索対象クラスの検出動作を除き、第1の実施の形態の場
合と同様であるので、この部分の動作のみを説明する。
施の形態に係るオブジェクト検索方法を適用したオブジ
ェクト指向データベースの動作について説明する。本実
施の形態のオブジェクト指向データベースの動作は、検
索対象クラスの検出動作を除き、第1の実施の形態の場
合と同様であるので、この部分の動作のみを説明する。
【0070】この場合、図5の流れ図における検索情報
の作成ST102において、検索対象クラスの範囲は、
クラス情報管理部8の階層索引情報24を参照するだけ
で求められる。
の作成ST102において、検索対象クラスの範囲は、
クラス情報管理部8の階層索引情報24を参照するだけ
で求められる。
【0071】つまり、各属性リスト25#1及び25#
2により、メンバ識別子26を索引としてクラス識別子
リスト27を検索でき、クラス識別子リスト27に対応
するクラスは、指定されたクラスID,Ciの下位のク
ラスのみであるので、階層索引情報24の一度参照によ
り検索対象クラスの範囲が決まることとなる。
2により、メンバ識別子26を索引としてクラス識別子
リスト27を検索でき、クラス識別子リスト27に対応
するクラスは、指定されたクラスID,Ciの下位のク
ラスのみであるので、階層索引情報24の一度参照によ
り検索対象クラスの範囲が決まることとなる。
【0072】上述したように、本発明の実施の形態に係
るオブジェクト指向データベース及びそのオブジェクト
検索方法によれば、階層索引情報24に対する一度の検
索で検索対象クラスを選択するようにしたので、先の実
施の形態と同様の効果の他、階層構造情報15およびク
ラス構成情報16による逐次の手続きを検索対象クラス
の選択に当って実施する必要がなく、検索情報を効率良
く求めることができる。
るオブジェクト指向データベース及びそのオブジェクト
検索方法によれば、階層索引情報24に対する一度の検
索で検索対象クラスを選択するようにしたので、先の実
施の形態と同様の効果の他、階層構造情報15およびク
ラス構成情報16による逐次の手続きを検索対象クラス
の選択に当って実施する必要がなく、検索情報を効率良
く求めることができる。
【0073】したがって、より一層検索効率を上げるこ
とができる。また下位クラスとの間で共通でないメンバ
に関する検索要求も処理できる。なお、本実施の形態で
は、全クラスについて各属性リスト25#1及び25#
2を設けることとしたが、これについてメンバ識別子2
6を索引として全クラス識別子リスト27を検索できる
ようにし、階層構造情報15を用いて検索されたクラス
から上位のクラスを除くようにすることも可能である。
このようにすれば、各クラス毎に属性リストを設ける必
要がない。 (発明の第3の実施の形態)図8は本発明の第3の実施
の形態に係るオブジェクト検索方法を適用したオブジェ
クト指向データベースの一例を示す構成図であり、図
1,図2,図3,図4,図6,図7と同一部分には同一
符号を付して説明を省略し、ここでは異なる部分につい
てのみ述べる。
とができる。また下位クラスとの間で共通でないメンバ
に関する検索要求も処理できる。なお、本実施の形態で
は、全クラスについて各属性リスト25#1及び25#
2を設けることとしたが、これについてメンバ識別子2
6を索引として全クラス識別子リスト27を検索できる
ようにし、階層構造情報15を用いて検索されたクラス
から上位のクラスを除くようにすることも可能である。
このようにすれば、各クラス毎に属性リストを設ける必
要がない。 (発明の第3の実施の形態)図8は本発明の第3の実施
の形態に係るオブジェクト検索方法を適用したオブジェ
クト指向データベースの一例を示す構成図であり、図
1,図2,図3,図4,図6,図7と同一部分には同一
符号を付して説明を省略し、ここでは異なる部分につい
てのみ述べる。
【0074】本実施の形態には、オブジェクト追加/削
除/変更要求29を受けるユーザ定義集合管理部28が
設けられる他、第1の実施の形態又は第2の実施の形態
のオブジェクト指向データベースと同様に構成されてい
る。
除/変更要求29を受けるユーザ定義集合管理部28が
設けられる他、第1の実施の形態又は第2の実施の形態
のオブジェクト指向データベースと同様に構成されてい
る。
【0075】本来、C言語等で記述されるオブジェクト
指向データベースにおいては、ユーザが自分で集合を作
成しオブジェクトの追加/削除/変更を行うことは容易
でない。このユーザ定義集合管理部28は、ユーザから
の容易なオブジェクトの追加/削除/変更を実現するた
めのものである。
指向データベースにおいては、ユーザが自分で集合を作
成しオブジェクトの追加/削除/変更を行うことは容易
でない。このユーザ定義集合管理部28は、ユーザから
の容易なオブジェクトの追加/削除/変更を実現するた
めのものである。
【0076】本実施の形態のオブジェクト指向データベ
ースは、第1の実施の形態又は第2の実施の形態のオブ
ジェクト指向データベースにこのユーザからの容易なオ
ブジェクトの追加/削除/変更機能を付加したものであ
る。
ースは、第1の実施の形態又は第2の実施の形態のオブ
ジェクト指向データベースにこのユーザからの容易なオ
ブジェクトの追加/削除/変更機能を付加したものであ
る。
【0077】以下、オブジェクトの追加/削除/変更機
能について説明する。まず、ユーザ定義集合管理部28
は、ユーザからのクラス定義を受け付けるようになって
いる。このように各メンバ内容が定義されると、ユーザ
定義集合管理部28は、当該クラスに対応する階層構造
情報15、クラス構成情報16、クラス構造情報17及
びそれが設けられているときには階層索引情報24をク
ラス管理情報部8内に作成する。
能について説明する。まず、ユーザ定義集合管理部28
は、ユーザからのクラス定義を受け付けるようになって
いる。このように各メンバ内容が定義されると、ユーザ
定義集合管理部28は、当該クラスに対応する階層構造
情報15、クラス構成情報16、クラス構造情報17及
びそれが設けられているときには階層索引情報24をク
ラス管理情報部8内に作成する。
【0078】次に、ユーザ定義集合管理部28は、新た
なオブジェクトを当該データベースに追加する前に、追
加オブジェクトをユーザ入力によってその内部に生成
し、この追加オブジェクトにOIDを与え、クラスを対
応させる。この際、対応するクラスがなければ、クラス
定義によりクラスを作成する。また、追加オブジェクト
のOIDとクラス識別子(ID)の対が図示しないユー
ザ定義集合管理部28内のオブジェクト生成情報に登録
する。
なオブジェクトを当該データベースに追加する前に、追
加オブジェクトをユーザ入力によってその内部に生成
し、この追加オブジェクトにOIDを与え、クラスを対
応させる。この際、対応するクラスがなければ、クラス
定義によりクラスを作成する。また、追加オブジェクト
のOIDとクラス識別子(ID)の対が図示しないユー
ザ定義集合管理部28内のオブジェクト生成情報に登録
する。
【0079】また、ユーザ定義集合管理部28は、オブ
ジェクトの追加要求を受けると、追加オブジェクトのO
IDと、オブジェクト生成情報とを利用して、オブジェ
クトの所属クラスを探索し、インスタンス管理部4内の
対応するクラスCi管理部10を探索する。もし、対応
するクラスCi管理部10が存在しない場合には、新た
にクラスCi管理部10を作成する。
ジェクトの追加要求を受けると、追加オブジェクトのO
IDと、オブジェクト生成情報とを利用して、オブジェ
クトの所属クラスを探索し、インスタンス管理部4内の
対応するクラスCi管理部10を探索する。もし、対応
するクラスCi管理部10が存在しない場合には、新た
にクラスCi管理部10を作成する。
【0080】そして、ユーザ定義集合管理部28は、追
加オブジェクトに対応するクラスCi管理部10を検出
すると、その追加要求を追加オブジェクトのOIDと共
に当該クラスCi管理部10に引き渡す。
加オブジェクトに対応するクラスCi管理部10を検出
すると、その追加要求を追加オブジェクトのOIDと共
に当該クラスCi管理部10に引き渡す。
【0081】追加要求を引き渡されたクラスCi管理部
10は、クラス情報管理部8のクラス構成情報16及び
クラス構造情報17、特にクラス構造情報17内の物理
情報23をもとに、ユーザ定義集合管理部28内に発生
している追加オブジェクトをデータ領域5に追加登録す
る。
10は、クラス情報管理部8のクラス構成情報16及び
クラス構造情報17、特にクラス構造情報17内の物理
情報23をもとに、ユーザ定義集合管理部28内に発生
している追加オブジェクトをデータ領域5に追加登録す
る。
【0082】また、ユーザ定義集合管理部28は、オブ
ジェクト削除要求を受けると、そのオブジェクト削除要
求を削除オブジェクトに対応するOIDと共に、上述と
同様に対応するクラスのクラスCi管理部10に引き渡
す。
ジェクト削除要求を受けると、そのオブジェクト削除要
求を削除オブジェクトに対応するOIDと共に、上述と
同様に対応するクラスのクラスCi管理部10に引き渡
す。
【0083】クラスCi管理部10は、クラス構成情報
16及びクラス構造情報17の情報をもとに、データ領
域5内の削除オブジェクトを特定し、これを削除する。
さらに、ユーザ定義集合管理部28は、オブジェクト変
更要求を受けると、そのオブジェクト変更要求をオブジ
ェクトに対応するOIDと共に、上述と同様に対応する
クラスのクラスCi管理部10に引き渡す。
16及びクラス構造情報17の情報をもとに、データ領
域5内の削除オブジェクトを特定し、これを削除する。
さらに、ユーザ定義集合管理部28は、オブジェクト変
更要求を受けると、そのオブジェクト変更要求をオブジ
ェクトに対応するOIDと共に、上述と同様に対応する
クラスのクラスCi管理部10に引き渡す。
【0084】このクラスCi管理部10は、クラス構成
情報16及びクラス構造情報17の情報をもとに、デー
タ領域5内の変更オブジェクトを取り出し、ユーザ定義
集合管理部28内の図示しない変更領域に複写する。ユ
ーザは、この変更領域に複写された変更オブジェクトに
必要な変更を施し、再びオブジェクト変更要求を入力す
る。
情報16及びクラス構造情報17の情報をもとに、デー
タ領域5内の変更オブジェクトを取り出し、ユーザ定義
集合管理部28内の図示しない変更領域に複写する。ユ
ーザは、この変更領域に複写された変更オブジェクトに
必要な変更を施し、再びオブジェクト変更要求を入力す
る。
【0085】以下、オブジェクトの追加の場合と同様に
して、クラスCi管理部10は、変更領域内の変更され
た変更オブジェクトによってデータ領域5を更新する。
また、以上の追加・削除・変更動作がなされると、各部
の動作を管理するデータベース管理部7は、変更された
データ領域内のオブジェクトの追加・削除・変更の結果
に基づき適宜のタイミングでデータベース6の内容を更
新する。
して、クラスCi管理部10は、変更領域内の変更され
た変更オブジェクトによってデータ領域5を更新する。
また、以上の追加・削除・変更動作がなされると、各部
の動作を管理するデータベース管理部7は、変更された
データ領域内のオブジェクトの追加・削除・変更の結果
に基づき適宜のタイミングでデータベース6の内容を更
新する。
【0086】なお、ユーザ定義集合管理部28は、上記
した追加・削除・変更動作がなされると、対応するクラ
ス構成情報16及びクラス構造情報17及び階層構造情
報15を修正し、これにより、ユーザによる追加・削除
・変更がなされたデータベースに対しても第1の実施の
形態の場合と同様な検索を実行することができる。
した追加・削除・変更動作がなされると、対応するクラ
ス構成情報16及びクラス構造情報17及び階層構造情
報15を修正し、これにより、ユーザによる追加・削除
・変更がなされたデータベースに対しても第1の実施の
形態の場合と同様な検索を実行することができる。
【0087】また、第2の実施の形態に対応する場合
は、追加・削除・変更動作がなされると、対応する階層
索引情報24が修正され、オブジェクト検索要求1に対
する動作が担保されることとなる。
は、追加・削除・変更動作がなされると、対応する階層
索引情報24が修正され、オブジェクト検索要求1に対
する動作が担保されることとなる。
【0088】上述したように、本発明の実施の形態に係
るオブジェクト指向データベース及びそのオブジェクト
検索方法によれば、上記各実施の形態の構成・動作に加
え、ユーザにより簡単にオブジェクトを追加・削除・変
更できる構成としたので、上記各実施の形態と同様な効
果の他、追加、変更もしくは削除後においても検索の対
象クラスの選択を確実に行うことができる。
るオブジェクト指向データベース及びそのオブジェクト
検索方法によれば、上記各実施の形態の構成・動作に加
え、ユーザにより簡単にオブジェクトを追加・削除・変
更できる構成としたので、上記各実施の形態と同様な効
果の他、追加、変更もしくは削除後においても検索の対
象クラスの選択を確実に行うことができる。
【0089】したがって、ユーザにとってより使い勝手
のよいオブジェクト指向データベースを提供することが
できる。なお、本発明は、上記各実施の形態に限定され
るものでなく、その要旨を逸脱しない範囲で種々に変形
することが可能である。
のよいオブジェクト指向データベースを提供することが
できる。なお、本発明は、上記各実施の形態に限定され
るものでなく、その要旨を逸脱しない範囲で種々に変形
することが可能である。
【0090】
【発明の効果】以上詳記したように本発明によれば、指
定されたメンバのクラスのみを選択するようにしたの
で、オブジェクト指向データベースにおいてクラス階層
がある場合に、指定されたクラス以下の階層に存する全
てのオブジェクトの中から指定されたメンバを有するオ
ブジェクトのみを確実かつ効率的に検索することを可能
としたオブジェクト指向データベースにおけるオブジェ
クト検索方法を提供することができる。
定されたメンバのクラスのみを選択するようにしたの
で、オブジェクト指向データベースにおいてクラス階層
がある場合に、指定されたクラス以下の階層に存する全
てのオブジェクトの中から指定されたメンバを有するオ
ブジェクトのみを確実かつ効率的に検索することを可能
としたオブジェクト指向データベースにおけるオブジェ
クト検索方法を提供することができる。
【図1】本発明の第1の実施の形態に係るオブジェクト
検索方法を適用したオブジェクト指向データベースの一
例を示す構成図。
検索方法を適用したオブジェクト指向データベースの一
例を示す構成図。
【図2】同実施の形態のオブジェクト指向データベース
における要求処理部及びクラス情報管理部の構成例を示
すブロック図。
における要求処理部及びクラス情報管理部の構成例を示
すブロック図。
【図3】同実施の形態のオブジェクト指向データベース
の階層構造情報を示す図。
の階層構造情報を示す図。
【図4】同実施の形態のオブジェクト指向データベース
のクラス構成情報及びクラス構造情報を示す図。
のクラス構成情報及びクラス構造情報を示す図。
【図5】同実施の形態のオブジェクト指向データベース
の動作を示す流れ図。
の動作を示す流れ図。
【図6】本発明の第2の実施の形態に係るオブジェクト
検索方法を適用したオブジェクト指向データベースのク
ラス情報管理部を示す図。
検索方法を適用したオブジェクト指向データベースのク
ラス情報管理部を示す図。
【図7】同実施の形態に係るオブジェクト指向データベ
ースの階層索引情報を示す構成図。
ースの階層索引情報を示す構成図。
【図8】本発明の第3の実施の形態に係るオブジェクト
検索方法を適用したオブジェクト指向データベースの一
例を示す構成図。
検索方法を適用したオブジェクト指向データベースの一
例を示す構成図。
1…オブジェクト検索要求、2…検索結果、3…要求処
理部、4…インスタンス管理部、5…データ領域、6…
データベース、7…データベース管理部、8…クラス情
報管理部、9…オブジェクト作成/削除/変更要求、1
0…クラスCi管理部、11…オブジェクト、12…集
合作成部、13…条件解析部、14…検索情報、15…
階層構造情報、16…クラス構成情報、17…クラス構
造情報、18…スーパークラス・クラス識別子リスト、
19…サブクラス・クラス識別子リスト、20…クラス
識別子、21…メンバ識別子、22…メンバ型、23…
物理情報、24…階層索引情報、25…属性リスト、2
6…メンバ識別子、27…クラス識別子リスト、28…
ユーザ定義集合管理部、29…オブジェクト作成/削除
/変更要求。
理部、4…インスタンス管理部、5…データ領域、6…
データベース、7…データベース管理部、8…クラス情
報管理部、9…オブジェクト作成/削除/変更要求、1
0…クラスCi管理部、11…オブジェクト、12…集
合作成部、13…条件解析部、14…検索情報、15…
階層構造情報、16…クラス構成情報、17…クラス構
造情報、18…スーパークラス・クラス識別子リスト、
19…サブクラス・クラス識別子リスト、20…クラス
識別子、21…メンバ識別子、22…メンバ型、23…
物理情報、24…階層索引情報、25…属性リスト、2
6…メンバ識別子、27…クラス識別子リスト、28…
ユーザ定義集合管理部、29…オブジェクト作成/削除
/変更要求。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 田中 立二 東京都府中市東芝町1番地 株式会社東芝 府中工場内
Claims (3)
- 【請求項1】 属性に対応する少なくとも一つの情報か
らなるオブジェクトと、少なくとも一つの属性を備え、
自己の備える属性情報を具備した前記オブジェクトを所
属させるクラスとから構成されており、また、前記クラ
スは、自己の備える属性を少なくとも具備したクラスを
下位のクラスとして所属させることで、クラス階層を構
成するオブジェクト指向データベースにおいて、 少なくとも前記クラスと前記属性とを指定して当該デー
タベースを検索する場合に、前記クラス及び前記属性の
対応関係の情報と、前記クラスの階層構造の情報とに基
づいて、指定されたクラス及び当該クラスより下位のク
ラスのうち、指定された属性を有するクラスのみを前記
検索の対象クラスとして選択するオブジェクト指向デー
タベースにおけるオブジェクト検索方法。 - 【請求項2】 前記検索の対象クラスの選択は、前記属
性を索引として対応する下位クラスを検索可能な,少な
くとも下位クラスを所属させる各クラス毎に設けられた
階層索引情報を用いて行われる請求項1記載のオブジェ
クト指向データベースにおけるオブジェクト検索方法。 - 【請求項3】 オブジェクト又はクラスの追加、変更も
しくは削除が可能な場合に、前記追加、変更もしくは削
除がされると、対応する前記クラス及び前記属性の対応
関係の情報と前記クラスの階層構造の情報、もしくは対
応する前記階層索引情報を修正することで、前記追加、
変更もしくは削除後においても前記検索の対象クラスの
選択を可能とした請求項1又は2記載のオブジェクト指
向データベースにおけるオブジェクト検索方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7327122A JPH09167167A (ja) | 1995-12-15 | 1995-12-15 | オブジェクト指向データベースにおけるオブジェクト検索方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7327122A JPH09167167A (ja) | 1995-12-15 | 1995-12-15 | オブジェクト指向データベースにおけるオブジェクト検索方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09167167A true JPH09167167A (ja) | 1997-06-24 |
Family
ID=18195559
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7327122A Pending JPH09167167A (ja) | 1995-12-15 | 1995-12-15 | オブジェクト指向データベースにおけるオブジェクト検索方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH09167167A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006526185A (ja) * | 2003-05-16 | 2006-11-16 | 株式会社エヌ・ティ・ティ・ドコモ | 個別サービス選択 |
| JP2011053874A (ja) * | 2009-09-01 | 2011-03-17 | Nec Corp | アプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラム |
| US7983226B2 (en) | 2001-12-03 | 2011-07-19 | Nokia Corporation | Apparatus, and associated method, for retrieving mobile-node logic tree information |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03263267A (ja) * | 1990-03-14 | 1991-11-22 | Fujitsu Ltd | 条件検索の最適化方法 |
| JPH06139130A (ja) * | 1992-10-23 | 1994-05-20 | Fujitsu Ltd | オブジェクト指向データベースにおける問い合わせ処理方式 |
-
1995
- 1995-12-15 JP JP7327122A patent/JPH09167167A/ja active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03263267A (ja) * | 1990-03-14 | 1991-11-22 | Fujitsu Ltd | 条件検索の最適化方法 |
| JPH06139130A (ja) * | 1992-10-23 | 1994-05-20 | Fujitsu Ltd | オブジェクト指向データベースにおける問い合わせ処理方式 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7983226B2 (en) | 2001-12-03 | 2011-07-19 | Nokia Corporation | Apparatus, and associated method, for retrieving mobile-node logic tree information |
| JP2006526185A (ja) * | 2003-05-16 | 2006-11-16 | 株式会社エヌ・ティ・ティ・ドコモ | 個別サービス選択 |
| JP4759269B2 (ja) * | 2003-05-16 | 2011-08-31 | 株式会社エヌ・ティ・ティ・ドコモ | 個別サービス選択 |
| JP2011053874A (ja) * | 2009-09-01 | 2011-03-17 | Nec Corp | アプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6035303A (en) | Object management system for digital libraries | |
| US6356901B1 (en) | Method and apparatus for import, transform and export of data | |
| US8356029B2 (en) | Method and system for reconstruction of object model data in a relational database | |
| JP4866495B2 (ja) | データベースシステムにおいて結合質問を実行する方法及び装置 | |
| US7424490B2 (en) | System for document management and information processing | |
| US5162992A (en) | Vector relational characteristical object | |
| US6374252B1 (en) | Modeling of object-oriented database structures, translation to relational database structures, and dynamic searches thereon | |
| US7533115B2 (en) | Method for managing persistent federated folders within a federated content management system | |
| US7373351B2 (en) | Generic search engine framework | |
| US9081872B2 (en) | Methods and systems for managing permissions data and/or indexes | |
| JP4406609B2 (ja) | 単一のインターフェイスからのデータの多重階層を管理するための手法 | |
| US20080040388A1 (en) | Methods and systems for tracking document lineage | |
| US20080306954A1 (en) | Methods and systems for managing permissions data | |
| US7730097B2 (en) | Smart database | |
| US20090125530A1 (en) | Hierarchy Nodes Derived Based on Parent/Child Foreign Key and/or Range Values on Parent Node | |
| JPH0784858A (ja) | 文書管理方法 | |
| US6301581B1 (en) | Method and system for managing access to a plurality of data objects | |
| US7519620B2 (en) | Replication system, method and program for replicating a plurality of databases into a replica database | |
| KR100529661B1 (ko) | 오브젝트 통합 관리 시스템 | |
| US5884321A (en) | Document image and query management system for application databases | |
| JPH07244605A (ja) | データベースシステム及びその更新方法 | |
| JP4167359B2 (ja) | データ管理システム及びデータ管理方法 | |
| US5299122A (en) | Table manipulations for enterprise specific search terms | |
| JPH09167167A (ja) | オブジェクト指向データベースにおけるオブジェクト検索方法 | |
| JP3493354B2 (ja) | 文書検索方法 |