JP2785138B2 - 大規模知識データベースシステムにおける遺伝方式 - Google Patents

大規模知識データベースシステムにおける遺伝方式

Info

Publication number
JP2785138B2
JP2785138B2 JP1184714A JP18471489A JP2785138B2 JP 2785138 B2 JP2785138 B2 JP 2785138B2 JP 1184714 A JP1184714 A JP 1184714A JP 18471489 A JP18471489 A JP 18471489A JP 2785138 B2 JP2785138 B2 JP 2785138B2
Authority
JP
Japan
Prior art keywords
genetic
class
attribute
information
attribute information
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.)
Expired - Fee Related
Application number
JP1184714A
Other languages
English (en)
Other versions
JPH0350632A (ja
Inventor
文雄 鈴木
博 石川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1184714A priority Critical patent/JP2785138B2/ja
Publication of JPH0350632A publication Critical patent/JPH0350632A/ja
Application granted granted Critical
Publication of JP2785138B2 publication Critical patent/JP2785138B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】 〔概要〕 オブジェクトの属性へのアクセスの基本的機能である
遺伝を高速化するための大規模知識データベースシステ
ムにおける遺伝方式に関し、 オブジェクトの属性の補助情報をも含めた遺伝属性情
報を作成し、次の検索時にはその遺伝属性情報を利用し
て遺伝処理の高速化を実現することを目的とし、 電子計算機および外部記憶手段からなり、オブジェク
ト指向言語を用いて大規模なデータを取扱う知識データ
ベースシステムにおいて、前記オブジェクト指向言語に
おける下位クラスと該下位クラスの上位クラスとが持つ
同じ属性である遺伝属性情報を、該遺伝属性情報を有す
る下位クラスから順次上位クラスを検索し、該遺伝属性
の補助情報をも含めて求める遺伝属性情報作成手段と、
該遺伝属性情報作成手段が作成した情報を、前記大規模
知識データベースシステムの検索の高速化のために記憶
する遺伝属性情報記憶手段とを有するように構成する。
〔産業上の利用分野〕
本発明は、オブジェクト指向言語を用いた知識データ
ベースシステムにおけるオブジェクトの属性へのアクセ
ス方式に係り、さらに詳しくは、オブジェクトの属性へ
のアクセスの基本的機能である遺伝を高速化するための
大規模知識データベースシステムにおける遺伝方式に関
する。
〔従来の技術〕
電子計算機の技術進歩、普及に伴い、ソフトウエア生
産量も加速度的に増加してきている。ソフトウエアの開
発人口が不足しているために、ソフトウエア生産は需要
に追いつかないのが現状であり、生産性の向上が切実に
要求されている。
そのための一解決策としてオブジェクト指向言語の利
用が進みつつある。オブジェクト指向言語は、COBOLやF
ORTRAN、BASICといった従来の構造的プログラミング言
語よりもプログラムを自然に記述できるという特徴があ
り、また、プロトタイピングやソフトウエアの再利用に
も向いているからである。
オブジェクト指向言語によるプログラミングの基本単
位はオブジェクトであり、オブジェクトはデータと、そ
のデータに対する手続きを構成要素とする。オブジェク
トにメッセージを送ることによって、オブジェクト自ら
がそのメッセージに該当する手続きを実行し、ユーザ所
望の処理の実現が可能になる。オブジェクトにはクラス
とインスタンスがあり、インスタンスが具体的な値やデ
ータであるのに対して、クラスはよく似た性質を持つオ
ブジェクトの集合である。また、クラス間に上位下位関
係を定義することも可能である。
第10図はクラスの説明図である。医者というクラスが
あり、その下位のクラスとして歯科医、内科医、外科医
等の各科の医者のクラスが定義できる。また、各科の医
者のクラスは、その科の一人一人の医者をインスタンス
とする集合である。
同じクラスに属するインスタンスは、そのクラスに記
述された属性を継承して共通にもつ。例えば、同図にお
いて、内科医のクラスのインスタンスは内科医1、内科
医2等、一人一人の内科医の情報で、内科医のクラスに
記述された属性(名前、免許番号、患者名)を内科医の
クラスに属する各インスタンスが共通にもっている。す
なわちインスタンス内科医1の名前属性は佐藤、免許番
号は83、患者名属性は患者A、患者B、患者C、インス
タンス内科医2の名前属性は鈴木、免許番号は103、患
者名属性は患者W、患者X、患者Y、患者Zである。
さらにこのような上位クラスと下位クラスの間の関係
として遺伝がある。遺伝は上位クラスの属性を下位クラ
スも持つことであり、例えば第11図に示すように人間ク
ラスの上位クラスが哺乳類クラスであるとすると、哺乳
類の性質である“授乳”を人間のクラスも持つことにな
り、この属性“授乳”は哺乳類クラスより遺伝するとい
われる。従来のオブジェクト指向言語における遺伝処理
では、第11図に示すように、属性名“授乳”をキーとし
て上位クラスをたどりながら一致する属性の検索が行わ
れていた。
〔発明が解決しようとする課題〕
上述のような遺伝処理はオブジェクトの属性にアクセ
スするための基本的機能であって、知識データベースの
検索に際して頻繁に使用されるが、一般に検索のたびに
遺伝の探検処理が行われるためにそれに要する時間が非
常に長いという問題点があった。
次に第2の問題点として遺伝処理によって得られる情
報が少ない、すなわち処理の機能が低いという問題点が
あった。すなわち遺伝処理に時間がかかるために、それ
によってより多くの情報を得ようとするとさらに時間が
かかり、実質的に多くの情報を得ることができないとい
う問題である。第12図はこの問題点を説明するものであ
り、前述の授乳という属性に関連して“乳頭の数”とい
うような補助情報があったとすると、その数は人間の場
合は2で、牛の場合は8である。このような場合、人間
と牛およびその上位クラスである哺乳類の授乳情報につ
いて、従来の遺伝方式では初めに見つかる属性のみを遺
伝の対象としているために、補助情報までを含めた遺伝
ができないという問題点があった。
本発明の課題は、上述の問題点に鑑み、オブジェクト
の属性の補助情報をも含めた遺伝属性情報を作成し、次
の検索時にはその遺伝属性情報を利用して遺伝処理の高
速化を実現することを目的とする。
〔課題を解決するための手段〕
第1図は本発明の原理ブロック図である。同図におい
てオブジェクト指向言語を用いた大規模知識データベー
スシステムは電子計算機1と外部記憶手段2とによって
構成されている。
電子計算機1内の遺伝属性情報作成手段3はオブジェ
クト指向言語における下位クラスとその上位クラスが持
っている同じ属性、例えば第11図における授乳の属性を
示す遺伝属性情報を、その遺伝属性情報の補助情報、例
えば第12図における乳頭の数をも含めて下位クラスから
順次検索して求める。遺伝属性情報記憶手段4は遺伝属
性情報作成手段3の作成した遺伝属性情報を、次回の知
識ベース検索にそなえて、例えばハッシュ表の形式で記
憶する。
〔作用〕
本発明においては、前述のように、遺伝属性情報がそ
の補助情報をも含めて求められる。すなわち最初の遺伝
処理要求に対しては、第1図における遺伝属性情報作成
手段3によって下位クラスからその属性の有無が調べら
れ、属性が存在する場合にはその属性の補助情報が、例
えばテンポラリーな作業領域にコピーされる。各クラス
についてこの処理が順次行われ、例えば上位クラスがな
くなった時点で遺伝属性情報の作成が終了する。次に遺
伝属性情報記憶手段4、例えばハッシュ表に求められた
遺伝属性情報が格納される。この格納は次回以降の検索
の高速化を実現するためのものである。なお遺伝属性情
報作成手段3の下位クラスからの探検に先立ってハッシ
ュ表が調べられ、その属性についてのハッシュ表が存在
する場合には再度ハッシュ表を作ることなくそのハッシ
ュ表を用いて検索が行われることは当然である。
以上のように、本発明によれば、オブジェクトの属性
の補助情報までを含めた遺伝処理が可能となる。
〔実施例〕
第2図は本発明の遺伝方式を用いる大規模知識データ
ベースシステムの全体構成ブロック図である。同図にお
いて、システムは汎用大型コンピュータ等の電子計算機
1、磁気ディスク装置、光ディスク装置等の外部記憶装
置6、および端末装置7から構成される。また、電子計
算機1はCPU8を中心とし、CPU8は主記憶9および入出力
制御部10、外部記憶制御部11と接続されている。端末装
置7はユーザによって操作され、オブジェクトの作成や
格納、検索、手続きの実行等のコマンドやデータを電子
計算機1に入力し、また電子計算機1からのオブジェク
ト情報や処理結果を受けてディスプレイ等に出力する。
また外部記憶装置6は、多数のオブジェクトを格納し知
識データベースを構成する。
また、入力制御部10は端末装置7及びCPU8、主記憶9
と接続され、電子計算機1と端末装置7等の入出力装置
をつなぐ入出力インターフェースの役目をする。また、
外部記憶制御部11は外部記憶装置6およびCPU8、主記憶
9と接続され、主記憶9−外部記憶装置6間での知識デ
ータの入出力を制御する。
一方、電子計算機1内の主記憶9には、知識データベ
ースの核となる知識データベース(Jasmine)12が格納
され、そのプログラムに従ってCPU8が知識ベースに対す
る各種処理を実行する。さらに主記憶9内には一部の知
識データ13が格納され、本発明の遺伝方式はこの知識デ
ータ13に適用される。
第3図は、知識ベースシステム(Jasmine)12の構成
図である。システムはモジュール化されており、主制御
機構14、解析機構15、最適化機構16、コード生成機構1
7、インタプリタ18、オブジェクト管理機構19、データ
管理機構20からなる。次に各モジュールの役割を簡単に
説明する。
本実施例の知識ベースシステムは、ユーザにオブジェ
クト指向のプログラミング言語と会話型処理システムを
提供する。そして、主制御機構14はこれらオブジェクト
指向プログラムと会話型処理システムの実行制御を行
う。また解析機構15はオブジェクト指向プログラミング
言語で記述されたプログラミングの構文を解析し中間コ
ードを生成するとともに、会話型処理システムは会話型
処理により入力されるオブジェクト操作文を解析し、実
行可能な形にする。実行可能な形に変換されたオブジェ
クト操作文はインタプリタ18が実行する。
前述の解析機構15によって生成された中間コードは最
適化機構16に送られ最適化される。すなわち、最適化機
構16は例えばジョインの順序変更による高速化などの最
適化を施し、選択演算、結合演算などの演算ブロックを
時間情報として作成し、コード生成機構17に引き渡す。
コード生成機構17は、最適化機構16で最適化された中間
コードからCソース・プログラムを生成する。生成され
たCソース・プログラムは、電子計算機1の主記憶9に
本知識ベースシステムとは別に格納されているCコンパ
イラによってコンパイルされ、知識ベースシステムの実
行ライブラリをリンクして実行可能ファイルを構成し、
デバガがこれを実行する。
一方、オブジェクト管理機構19はオブジェクトの管理
を実行する。クラスとインスタンスの管理や、クラス−
インスタンス間あるいは上位下位関係があるクラス間で
属性や手続きを継承する遺伝の管理、プログラムの管理
を実行する。すなわち、本発明の遺伝処理はオブジェク
ト管理機構19の内部にプログラムとして実現されてい
る。
データ管理機構20は例えば拡張関係データベースを管
理するものであり、非正規形のテーブルを管理でき、ま
たインデックス検索やハッシュジョイントという高速ア
クセスメソッドを持っている。さらにタプル、すなわち
関係データベースの表における行ごとの処理を述語関数
やマッピング関数というコンパイルコードで与え、それ
を実行できる高速かつ汎用的なデータベースシステムエ
ンジンである。また、オブジェクト管理機構19は例えば
アクティブオブジェクトスペースを用いてデータ管理機
構20とのインターラクションが少なくなるようになって
いる。
本発明においては補助情報までを含む遺伝が実現され
るために知識ベースシステムにおけるきめ細かい処理が
可能になる。第4図はフォーマットの異なる伝票のクラ
スの実施例であり、伝票Aと伝票Bとのフォーマットが
それぞれフォーマットA(form A)、フォーマットB
(form B)として指定され、これらのクラスの上に伝票
クラスがある。同図において、伝票の内容や計算方法は
同であり、フォーマットのみが異なるクラスが定義され
ている。
第5図は、第4図の伝票クラスに対するハッシュ表作
成時のデータの流れの実施例を表す。図においてで伝
票Aのクラスの属性“印刷”について以前にハッシュ表
が作成されているか否かが検索される。ここでは以前に
ハッシュ表が作成されていないものとし、その作成が開
始される。すなわちで伝票Aの属性が検索され、属性
“印刷”があるために、その属性についてテンポラリー
な作業領域21が作られ、そこに属性“印刷”の補助情報
である“form A"がコピーされる。次にで上位クラス
である伝票クラスが検索され、属性“印刷”があるの
で、その補助情報“計算”がテンポラリー領域22にコピ
ーされる。なおここでテンポラリー領域22と21は全く同
じものであり、領域21の上に伝票クラスの補助情報“計
算”がコピーされたものが領域22として示されている。
ここで伝票クラスは最上位のクラスであるのでで検索
は終了し、で結果がハッシュ表に登録される。以上で
補助情報を含めた遺伝処理が終了するが、次回以後の検
索においては遺伝属性情報はハッシュ表から検索され
る。すなわちハッシュ関数を用いて、ハッシュバケット
23の示すポインタにより、伝票Aの属性“印刷”を示す
セル24からハッシュ表の示す内容が検索される。
第6図はキャッシング情報としてのハッシュのセルの
データ構造である。同図において、キャッシング情報は
コンフリクト、すなわち2つのキーが同じハッシュ番地
を持つ衝突が起った場合の次のポインタとしてのネクス
トポインタ、クラス情報へのポインタ、属性名を表す文
字列、及びその属性情報へのポインタからなる。
第7図はハッシングアルゴリズムの概要である。同図
においてステップ25でクラスアドレスと属性名をキーと
してハッシュ関数が動かされ、ハッシュバケットのイン
デックスが求められる。そしてステップ26で、そのイン
デックスを用いてハッシュ・コンフリクト・リストがた
どられ、マッチするセルが求められる。
第8図はキャッシングの具体例を示す。同図におい
て、ハッシュバケット27のインデックスからハッシュ・
コンフリクト・リストとしてのポインタがたどられ、こ
こでは2つのセル28,29のうちセル29がマッチするセル
として求められる。
第9図は遺伝属性情報作成処理の詳細アルゴリズムの
実施例である。このアルゴリズムは第5図のハッシュ表
作成時のデータの流れの実施例をさらに詳しく説明する
ものである。まず遺伝属性情報をコピーするための作業
領域が0にされた後に処理がスタートし、ステップ30で
ハッシュ表が調べられ、対象となっている属性について
ハッシュ表があるか否かがステップ31で判定される。最
初の検索時ではハッシュ表は存在しないのでステップ32
に移行し、クラス内の属性か調べられ、ステップ33で同
じ属性があるか否かが判定される。ある場合にはステッ
プ34で作業領域があるか否かが判定され、作業領域がな
ければステップ35で作業領域が新しく作られる。
その後ステップ36で作られた作業領域へ補助情報を含
む遺伝属性情報がコピーされ、ステップ37で例えばデフ
ォルト値やデーモン(その属性にアクセスした時に特別
の手続きが起動されるもの)などの属性情報があるたび
に対応するフラグが1とされ、ステップ37′で上位クラ
スをクラスとした後に、ステップ38に移行する。これは
後述するように、その属性に必要なフラグが全て1とな
った時点で作業領域の情報が満たされたと判断し、遺伝
属性情報を求める処理を終了するためである。
ステップ33でクラス内の属性がない場合には、ステッ
プ34〜37の処理を行うことなく、直ちにステップ38に移
行する。またステップ34ですでに作業領域がある場合に
は、ステップ35の処理を経ることなくステップ36に移行
する。これは上位クラス内の属性を調べる時にすでに下
位クラスに対する処理において作業領域が作られている
場合に対応する。
その後ステップ38で全ての上位クラスについて調べら
れたか否かが判定され、まだ調べるべき上位クラスが残
っている場合には、ステップ39で前述のフラグ、すなわ
ち必要なフラグが全て1となっているか否かによって作
業領域の情報が満たされたか否かが判定される。ステッ
プ38で上位クラスについての調べが残っており、しかも
ステップ39で作業領域が満たされていない場合には、次
の上位クラスに対してステップ30以降の処理が繰り返さ
れる。ここでステップ30で再びハッシュ表が調べられる
のはハッシュ表がクラスアドレスと属性名をキーとして
アクセスされるためであり、上位クラスに対しては再度
ハッシュ表へのアクセスが必要となる。
ステップ38で全ての上位クラスについて調べ終わった
と判定されるか、あるいはステップ39で作業領域が満さ
れたと判定された時にはステップ40に移行し、ステップ
36で各クラスについて作業領域にコピーされた遺伝属性
情報の結果がハッシュ表に登録され、ステップ41でその
結果が遺伝処理要求元に返されて処理が終了する。
ステップ30でハッシュ表が調べられ、ステップ31であ
ると判定されると、ステップ42で遺伝属性情報がコピー
された作業領域があるか否かが判定される。これは下位
クラスの属性に対してハッシュ表がなく、上位クラスの
属性に対してハッシュ表がある場合に対応する処理であ
り、ステップ36で下位クラスに対して作業領域へコピー
された遺伝属性情報の内容と、上位クラスの属性に対す
るハッシュ表とを一緒にして遺伝処理要求元へ返す必要
があるからである。そのような作業領域がある場合には
その内容がステップ43でコピーされた後に、またない場
合には直ちにステップ41に移行し、結果が遺伝処理要求
元に返されて処理が終了する。ステップ42で作業領域が
ないときにはステップ42′で作業領域を作った後で作業
領域の内容をコピーし、以下、上述と同様の処理を行
う。
〔発明の効果〕
以上詳細に説明したように、本発明によれば、オブジ
ェクトの検索で基本となる遺伝処理が高速になり、また
補助情報までを含む遺伝処理が可能になる。これによっ
てシステム全体の処理が効率化し、さらにきめ細かくな
る。
【図面の簡単な説明】 第1図は、本発明の原理ブロック図、 第2図は、本発明の遺伝方式を用いる大規模知識データ
ベースシステムの全体構成を示すブロック図、 第3図は、知識ベースシステムJasmineの構成を示すブ
ロック図、 第4図は、フォーマットの異なる伝票のクラスの実施例
を示す図、 第5図は、ハッシュ表作成時のデータの流れの実施例を
示す図、 第6図は、キャッシング情報としてのハッシュのセルの
データ構造を示す図、 第7図は、ハッシングアルゴリズムの概要を示す図、 第8図は、キャッシングの具体例を示す図、 第9図は、遺伝属性情報作成処理の詳細アルゴタズムの
実施例を示す図、 第10図は、クラス−インスタンスの説明図、 第11図は、オブジェクト指向言語における遺伝方式の従
来例を示す図、 第12図は、オブジェクト指向言語における遺伝方式の従
来例の問題点を説明する図である。 1……電子計算機、 6……外部記憶装置、 8……CPU、 9……主記憶、 12……知識ベースシステム(Jasmine)、 13……知識データ、 19……オブジェクト管理機構、
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/44 G06F 12/00 G06F 17/30

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】電子計算機(1)および外部記憶手段
    (2)からなり、オブジェクト指向言語を用いて大規模
    なデータを取扱う知識データベースシステムにおいて、 前記オブジェクト指向言語における下位クラスと該下位
    クラスの上位クラスとが持つ同じ属性を示す遺伝属性情
    報を、該遺伝属性情報の属性に関連する情報である補助
    情報を含めて、前記遺伝属性情報を有する前記下位クラ
    スから順次上位クラスを検索して求める遺伝属性情報作
    成手段(3)と、 該遺伝属性情報作成手段(3)が作成した情報を記憶す
    る遺伝属性情報記憶手段(4)とを有することにより、 前記遺伝属性情報作成手段(3)が情報を作成した後
    は、前記遺伝属性情報記憶手段(4)に記憶された前記
    情報を用いてデータを取扱うことを特徴とする大規模知
    識データベースシステムにおける遺伝方式。
JP1184714A 1989-07-19 1989-07-19 大規模知識データベースシステムにおける遺伝方式 Expired - Fee Related JP2785138B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1184714A JP2785138B2 (ja) 1989-07-19 1989-07-19 大規模知識データベースシステムにおける遺伝方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1184714A JP2785138B2 (ja) 1989-07-19 1989-07-19 大規模知識データベースシステムにおける遺伝方式

Publications (2)

Publication Number Publication Date
JPH0350632A JPH0350632A (ja) 1991-03-05
JP2785138B2 true JP2785138B2 (ja) 1998-08-13

Family

ID=16158081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1184714A Expired - Fee Related JP2785138B2 (ja) 1989-07-19 1989-07-19 大規模知識データベースシステムにおける遺伝方式

Country Status (1)

Country Link
JP (1) JP2785138B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010002510A (ko) * 1999-06-15 2001-01-15 김영환 전후향 탐색 알고리즘을 적용한 클래스 계층 및 클래스 구성 계층 관리 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63157242A (ja) * 1986-12-20 1988-06-30 Fujitsu Ltd 構造化知識処理装置

Also Published As

Publication number Publication date
JPH0350632A (ja) 1991-03-05

Similar Documents

Publication Publication Date Title
JP3437849B2 (ja) オブジェクト指向プログラミングを支援するデータベース管理システム及び方法
US5459860A (en) Computerized system and process for managing a distributed database system
US5937409A (en) Integrating relational databases in an object oriented environment
US5802523A (en) Method and apparatus for reducing the memory required to store bind variable descriptors in a database
US7350194B1 (en) Techniques for debugging computer programs involving multiple computing machines
US6243709B1 (en) Method and apparatus for loading stored procedures in a database corresponding to object-oriented data dependencies
US7480661B2 (en) Query services for database system
JP2005515518A (ja) レガシーソフトウエアアプリケーションを現代的オブジェクト指向型システムへ変換する方法及びシステム
JP2002525744A (ja) テキスト・オブジェクトのコンパイル方法およびシステム
JP3058672B2 (ja) データベース管理システム
US6389425B1 (en) Embedded storage mechanism for structured data types
CN110209699B (zh) 一种基于openEHR Composition模板的数据接口动态生成与执行方法
JP2785138B2 (ja) 大規模知識データベースシステムにおける遺伝方式
Duce et al. Formal specification of a small example based on GKS
CN114385145A (zh) 一种Web系统后端架构设计方法及计算机设备
JP2923917B2 (ja) 大規模知識データベースシステムにおけるデータアクセス方式
Schwarz et al. Managing change in the rufus system
Mullen et al. Supporting queries in the O-Raid object-oriented database system
Goh et al. A STEP/EXPRESS to object–oriented database translator
Andres et al. EDS—collaborating for a high performance parallel relational database
CN111190886B (zh) 面向数据库访问的计算流图构建方法、访问方法及装置
JP2006004145A (ja) プログラムコード生成装置
EP0438843A1 (en) Repository Application generator
CN118227626A (zh) 查询对象映射方法、装置及产品
Montolalu et al. SQL And NoSQL Object Database Mapping to Support CRUD Operation

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees