JPH06266603A - Object directing data base management system - Google Patents

Object directing data base management system

Info

Publication number
JPH06266603A
JPH06266603A JP5052653A JP5265393A JPH06266603A JP H06266603 A JPH06266603 A JP H06266603A JP 5052653 A JP5052653 A JP 5052653A JP 5265393 A JP5265393 A JP 5265393A JP H06266603 A JPH06266603 A JP H06266603A
Authority
JP
Japan
Prior art keywords
segment
management
function
database
objects
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
JP5052653A
Other languages
Japanese (ja)
Inventor
Fusayuki Minamoto
房幸 皆本
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP5052653A priority Critical patent/JPH06266603A/en
Publication of JPH06266603A publication Critical patent/JPH06266603A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To provide an object directing data base management system which can construct a flexible system adjusted to the scales of various applications. CONSTITUTION:The object directing data base management system 3 is provided with a core part 32 providing a basic function for storing/managing a permanent object, one or plural parts objects 33A and 33B providing extension functions for extending the basic function on storage/management and a control means 34 controlling the connection of the extension functions which the parts objects 33A and 33B have as against the basic function which the core part 32 has in accordance with the request of a user operating the permanent object. Thus, a storage management environment corresponding to the scale which the user(application) requests is provided.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、実世界の情報構造を
直接的に反映させた複雑なデータ構造をもつ永続オブジ
ェクトを操作の対象とするオブジェクト指向データベー
スシステムにあってデータベース内でのそれら永続オブ
ジェクトの生成、削除等にかかる記憶管理を実行するオ
ブジェクト指向データベース管理システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an object-oriented database system in which a persistent object having a complicated data structure that directly reflects the information structure of the real world is the object of operation. The present invention relates to an object-oriented database management system that executes storage management related to generation and deletion of objects.

【0002】[0002]

【従来の技術】近年、CAD(コンピュータ支援設
計)、CASE(コンピュータ支援ソフトウェアエンジ
ニアリング)、OA(オフィスオートメーション)、ネ
ットワーク管理、等々の諸分野において、複雑なデータ
構造をもつオブジェクトを効率よく処理するのに適した
データベースシステムとしてオブジェクト指向データベ
ースシステムが注目を集めていることはよく知られてい
る。
2. Description of the Related Art In recent years, in CAD (Computer Aided Design), CASE (Computer Aided Software Engineering), OA (Office Automation), Network Management, etc., an object having a complicated data structure is efficiently processed. It is well known that an object-oriented database system is attracting attention as a database system suitable for the.

【0003】オブジェクト指向データベース管理システ
ムとは、こうしたオブジェクト指向データベースシステ
ムにあってそのデータ、すなわちオブジェクトの生成、
削除等にかかる記憶管理を実行する部分であり、通常
は、このデータベースシステムを利用するアプリケーシ
ョンが主記憶装置上に生成したオブジェクトを該アプリ
ケーションの実行が終了した後も使用できるように、こ
のオブジェクトを永続化して、すなわち永続オブジェク
トとして二次記憶装置に格納して、これら主記憶装置と
二次記憶装置との間での該オブジェクトのロード/スト
アを管理するようになる。こうしたオブジェクト指向デ
ータベース管理システムによるオブジェクト記憶管理メ
カニズムの概念を図12に示す。
The object-oriented database management system refers to such an object-oriented database system, and its data, that is, generation of an object,
This is a part that executes storage management related to deletion, etc. Normally, this object is used so that the application that uses this database system can use the object created on the main storage device even after the execution of the application is completed. It becomes persistent, that is, stored in a secondary storage device as a persistent object, and manages the load / store of the object between the main storage device and the secondary storage device. FIG. 12 shows the concept of an object storage management mechanism by such an object-oriented database management system.

【0004】すなわち図12において、1は磁気ディス
ク装置等の二次記憶装置上に構築されているデータベー
ス、2はこのデータベース1に対するアプリケーション
要求(オブジェクトの生成/削除等に関するオブジェク
ト記憶管理要求)を統括的に管理してその要求される記
憶処理を実行すべく主記憶装置上に構成されるオブジェ
クト指向データベース管理システムであり、このデータ
ベース管理システム2は更に、同図12に示される態様
で関連付けられる入出力管理部21、及びオブジェクト
記憶管理部22を有して構成されている。
That is, in FIG. 12, reference numeral 1 is a database constructed on a secondary storage device such as a magnetic disk device, and 2 is an application request for the database 1 (object storage management request for object creation / deletion). Is an object-oriented database management system configured on a main memory to manage the stored data and execute the required storage processing. The database management system 2 is further associated with an input system shown in FIG. The output management unit 21 and the object storage management unit 22 are included.

【0005】ここで、上記入出力管理部21とは、上記
アプリケーションを介して与えられる例えばオブジェク
トObjの生成要求等、ユーザの処理要求を解読して、
その内容をオブジェクト記憶管理部22に与えるととも
に、オブジェクト記憶管理部22による該指定されたオ
ブジェクトObjについての生成結果についてはこれを
当該アプリケーションに対して返すなどのインターフェ
ース的な役割を果たす部分であり、また、オブジェクト
記憶管理部22とは、この入出力管理部21から例えば
上記処理要求の内容が与えられることによって、主記憶
装置上にその該当するオブジェクトObjを生成すると
ともに、この生成したオブジェクトObjを永続オブジ
ェクトPObjとして永続化してこれを上記二次記憶装
置上にあるデータベース1内にストアする等、実際の処
理を実行してそれらオブジェクトの記憶態様を管理する
部分である。このようなオブジェクト指向データベース
管理システム2を通じてオブジェクトの記憶管理が実行
されることにより、アプリケーション側からは、通常に
オブジェクトを操作する態様にて、データベース1上
の、すなわち二次記憶装置上の永続オブジェクトを操作
することができるようになる。
Here, the input / output management unit 21 decodes a user's processing request such as a request to generate an object Obj given via the application,
The contents are given to the object storage management unit 22, and the generation result of the specified object Obj by the object storage management unit 22 is a part which plays a role of an interface such as returning this to the application. Further, the object storage management unit 22 generates the corresponding object Obj in the main storage device by being given the contents of the processing request from the input / output management unit 21, and also generates the generated object Obj. This is a part that manages the storage mode of these objects by executing actual processing such as persisting as a persistent object PObj and storing this in the database 1 on the secondary storage device. By performing storage management of objects through the object-oriented database management system 2 as described above, the persistent objects on the database 1, that is, the secondary storage device, are operated from the application side in a manner of operating the objects normally. You will be able to operate.

【0006】なお、こうしたオブジェクト指向データベ
ースシステム、或いはオブジェクト指向データベース管
理システムの詳細については、例えば特開平3−137
730号公報(発明の名称「オブジェクト指向コンピュ
ータ・システム」)や、「情報処理」1991年5月号
(平成3年5月15日、財団法人情報処理学会発行)等
に詳しい。
Details of such an object-oriented database system or an object-oriented database management system are described in, for example, Japanese Patent Laid-Open No. 3-137.
No. 730 (the title of the invention "object-oriented computer system"), "Information Processing" May 1991 issue (May 15, 1991, published by The Information Processing Society of Japan).

【0007】[0007]

【発明が解決しようとする課題】ところで、オブジェク
ト指向データベース管理システムとしては、上記主記憶
装置上に生成されたオブジェクトを永続化する機能の他
にも、例えばこれら文献にも見られるような ・オブジェクト識別子を管理する機能 ・二次記憶装置上のファイルを管理する機能 ・並行処理を制御する機能 ・障害が発生した場合にそれから回復する機能 ・インデックスを管理する機能 ・問い合わせ機能 ・クラスタリング機能 ・セキュリティ機能 等々、多くの機能が要求され、また利用できるよう具体
化されつつあるものの、例えば上記特開平3−1377
30号公報(発明の名称「オブジェクト指向コンピュー
タ・システム」)にもあるように、従来のオブジェクト
指向データベースシステムはそれ自体が一体化したソフ
トウェアシステムであって、上述したオブジェクトの生
成や削除等の記憶管理に係わる部分にしろ、その部分の
みをユーザが自由にカスタマイズできるような構成には
なっていない。因みに同文献によれば、その第5図に示
されるオブジェクト・マネージャがオブジェクト・テー
ブルの管理を行う部分ではあるが、これは、アプリケー
ションプログラマがその目的に応じて機能を追加したり
或いは削除したりできるものではない。
By the way, as an object-oriented database management system, in addition to the function of making an object generated on the main memory device persistent, there are also the following objects: Function to manage identifiers ・ Function to manage files on secondary storage device ・ Function to control parallel processing ・ Function to recover from failure if it occurs ・ Function to manage index ・ Query function ・ Clustering function ・ Security function Although many functions are required and are being embodied so that they can be used, for example, the above-mentioned JP-A-3-1377.
As disclosed in Japanese Patent No. 30 (the title of the invention, "Object-Oriented Computer System"), the conventional object-oriented database system is a software system integrated by itself, and stores the above-mentioned generation and deletion of objects. Even the part related to management is not configured so that the user can freely customize only that part. Incidentally, according to the document, the object manager shown in FIG. 5 manages the object table. This is because the application programmer adds or deletes a function according to the purpose. Not something you can do.

【0008】このように、従来のオブジェクト指向デー
タベース或いはその管理システムでは、それらシステム
自身に、例えば記憶管理のための各種高度な機能を予め
固定して組み込み、それら組み込まれた機能の中から、
アプリケーション(ユーザ)がその都度必要とする機能
のみを選択的に利用する形態を採っていたことから、そ
れら組み込まれた機能の全てを必要としないアプリケー
ション(ユーザ)にとっては、それら利用しない機能を
実現するのに必要とされる計算機資源(例えば主記憶装
置上の各種管理テーブルのための記憶領域やCPU能力
など)は無駄なものとなり、また逆に、将来より高度な
機能が必要になったとしても、上記組み込まれている機
能を拡張することもできないため、そうした要求には応
えることができなかった。
As described above, in the conventional object-oriented database or its management system, for example, various advanced functions for memory management are fixedly installed in advance in the system itself, and from among the installed functions,
Since the application (user) has adopted the form of selectively using only the function that it needs each time, it realizes the function that it does not use for the application (user) who does not need all of the built-in functions. The computer resources (for example, storage areas for various management tables on the main storage device, CPU capacity, etc.) required to do so are wasted, and conversely, if more advanced functions are required in the future. However, it was not possible to meet such demands because the built-in functions cannot be expanded.

【0009】この発明は、こうした実情に鑑みてなされ
たものであり、各種アプリケーション(ユーザの要求)
の規模に見合った必要十分な記憶管理機能を選択するこ
とができ、柔軟なシステム構築を可能にするオブジェク
ト指向データベース管理システムを提供することを目的
とする。
The present invention has been made in view of such circumstances, and various applications (user's request)
The object of the present invention is to provide an object-oriented database management system which enables flexible system construction by selecting necessary and sufficient storage management functions according to the scale of the system.

【0010】[0010]

【課題を解決するための手段】こうした目的を達成する
ため、この発明では、( a)永続オブジェクトを記憶管理
するための基本機能を提供する中核部、( b)同記憶管理
について前記基本機能を拡張するための拡張機能を提供
する1乃至複数の部品オブジェクト、及び( c)前記永続
オブジェクトを操作するユーザの要求に応じて前記中核
部のもつ基本機能に対するこれら部品オブジェクトのも
つ拡張機能の結合を制御する制御手段、を具えてオブジ
ェクト指向データベース管理システムを構成するように
する。
In order to achieve these objects, the present invention provides (a) a core part that provides a basic function for storing and managing a persistent object, and (b) the same basic function for the same storage management. One or more component objects that provide an extension function for extending, and (c) the combination of the extension functions of these component objects with the basic functions of the core according to the request of the user who operates the persistent object. An object-oriented database management system is configured with control means for controlling.

【0011】[0011]

【作用】中核部とは、前述した永続化をはじめ、例えば
オブジェクト識別子の管理や、二次記憶装置上のファイ
ル管理、並行処理制御、障害回復、等々の必要最小限の
機能を提供する部分であり、また部品オブジェクトとは
各々、例えばインデックス管理や、問い合わせ機能、ク
ラスタリング、セキュリティ、等々の上記中核部にはな
い機能、すなわち拡張機能を各別に提供する部分であ
り、制御手段を通じてこれら部品オブジェクトのもつ拡
張機能の何れか1つ或いは複数が、中核部の本来もつ上
記基本機能と結合され、或いはその結合が解除されるこ
とにより、該オブジェクト指向データベース管理システ
ムに対して例えば高度な記憶管理機能を要求するアプリ
ケーション(ユーザ)にとっては、その要求に応じて、
中核部のもつ基本機能に対してそれら必要とされる拡張
機能の1乃至複数が結合された高度な記憶管理環境を得
ることができるようになり、また、同オブジェクト指向
データベース管理システムに対して必要最小限の規模の
記憶管理機能しか要求しないアプリケーション(ユー
ザ)にとっては、その要求(すなわちこの場合は、何の
拡張機能も要求しない要求=通常のデータ操作要求)に
応じて、中核部のもつ基本機能のみからなるコンパクト
な記憶管理環境を得ることができるようになる。因み
に、同一の計算機資源を想定した場合、一般に、前者の
高度な記憶管理環境は、記憶効率の面で多少不利であっ
ても実行効率をより優先するアプリケーション(ユー
ザ)に向き、後者のコンパクトな記憶管理環境は、記憶
効率をより優先するアプリケーション(ユーザ)に向
く、ということができる。一方、計算機資源が異なる場
合には、それら個々の計算機資源に見合うかたちで、過
不足のない記憶管理環境を設定することも可能である。
The core part is a part that provides the minimum necessary functions such as the above-mentioned persistence, management of object identifiers, file management on the secondary storage device, concurrency control, failure recovery, etc. The part object is a part that provides a function that is not in the above core part such as index management, inquiry function, clustering, security, etc., that is, an extended function, respectively, and that the part object is controlled by the control means. Any one or a plurality of the extended functions possessed is combined with the above-mentioned basic function originally possessed by the core part or the combination thereof is released, thereby providing, for example, a high-level storage management function to the object-oriented database management system. For the requesting application (user),
It becomes possible to obtain a high-level storage management environment in which one or more of the required extended functions are combined with the basic functions of the core, and it is necessary for the object-oriented database management system. For applications (users) that require only a minimum scale of storage management function, the basic part of the core part responds to the request (that is, request that does not require any extended function in this case = normal data operation request). It becomes possible to obtain a compact storage management environment consisting only of functions. Incidentally, assuming the same computer resource, generally, the former high-level storage management environment is suitable for applications (users) who prioritize execution efficiency even if it is somewhat disadvantageous in terms of storage efficiency. It can be said that the storage management environment is suitable for applications (users) that prioritize storage efficiency. On the other hand, if the computer resources are different, it is also possible to set a storage management environment that is sufficient to match the individual computer resources.

【0012】何れにしろ、上記構成を有するオブジェク
ト指向データベース管理システムによれば、各種アプリ
ケーション(ユーザの要求)の規模に見合う柔軟なシス
テム構築が可能になる。
In any case, according to the object-oriented database management system having the above configuration, it is possible to construct a flexible system that matches the scale of various applications (user requests).

【0013】なお、こうしたオブジェクト指向データベ
ース管理システムとして、( d)二次記憶装置に格納され
ている永続オブジェクトが前記部品オブジェクトの何れ
を通じて記憶管理されているかを示す部品管理テーブル
を同二次記憶装置内に生成する手段を更に具えるように
すれば、いわゆるサーバ・クライアントモデルにあっ
て、上記異なる記憶管理環境にある複数のクライアント
が、サーバによって管理される同一のデータベース資源
にアクセスを行う場合でも、こうした部品管理テーブル
を各クライアントが参照しつつ、その必要とされるデー
タアクセスを行うようにすることで、異なる部品オブジ
ェクトの異なる記憶管理機能に基づく非互換性や、それ
に起因するデータ破壊、混乱等を未然に防ぐことができ
るようになる。
As such an object-oriented database management system, (d) a component management table indicating through which of the component objects the persistent object stored in the secondary storage device is stored and managed is provided in the secondary storage device. By further providing a means for generating the same in the so-called server / client model, even when a plurality of clients in different storage management environments access the same database resource managed by the server. By allowing each client to access the required data while referencing such a component management table, incompatibilities due to different storage management functions of different component objects, data destruction and confusion caused by it It becomes possible to prevent such problems.

【0014】[0014]

【実施例】図1に、この発明にかかるオブジェクト指向
データベース管理システムの一実施例を示す。
1 shows an embodiment of an object-oriented database management system according to the present invention.

【0015】この図1に示す実施例のシステムにおい
て、1は先の図12と同様、磁気ディスク装置等の二次
記憶装置上に構築されているデータベース、3はこのデ
ータベース1に対するアプリケーション要求(オブジェ
クトの生成/削除等に関するオブジェクト記憶管理要
求)を統括的に管理してその要求される記憶処理を実行
すべく主記憶装置上に構成されるオブジェクト指向デー
タベース管理システムであり、このデータベース管理シ
ステム3は更に、同図1に示される態様で関連付けられ
る入出力管理部31、オブジェクト記憶管理部中核部
(以下単に中核部という)32、部品オブジェクト33
A、33B、…、及び結合制御部34を有して構成され
ている。
In the system of the embodiment shown in FIG. 1, 1 is a database constructed on a secondary storage device such as a magnetic disk device as in FIG. 12, and 3 is an application request (object) to the database 1. Object storage management request relating to the creation / deletion of objects), and an object-oriented database management system configured on the main memory to execute the required storage processing. Further, an input / output management unit 31, an object storage management unit core (hereinafter simply referred to as core) 32, and a part object 33 that are associated in the manner shown in FIG.
A, 33B, ..., And a combination control unit 34.

【0016】ここで、上記入出力管理部31は、上記ア
プリケーションを介して与えられる例えばオブジェクト
Objの生成要求等、ユーザの処理要求を解読してその
内容を結合制御部34に与えるとともに、結合制御部3
4を通じての該指定されたオブジェクトObjについて
の生成結果についてはこれを当該アプリケーションに対
して返すなどのインターフェース的な役割を果たす部分
である。
Here, the input / output management unit 31 decodes a user's processing request such as a request to generate an object Obj given via the application and gives the contents to the combination control unit 34, and also the combination control. Part 3
The result of the generation of the designated object Obj through 4 is a part that plays an interface role such as returning this to the application.

【0017】また、中核部32は、オブジェクト記憶管
理部としての記憶管理機能のうち基本となる機能につい
てのみそれを提供するよう構成された部分である。因み
にこの実施例では、該中核部32に対して、例えば (イ)オブジェクトの永続化 (ロ)オブジェクト識別子の管理 (ハ)二次記憶装置上のファイル管理 (ニ)並行処理制御 (ホ)障害からの回復 等々、オブジェクト記憶管理部として最小限の規模なが
ら、必要不可欠とされる機能が予め組み込まれているも
のとする。
The core unit 32 is a unit configured to provide only the basic function of the storage management function as the object storage management unit. Incidentally, in this embodiment, for example, (a) object persistence (b) object identifier management (c) file management on the secondary storage device (d) concurrency control (e) failure in the core 32 For example, it is assumed that essential functions such as recovery from an object storage management unit are built in in advance, even though the object storage management unit has a minimum scale.

【0018】また、上記部品オブジェクト33A、33
B、… は、上記中核部32のもつ基本機能を使って実
現された永続オブジェクトであって、これらはそれぞ
れ、同記憶管理について、上記基本機能を拡張するため
の機能を提供する部分である。因みにこの実施例では、
これら部品オブジェクト33A、33B、…に対して、
例えば (ヘ)インデックス管理 (ト)問い合わせ機能 (チ)クラスタリング (リ)セキュリティ 等々、必要不可欠とはいえないものの、オブジェクト記
憶管理部として備わっていることが望ましい、若しくは
より高度な記憶管理を実現する上で有ると便利といった
機能が組み込まれるものとする。
Further, the part objects 33A, 33
B, ... Are persistent objects realized by using the basic functions of the core part 32, and these are parts that provide functions for expanding the basic functions of the same memory management. By the way, in this embodiment,
For these part objects 33A, 33B, ...
For example, (f) index management (g) inquiry function (h) clustering (d) security, etc. are not essential, but it is desirable to have them as an object storage management unit, or to realize more advanced storage management. It is assumed that functions such as the above are convenient.

【0019】そして結合制御部34は、上記入出力管理
部31を通じて与えられるアプリケーション要求の内容
に基づいて、上記中核部32のもつ基本機能に対するこ
れら部品オブジェクト33A、33B、…のもつ拡張機
能の結合の有無、及び結合有りの場合の結合態様を主に
制御する部分であって、上記入出力管理部31から例え
ばオブジェクトObjの生成要求等についてその要求内
容が与えられることにより、例えば上記中核部32に基
本機能として定義されている記憶管理機能に基づき主記
憶装置上にその該当するオブジェクトObjを生成し、
且つこの生成したオブジェクトObjを永続オブジェク
トPObjとして永続化してこれを上記二次記憶装置上
にあるデータベース1内にストアする等の処理を実行す
る部分でもある。因みにこの実施例では、上記中核部3
2のもつ基本機能や、部品オブジェクト33A、33
B、…のもつ拡張機能等は、何れもライブラリィのかた
ちでそれら各該当する機能が提供されるものとする。
Then, the combination control unit 34 combines the extended functions of these component objects 33A, 33B, ... With the basic functions of the core unit 32 based on the contents of the application request given through the input / output management unit 31. Is a part mainly controlling the presence / absence of the object and the combination mode when there is a combination, and the request contents are given from the input / output management part 31 about the generation request of the object Obj, for example, the core part 32. Creates the corresponding object Obj on the main storage device based on the storage management function defined as the basic function in
Further, it is also a part for executing processing such as making the generated object Obj persistent as a persistent object PObj and storing it in the database 1 on the secondary storage device. Incidentally, in this embodiment, the core part 3 is
2 has the basic functions and part objects 33A, 33
It is assumed that the extended functions of B, ... Are provided in the form of a library for each corresponding function.

【0020】以下では、説明の便宜上、上記部品オブジ
ェクトの一例としてクラスタリング機能を実現する(機
能追加する)記憶管理オブジェクトをとり上げる。そし
て、このクラスタリング機能を実現するオブジェクトが
上記部品オブジェクト33Aとしてオブジェクト指向デ
ータベース管理システム3内に登録されているものとす
る。
For convenience of explanation, a storage management object that realizes a clustering function (adds a function) will be taken up as an example of the above-mentioned component object. Then, it is assumed that an object that realizes this clustering function is registered in the object-oriented database management system 3 as the component object 33A.

【0021】クラスタリングとは、データベース1内に
格納すべきデータに対するアクセス処理が高速に行える
ように、意味的に近い関係にあるデータを二次記憶装置
上で物理的に近接した位置に配置することである。ここ
では、データ、すなわち永続オブジェクトを配置する論
理的単位としてセグメントという概念を導入する。1つ
のセグメントは、複数のページから構成された可変長の
データを表す。ページは、二次記憶装置上の固定長のデ
ータを表すオブジェクトであって、このページが、ここ
での物理的なクラスタリングの単位となる。また、セグ
メントも、それら自らのセグメント内へのオブジェクト
の生成や削除を司るオブジェクトであって、それらセグ
メントへのオブジェクト割り付け要求があった場合に
は、各々自ら管理しているページに対してその該当する
オブジェクトを割り付けるよう機能する。このため、セ
グメントの実体としては、複数の必ずしも連続してはい
ないページから構成され、またそれを管理するものでは
あるものの、ユーザからは、それらセグメントがあたか
も物理的に連続した領域のように見え、意味的に関連し
たオブジェクト(データ)を同じセグメントに対して割
り付け依頼するようにすれば、それら複数のオブジェク
トが同一のページに割り付けられる確率も高くなる。こ
れら二次記憶装置上におけるセグメント、ページ、及び
オブジェクト(永続オブジェクト)の各関係を参考まで
に図2に示す。
Clustering is to arrange data having a semantically close relationship in physically close positions on the secondary storage device so that access processing to the data to be stored in the database 1 can be performed at high speed. Is. Here, the concept of segment is introduced as a logical unit for arranging data, that is, persistent objects. One segment represents variable-length data composed of a plurality of pages. A page is an object that represents fixed-length data on the secondary storage device, and this page is the unit of physical clustering here. In addition, segments are objects that control the creation and deletion of objects in their own segments, and if there is an object allocation request to these segments, the corresponding page is managed for each page. Function to allocate the object to be created. Therefore, although the segment itself is composed of a number of pages that are not necessarily continuous and manages them, the user sees the segments as if they were physically continuous areas. If the objects (data) that are semantically related to each other are requested to be allocated to the same segment, the probability that a plurality of objects will be allocated to the same page becomes high. For reference, the relationships among the segments, pages, and objects (persistent objects) on these secondary storage devices are shown in FIG.

【0022】すなわち図2において、1は前述したデー
タベースであり、そのうちの1つが同図2に示されるよ
うに、「セグメント1」、「セグメント2」、及び「セ
グメント3」の3つのセグメントを有して構成されてい
るとする。「セグメント1」は、物理的に必ずしも連続
しない「ページ1」、「ページ2」、及び「ページ3」
の3つのページ(物理ページ)から構成されてそれらペ
ージでのオブジェクトの生成や削除を管理するものと
し、「セグメント2」は、これも物理的に必ずしも連続
しない「ページ4」、「ページ5」、「ページ6」、及
び「ページ7」の4つのページ(物理ページ)から構成
されてそれらページでのオブジェクトの生成や削除を管
理するものとし、「セグメント3」も同様に、「ページ
8」及び「ページ9」の2つのページ(物理ページ)か
ら構成されてそれらページでのオブジェクトの生成や削
除を管理するものとする。図中、丸印にて示す「POb
j」は何れも、上記「セグメント1」、「セグメント
2」或いは「セグメント3」を通じてそれら各対応する
ページに割り付けられているオブジェクト(永続オブジ
ェクトすなわちデータ)を示している。上述したセグメ
ント、ページ、及びオブジェクトの二次記憶装置上にお
ける関係は、模式的にはこのような態様となる。なお、
同図2での図示は省略したが、各セグメントは、その内
部に、それぞれ管理するページの接続関係や各オブジェ
クトとの対応をテーブルやリストとして保持している。
That is, in FIG. 2, 1 is the above-mentioned database, and one of them has three segments of "segment 1", "segment 2", and "segment 3" as shown in FIG. Are configured. "Segment 1" is not necessarily physically continuous "Page 1", "Page 2", and "Page 3"
It is assumed that it is composed of three pages (physical pages) for managing the creation and deletion of objects on those pages, and that "segment 2" is not necessarily physically continuous "page 4" and "page 5". , Page 6 and page 7 (physical pages), and manages the creation and deletion of objects on those pages. Similarly, segment 3 also has page 8 And “page 9” are two pages (physical pages) and manage the generation and deletion of objects on these pages. In the figure, circles indicate "POb
Each j indicates an object (persistent object, that is, data) allocated to each corresponding page through the above "segment 1,""segment2," or "segment 3". The above-described relationship of the segment, page, and object on the secondary storage device is typically in such a mode. In addition,
Although illustration is omitted in FIG. 2, each segment holds a connection relation of pages to be managed and correspondence with each object as a table or a list therein.

【0023】そして、このようなデータベース1に対し
ていま、同図2の右上部に示すような「関連する3つの
オブジェクトの『セグメント1』を指定しての割り付け
依頼」がユーザを通じてあったとすると、この「セグメ
ント1」によるページ管理機能により、それらオブジェ
クトは何れも、同図に矢指する態様にて、該「セグメン
ト1」が管理するページの空いている領域、すなわちこ
の例では「ページ1」に割り付けられるようになる。こ
の場合、関連する3つのオブジェクトの全てが偶然、同
一のページに割り付けられはしたが、もしセグメントが
存在しない場合に、それらオブジェクトが、その時点で
空きのある例えば「ページ4」、「ページ9」、及び
「ページ6」に物理的に離間して割り付けられる可能性
が高いことを考慮すれば、このセグメントを導入するこ
とによって関連する複数のオブジェクトが同一のページ
に割り付けられる確率が高まるようになることも容易に
理解される。
Now, suppose that there is a request from the user for such a database 1 "allocation request by designating" segment 1 "of three related objects" as shown in the upper right part of FIG. By the page management function based on this "segment 1", all of these objects are empty areas of the page managed by the "segment 1", that is, "page 1" in this example, in the mode indicated by the arrow in FIG. Will be assigned to. In this case, all three related objects were accidentally allocated to the same page, but if the segment does not exist, those objects have empty spaces at that time, for example, “page 4”, “page 9”. , And "Page 6" are likely to be physically spaced and allocated, introducing this segment increases the probability that related objects will be allocated to the same page. It is also easy to understand.

【0024】こうしたデータベースシステムにあっては
通常、データ(オブジェクト)の転送がページ、若しく
はセグメント単位にて行われることから、こうして関連
する複数のデータが同一のページに割り付けられるよう
になれば、最少限のアクセスで効率よいデータ転送が実
現されるようになる。
In such a database system, since data (object) is usually transferred in page or segment units, if a plurality of related data can be allocated to the same page in this way, it is the minimum. Efficient data transfer can be realized with limited access.

【0025】さて、図1に示したこの実施例のシステム
では、部品オブジェクト33Aが、こうしたセグメント
の各々を表現する記憶管理オブジェクトA1、A2、A
3、…を有して、中核部32のもつ基本機能に上述のク
ラスタリング機能を機能追加する部品オブジェクトであ
り、以下、こうした前提のもとに、その具現態様、並び
に同実施例システムとしての動作の詳細を更に説明す
る。
In the system of this embodiment shown in FIG. 1, the part object 33A has storage management objects A1, A2, A representing each of these segments.
.., which is a component object that adds the above-mentioned clustering function to the basic function of the core part 32. Hereinafter, based on such a premise, its implementation mode and operation as the system of the embodiment Will be further described in detail.

【0026】オブジェクト指向データベース管理システ
ムにあっては、そのシステム内にオブジェクトを生成す
る場合、そのシステムで準備されたオブジェクト指向言
語を使用する。通常、オブジェクト指向言語では、クラ
スの機能としてオブジェクトを生成する関数が用意され
ている。例えば、C++(シー・プラス・プラス)とい
うオブジェクト指向言語では、クラス毎にオブジェクト
の生成子であるコンストラクタが用意され、newオペ
レータによってオブジェクトがフリーメモリから割り付
けられる。オブジェクトを永続オブジェクトとして生成
する方法としては、言語仕様を変更して新たな構文を導
入する方法や、永続オブジェクトの生成関数を設ける方
法などが挙げられる。
In the object-oriented database management system, when an object is created in the system, the object-oriented language prepared by the system is used. Usually, in an object-oriented language, a function for creating an object is prepared as a function of a class. For example, in an object-oriented language called C ++ (C ++), a constructor that is an object generator is prepared for each class, and an object is allocated from a free memory by a new operator. As a method of generating an object as a persistent object, there are a method of changing a language specification to introduce a new syntax, a method of providing a generating function of a persistent object, and the like.

【0027】ここでは、永続オブジェクトを特定のセグ
メントに生成する方法として、上記中核部32に用意さ
れているとする永続オブジェクトの生成関数にセグメン
トをパラメータとして渡す方法を一例として示す。な
お、セグメントはクラス階層を構成し、その最上位のク
ラスがデフォルトの、例えばセグメントに関係なく単に
端からページ割り付けを行ったりする程度の、データベ
ース管理システムとしての標準の記憶管理の振舞いをす
るものとする。このデフォルトの振舞いをするクラスの
インスタンスを、ここでは便宜上、デフォルトセグメン
トと呼ぶ。このデフォルトセグメントも、同中核部32
内に、デフォルトセグメント(正確にはデフォルトセグ
メントに対応する記憶管理オブジェクト)32aとして
予め組み込まれているものとする。
Here, as a method of generating a persistent object in a specific segment, a method of passing a segment as a parameter to a function for generating a persistent object prepared in the core 32 will be shown as an example. A segment constitutes a class hierarchy, and the top class has a default storage management behavior such as default page management, that is, page allocation from the end regardless of the segment. And An instance of a class that behaves with this default behavior is called a default segment here for convenience. This default segment is also the core 32
It is assumed that a default segment (correctly, a storage management object corresponding to the default segment) 32a is incorporated in advance.

【0028】また、上記結合制御部34内には、現在使
用中のセグメントをカレントセグメントとして記憶する
ための変数記憶領域34aが設けられる。カレントセグ
メントに設定されたセグメントとは、上記永続オブジェ
クト生成関数にパラメータとしてセグメントが渡されな
かった場合や、渡されたセグメントのアドレスがヌル
(NULL)であった場合に使用されるセグメントであ
る。もし、このカレントセグメントもヌル(NULL)
であった場合には、最終的に上記デフォルトセグメント
32aが使用される。
A variable storage area 34a for storing the currently used segment as the current segment is provided in the coupling control section 34. The segment set as the current segment is a segment used when the segment is not passed as a parameter to the persistent object generation function or when the passed segment address is null (NULL). If this current segment is also null (NULL)
If it is, the default segment 32a is finally used.

【0029】図3に、該実施例システムの動作例とし
て、永続オブジェクト生成関数によるこうしたオブジェ
クトの生成(割り付け)手順を示す。
FIG. 3 shows, as an operation example of the embodiment system, a procedure for generating (allocating) such an object by a persistent object generating function.

【0030】すなわちいま、対象となるデータベースの
生成や、そのデータベースに対する上記セグメントの生
成等、ここでのオブジェクト生成に必要とされる前処理
は既に終了されているとするときに、上記入出力管理部
31に対してオブジェクトの生成を要求するアプリケー
ションプログラムが入力され、その解読された内容が上
記結合制御部34に与えられたとすると、結合制御部3
4を通じて中核部32にあるこの永続オブジェクト生成
関数が呼び出され、該永続オブジェクト生成関数による
以下に列記する態様でのオブジェクトの割り付けが実行
される。
That is, assuming that the preprocessing required for object generation here, such as generation of a target database and generation of the segment for the database, has already been completed, the input / output management is performed. If an application program requesting generation of an object is input to the unit 31 and the decrypted content is given to the combination control unit 34, the combination control unit 3
This persistent object generation function in the core part 32 is called through 4 and the allocation of objects in the modes listed below is executed by the persistent object generation function.

【0031】( 1)永続オブジェクト生成関数は、パラメ
ータとして渡されたセグメントのアドレスを調べ(図3
ステップS31)、このアドレスがヌル(NULL)で
なければ、すなわち何れのセグメントを利用するかがア
プリケーションによって明示的に指定されている場合に
は、その指定されているセグメントに対してオブジェク
トの生成、割り付けを依頼する(図3ステップS3
2)。この処理が依頼されるセグメントとは、上記部品
オブジェクト33Aにある記憶管理オブジェクトA1、
A2、A3、…のうちの何れかであり、この依頼は、結
合制御部34を通じてその指定されたセグメントに対応
する記憶管理オブジェクトへ渡される。該依頼を受けた
記憶管理オブジェクトでは、その対応するセグメントを
通じて、先の図2に例示した態様で、データベース1内
の自ら管理するページに対する当該オブジェクトの割り
付けを実行し、その割り付けたオブジェクト(永続オブ
ジェクト)のアドレスを結合制御部34を介して永続オ
ブジェクト生成関数へ返す。これにより該永続オブジェ
クト生成関数は、あたかも自らが上記割り付けを実行し
たかの如く、この受け取ったアドレスを結合制御部34
を通じて入出力管理部31にリターンする(図3ステッ
プS36)。
(1) The persistent object creation function checks the address of the segment passed as a parameter (see FIG.
In step S31), if this address is not null (NULL), that is, if the application explicitly specifies which segment to use, generation of an object for the specified segment, Request allocation (step S3 in FIG. 3)
2). The segment requested for this processing is the storage management object A1 in the component object 33A,
Any one of A2, A3, ..., This request is passed to the storage management object corresponding to the designated segment through the coupling control unit 34. In the storage management object that has received the request, through the corresponding segment, the object is allocated to the page managed by itself in the database 1 through the corresponding segment, and the allocated object (persistent object ) Is returned to the persistent object generation function via the binding control unit 34. As a result, the persistent object generation function assigns the received address to the binding control unit 34 as if it had performed the above allocation.
And returns to the input / output management unit 31 (step S36 in FIG. 3).

【0032】( 2)上記パラメータとして渡されたセグメ
ントのアドレスがヌル(NULL)であった場合、すな
わちセグメントの指定がなかった場合(図3ステップS
31)、永続オブジェクト生成関数は、結合制御部34
に問い合わを行って上記カレントセグメントが設定され
ているか否かを調べる(図3ステップS33)。そして
その結果、カレントセグメントが設定されていれば、す
なわちカレントセグメントがヌル(NULL)でなけれ
ば、該カレントセグメントに対して当該オブジェクトの
生成、割り付けを依頼する(図3ステップS34)。上
述のように、カレントセグメントが設定されている場
合、それが上記セグメントのうちの何れのセグメントで
あるかは結合制御部34内の変数記憶領域34aに登録
されているものであり、この依頼は、結合制御部34を
通じて、上記部品オブジェクト33Aにある記憶管理オ
ブジェクトA1、A2、A3、…のうちの該カレントセ
グメントとして登録されているセグメントに対応する記
憶管理オブジェクトに対して渡される。該依頼を受けた
記憶管理オブジェクトは、上記同様、その対応するセグ
メントを通じてデータベース1内の自ら管理するページ
に対する当該オブジェクトの割り付けを実行し、その割
り付けたオブジェクト(永続オブジェクト)のアドレス
を結合制御部34を介して永続オブジェクト生成関数へ
返す。これにより該永続オブジェクト生成関数は、これ
も上記同様、あたかも自らが上記割り付けを実行したか
の如く、この受け取ったアドレスを結合制御部34を通
じて入出力管理部31にリターンする(図3ステップS
36)。
(2) When the address of the segment passed as the above parameter is null (NULL), that is, when the segment is not designated (step S in FIG. 3).
31), the persistent object generation function is the binding control unit 34
Is checked to see if the current segment is set (step S33 in FIG. 3). As a result, if the current segment is set, that is, if the current segment is not null (NULL), the current segment is requested to generate and allocate the object (step S34 in FIG. 3). As described above, when the current segment is set, which of the above-mentioned segments is registered in the variable storage area 34a in the coupling control unit 34, and this request is , Is passed to the storage management object corresponding to the segment registered as the current segment among the storage management objects A1, A2, A3, ... In the component object 33A. The storage management object that has received the request, similarly to the above, executes the allocation of the object to the page managed by itself through the corresponding segment, and assigns the address of the allocated object (persistent object) to the binding control unit 34. To the persistent object creation function via. As a result, the persistent object generation function returns the received address to the input / output management unit 31 through the coupling control unit 34, as if the persistent object generation function itself performed the above-described allocation (step S in FIG. 3).
36).

【0033】( 3)セグメントの指定がなく(図3ステッ
プS31)、且つカレントセグメントの設定もない場合
(図3ステップS33)、永続オブジェクト生成関数
は、中核部32内に予め設けられたデフォルトセグメン
ト32aに対して当該オブジェクトの生成、割り付けを
依頼する(図3ステップS35)。このデフォルトセグ
メント32aは上述のように、データベース1に対して
例えば単に端からページ割り付けを行う程度の基本的な
記憶管理を実行する記憶管理オブジェクトであり、該割
り付けを実行した後は、その割り付けたオブジェクト
(永続オブジェクト)のアドレスを永続オブジェクト生
成関数に対して返すようになる。これにより該永続オブ
ジェクト生成関数は、これまで同様、あたかも自らが上
記割り付けを実行したかの如く、この受け取ったアドレ
スを結合制御部34を通じて入出力管理部31にリター
ンする(図3ステップS36)。
(3) If the segment is not specified (step S31 in FIG. 3) and the current segment is not set (step S33 in FIG. 3), the persistent object generation function is the default segment provided in the core 32 in advance. 32a is requested to generate and allocate the object (step S35 in FIG. 3). As described above, the default segment 32a is a storage management object that executes basic storage management such as simply allocating pages from the end to the database 1, and after the allocation is executed, the allocation is performed. The address of the object (persistent object) will be returned to the persistent object creation function. As a result, the persistent object generation function returns the received address to the input / output management unit 31 through the binding control unit 34 as if it had executed the above allocation (step S36 in FIG. 3).

【0034】このように、セグメント管理を行う部品オ
ブジェクト33Aを具え、これに併せて中核部32には
上記デフォルトセグメント32aを持たせ、更にはカレ
ントセグメントの設定をも可能としたことで、 ( A)セグメントを明示的に指定したアプリケーションに
対しては、その指定されたセグメントを利用しての強力
なクラスタリング機能を提供する。 ( B)セグメントを特に指定せずともカレントセグメント
の設定さえ行えば、すなわちセグメントを使用しない既
存のアプリケーションであっても、それにカレントセグ
メントを設定する旨の記述さえあれば、同様にカレント
セグメントを利用しての強力なクラスタリング機能を提
供する。 ( C)これらセグメントの指定やカレントセグメントの設
定がないアプリケーションに対しては、デフォルトセグ
メントに基づく基本的な記憶管理機能のみを提供する。
すなわち、クラスタリングは積極的に行わないが、その
分、計算機資源としてのより多くの記憶領域を残す。と
いった、クラスタリング機能1つをとっても、非常に柔
軟で幅のある記憶管理が実現されるようになる。図4
に、これら( A)、( B)、及び( C)として示した各アプリ
ケーションプログラムの実例を参考までに示す。
As described above, the component object 33A for managing the segment is provided, and the core segment 32 is provided with the default segment 32a, and the current segment can be set. ) For applications that explicitly specify a segment, it provides a powerful clustering function using the specified segment. (B) If the current segment is set without specifying the segment, that is, even if it is an existing application that does not use the segment, if the description to set the current segment is used, the current segment is used in the same manner. To provide a powerful clustering function. (C) Only the basic storage management function based on the default segment is provided for applications that do not specify these segments or set the current segment.
That is, clustering is not actively performed, but more storage area as computer resources is left for that amount. Even if one clustering function such as the above is adopted, extremely flexible and wide-ranging storage management can be realized. Figure 4
For reference, an actual example of each application program shown as (A), (B), and (C) is shown.

【0035】すなわち、図4(A)は、上記( A)のセグ
メントを明示的に指定したアプリケーションについてそ
の一例を示したもので、各行はそれぞれ次の意味を持
つ。
That is, FIG. 4A shows an example of an application in which the above segment (A) is explicitly designated, and each line has the following meanings.

【0036】1行目:"example"という名前のデ
ータベースを生成する。なお、該実施例のシステムを使
用するためのこのアプリケーションプログラムインター
フェース(API)は、中核部32のものであるとす
る。
First line: A database named "example" is generated. It is assumed that this application program interface (API) for using the system of this embodiment belongs to the core part 32.

【0037】2行目及び3行目:それぞれセグメントs
eg1及びseg2を生成する。なおこの際、これらセ
グメントは永続オブジェクトであるため、これらセグメ
ントのデータは、中核部32の機能によってデータベー
ス1内に格納される。また、このAPIは部品オブジェ
クト33Aのものであるとする。
Second line and third line: Segment s respectively
Generate eg1 and seg2. At this time, since these segments are persistent objects, the data of these segments are stored in the database 1 by the function of the core 32. Further, this API is assumed to belong to the part object 33A.

【0038】4行目及び5行目:それぞれセグメントs
eg2を明示的に指定して、オブジェクトObj1及び
Obj2をセグメントに割り付ける。このAPIも部品
オブジェクト33Aのものである。因みに、この割り付
けのイメージを図示すると図5のようになる。この場合
には、同図5に示されるように、上記指定されたセグメ
ントseg2を通じた強力なクラスタリング機能が提供
されるようになる。なお同図5において、PObj1及
びPObj2は、上記オブジェクトObj1及びObj
2のデータベース1内での永続オブジェクトを示すもの
とする。
Lines 4 and 5: Segment s respectively
The objects Obj1 and Obj2 are assigned to the segments by explicitly specifying eg2. This API also belongs to the part object 33A. By the way, the image of this allocation is shown in FIG. In this case, as shown in FIG. 5, a powerful clustering function through the designated segment seg2 is provided. In FIG. 5, PObj1 and PObj2 are the objects Obj1 and Obj, respectively.
2 shows a persistent object in the database 1.

【0039】6行目:上記データベース"exampl
e"を閉じる。このAPIは中核部32のものである。
Line 6: the database "exampl"
Close e ". This API is in core 32.

【0040】また図4(B)は、上記( B)の、セグメン
トの明示的な指定はないものの、カレントセグメントを
設定する記述を含むアプリケーションについてその一例
を示したもので、各行はそれぞれ次の意味を持つ。
Further, FIG. 4B shows an example of the application including the description for setting the current segment, although the segment is not explicitly specified in the above (B), and each line is as follows. Have meaning.

【0041】1行目:"example"という名前のデ
ータベースを生成する。
First line: A database named "example" is generated.

【0042】2行目及び3行目:それぞれセグメントs
eg1及びseg2を生成する。
Second line and third line: Segment s respectively
Generate eg1 and seg2.

【0043】4行目:データベース"example"に
現在のセグメント、すなわちカレントセグメントを設定
する。これにより、カレントセグメントとしてデータベ
ース1内にセグメントseg1のアドレス(データベー
ス1内の位置情報)が格納されるとともに、結合制御部
34の前記変数記憶領域32aにこのセグメントseg
1が登録される。図6に、このアドレスの格納イメージ
を図示する。
4th line: The current segment, that is, the current segment is set in the database "example". As a result, the address of the segment seg1 (positional information in the database 1) is stored in the database 1 as the current segment, and the segment seg is stored in the variable storage area 32a of the coupling controller 34.
1 is registered. FIG. 6 illustrates a storage image of this address.

【0044】5行目及び6行目:オブジェクトObj3
及びObj4を生成する。ただしこの場合、セグメント
seg1がカレントセグメントとして設定されているた
め、このカレントセグメントseg1を通じてこれらオ
ブジェクトObj3及びObj4の割り付けが実施され
る。こうした割り付けのイメージを図7に示す。同図7
に示されるように、この場合も上記カレントセグメント
seg1を通じた強力なクラスタリング機能が提供され
るようになる。なお同図7において、PObj3及びP
Obj4は、上記オブジェクトObj3及びObj4の
データベース1内での永続オブジェクトを示すものとす
る。
Lines 5 and 6: Object Obj3
And Obj4 are generated. However, in this case, since the segment seg1 is set as the current segment, the objects Obj3 and Obj4 are allocated through this current segment seg1. An image of such allocation is shown in FIG. FIG. 7
In this case as well, a strong clustering function through the current segment seg1 is provided in this case as well. Note that in FIG. 7, PObj3 and Pbj3
Obj4 represents a persistent object in the database 1 of the objects Obj3 and Obj4.

【0045】7行目:上記データベース"exampl
e"を閉じる。
Line 7: the database "exampl"
e "is closed.

【0046】そして図4(C)は、上記( C)の、セグメ
ントの指定やカレントセグメントの設定がないアプリケ
ーションについてその一例を示したもので、各行はそれ
ぞれ次の意味を持つ。
FIG. 4C shows an example of the application in (C) where the segment is not specified and the current segment is not set, and each line has the following meanings.

【0047】1行目:"example"という名前のデ
ータベースを生成する。
First line: A database named "example" is generated.

【0048】2行目及び3行目:オブジェクトObj5
及びObj6を生成する。この場合には、前記デフォル
トセグメント32aを通じた単純なページ割り付けのみ
が実施される。
Second and third lines: Object Obj5
And Obj6 are generated. In this case, only simple page allocation through the default segment 32a is performed.

【0049】4行目:上記データベース"exampl
e"を閉じる。
Line 4: the database "exampl"
e "is closed.

【0050】なお、以上はオブジェクトの生成要求時に
おけるこの実施例システムの動作について述べたもので
あるが、アプリケーションを通じて、それら生成された
オブジェクトについての削除要求が入力された場合に
は、該実施例システムは更に、図8に示される手順を持
ってこれに対処する。因みにこれには、上記永続オブジ
ェクト生成関数と同様、中核部32に予め用意されてい
るとするオブジェクト削除関数が使用される。
The operation of the system of this embodiment when an object generation request is made has been described above. However, when a deletion request for those generated objects is input through an application, the operation of this embodiment is performed. The system further addresses this with the procedure shown in FIG. Incidentally, for this purpose, an object delete function which is prepared in advance in the core 32 is used, like the above-mentioned persistent object generating function.

【0051】すなわちいま、入出力管理部31に対して
オブジェクトの削除を要求するアプリケーションプログ
ラムが入力され、その解読された内容が上記結合制御部
34に与えられたとすると、結合制御部34を通じて中
核部32にあるこのオブジェクト削除関数が呼び出さ
れ、該オブジェクト削除関数による以下に列記する態様
でのオブジェクトの削除が実行される。
That is, if an application program requesting deletion of an object is input to the input / output management unit 31 and the decrypted content is given to the combination control unit 34, the core unit is processed through the combination control unit 34. This object delete function in 32 is called, and the object delete function executes the object delete in the modes listed below.

【0052】( 1)オブジェクト削除関数は、削除指定さ
れたオブジェクトが含まれるセグメントを得る(図8ス
テップS81)。すなわち具体的には、各セグメントが
その内部に保持しているページの接続関係や各オブジェ
クトとの対応テーブルに基づいて当該オブジェクトが含
まれるセグメントを特定する。
(1) The object deletion function obtains the segment including the object designated for deletion (step S81 in FIG. 8). That is, specifically, the segment in which the object is included is specified based on the connection relation of the page held in each segment and the correspondence table with each object.

【0053】( 2)その結果、該当するセグメントが存在
すれば、すなわちセグメントがヌル(NULL)でなけ
れば(図8ステップS82)、その該当するセグメント
に対して当該オブジェクトの削除処理を依頼する(図8
ステップS83)。この処理が依頼されるセグメントと
は、先の生成時と同様、部品オブジェクト33Aにある
記憶管理オブジェクトA1、A2、A3、…のうちの何
れかであり、この依頼は、結合制御部34を通じてその
指定されたセグメントに対応する記憶管理オブジェクト
へ渡される。該依頼を受けた記憶管理オブジェクトで
は、その対応するセグメントを通じて、データベース1
内の自ら管理するページにある当該オブジェクトを削除
する。
(2) As a result, if the corresponding segment exists, that is, if the segment is not null (step S82 in FIG. 8), the relevant segment is requested to delete the object (step S82). Figure 8
Step S83). The segment for which this processing is requested is any of the storage management objects A1, A2, A3, ... In the component object 33A, as in the case of the previous generation, and this request is sent via the combination control unit 34. It is passed to the storage management object corresponding to the specified segment. In the storage management object that received the request, through the corresponding segment, the database 1
Delete the object in the self-managed page in.

【0054】( 3)上記セグメントの特定を行った結果、
該当するセグメントが存在しなければ、すなわちセグメ
ントがヌル(NULL)であれば(図8ステップS8
2)、同じく中核部32内に用意された前記デフォルト
セグメント32aに対して当該オブジェクトの削除処理
を依頼する(図8ステップS84)。これにより該デフ
ォルトセグメント32aでは、その標準の記憶管理機能
に基づいて上記削除指定されているオブジェクトを検索
し、これを削除する。
(3) As a result of specifying the above segment,
If there is no corresponding segment, that is, if the segment is null (FIG. 8, step S8).
2) Similarly, the default segment 32a prepared in the core 32 is requested to delete the object (step S84 in FIG. 8). As a result, the default segment 32a retrieves the object designated for deletion based on the standard storage management function, and deletes it.

【0055】以上、部品オブジェクトの一例としてクラ
スタリング機能を実現する記憶管理オブジェクトをとり
上げ、このクラスタリング機能を実現するオブジェクト
が部品オブジェクト33Aとしてオブジェクト指向デー
タベース管理システム3内に搭載されている場合につい
て、その構成、並びに動作を詳述したが、この部品オブ
ジェクトとして実現するに望ましい機能として、他にも
例えば、インデックス管理機能や問い合わせ機能、或い
はセキュリティ機能などがあることは前述した通りであ
り、更なる部品オブジェクト33B、… として、これ
ら機能に関する記憶管理オブジェクトも、上記オブジェ
クト指向データベース管理システム3内に適宜搭載する
ことができる。そしてこの実施例のシステムによれば、
これらの記憶管理機能を有するオブジェクトが部品オブ
ジェクトとして中核部32から分離され、アプリケーシ
ョンによってその都度要求される機能のみが、結合制御
部34を通じて中核部32のもつ基本機能に結合される
ようになることから、オブジェクト指向データベース管
理システムとしての規模も、それらアプリケーションの
規模に応じて非常に柔軟に決定されるようになる。
As described above, the storage management object that realizes the clustering function is taken as an example of the part object, and the object that realizes this clustering function is installed as the part object 33A in the object-oriented database management system 3 has its configuration. , And the operation have been described in detail, but as described above, other desirable functions to be realized as this part object are, for example, an index management function, an inquiry function, or a security function. 33B, ..., Storage management objects related to these functions can also be appropriately installed in the object-oriented database management system 3. And according to the system of this embodiment,
Objects having these storage management functions are separated from the core part 32 as part objects, and only the functions required by the application each time are combined with the basic functions of the core part 32 through the combination controller 34. Therefore, the scale of the object-oriented database management system can be determined very flexibly according to the scale of those applications.

【0056】ところで、該実施例のシステムによれば、
オブジェクト指向データベース管理システムとしてのこ
のような柔軟なシステム構築は確かに可能とはなるが、
特にサーバ・クライアントモデルとして構築されたデー
タベースシステムにあって、サーバによって一元管理さ
れる同一のデータベース資源に複数のクライアントがア
クセスを行うような場合には、クライアント毎の各異な
る部品オブジェクトを通じて記憶管理態様の異なる様々
な種類のデータベースが生成され、結果的に、それらデ
ータの互換性が損なわれる懸念もある。
By the way, according to the system of the embodiment,
Although it is certainly possible to construct such a flexible system as an object-oriented database management system,
In particular, in a database system constructed as a server / client model, when a plurality of clients access the same database resource that is centrally managed by the server, a storage management mode is performed through different component objects for each client. There is a concern that various types of databases of different types will be generated, and as a result, the compatibility of the data will be lost.

【0057】そこで図9に、この発明にかかるオブジェ
クト指向データベース管理システムの更に他の実施例と
して、このような互換性についての問題をも良好に解消
することのできるシステムの一例を示す。なおこの図9
において、先の図1と同一の要素については同一の符号
を付して示しており、これら要素についての重複する説
明は割愛する。
Therefore, FIG. 9 shows another example of the object-oriented database management system according to the present invention, which is an example of a system which can satisfactorily solve such a compatibility problem. This figure 9
In FIG. 1, the same elements as those in FIG. 1 described above are denoted by the same reference numerals, and duplicate description of these elements will be omitted.

【0058】さて、この図9に示すシステムにおいて、
新たに備えられた部品オブジェクト管理部35は、二次
記憶装置のデータベース1に生成されたデータ(永続オ
ブジェクト)が前記部品オブジェクト33A、33B、
…の何れを通じて記憶管理されているかを示す部品管理
テーブル101を同二次記憶装置内に生成するととも
に、その内容を管理する部分である。
Now, in the system shown in FIG. 9,
In the newly provided part object management unit 35, the data (persistent object) generated in the database 1 of the secondary storage device is stored in the part objects 33A, 33B,
This is a part for generating the component management table 101 indicating which of the ... Is managed and stored in the secondary storage device, and managing the contents.

【0059】ここで、上記部品管理テーブル101は、
例えば図10に示されるような配列によって構成されて
おり、各要素のインデックスは、各々特定の部品オブジ
ェクトに割り当てられ、配列の各要素として、オブジェ
クト(永続オブジェクト)をデータベース1内で一意に
指し示すことのできる識別子(オブジェクト識別子:O
ID)などが格納されている。またこの部品管理テーブ
ル101には、便宜上図示は省略するが、この識別子O
IDと当該オブジェクトの二次記憶装置上での物理的な
位置情報(データベース1を実現する二次記憶装置上の
ファイル内のアドレスやデータサイズ)との対応を表す
いわゆるオブジェクトテーブルなど、中核部32にとっ
て必須のオブジェクトも含まれるものとする。もっと
も、これら中核部32の実現に必要とされる記憶管理オ
ブジェクトは、全てのデータベース管理システム(クラ
イアントシステム)が共通に保有するものであり、これ
らの記憶管理オブジェクトによって記憶管理されるデー
タに関しては、その互換性も良好に保たれる。すなわ
ち、上記部品オブジェクト33A、33B、…によって
記憶管理されるデータのみが互換性の問題を引き起こ
す。因みに、同図10に示した例の場合、部品オブジェ
クト33A(これは前述のように、中核部32のもつ基
本機能にクラスタリング機能を拡張付加する部品オブジ
ェクトであるとする)を使用してデータベース1をアク
セスしているクライアントC1からは、そのデータベー
ス1内部の部品オブジェクトAのデータを利用すること
ができるが、部品オブジェクト33B(これは例えば、
中核部32のもつ基本機能にセキュリティ機能を拡張付
加する部品オブジェクトであるとする)を使用して同デ
ータベース1をアクセスしているクライアントC2から
は、そのデータベース1内部の部品オブジェクトAのデ
ータを利用することはできないことを示している。
Here, the parts management table 101 is
For example, it is configured by an array as shown in FIG. 10, the index of each element is assigned to a specific component object, and an object (persistent object) is uniquely pointed in the database 1 as each element of the array. Possible identifier (object identifier: O
ID) and the like are stored. Although not shown in the figure for convenience in the parts management table 101, the identifier O
A core part 32 such as a so-called object table that represents the correspondence between the ID and the physical position information of the object on the secondary storage device (address or data size in the file on the secondary storage device that realizes the database 1). It also includes essential objects for However, the storage management objects required to realize these core parts 32 are commonly held by all database management systems (client systems), and regarding the data stored and managed by these storage management objects, Its compatibility is also kept good. That is, only the data stored and managed by the component objects 33A, 33B, ... Cause the compatibility problem. Incidentally, in the case of the example shown in FIG. 10, the component object 33A (which is assumed to be a component object for extending the clustering function to the basic function of the core part 32 as described above) is used for the database 1 The data of the part object A in the database 1 can be used from the client C1 accessing the part object 33B (this is, for example,
The data of the part object A in the database 1 is used from the client C2 accessing the same database 1 by using the basic object of the core part 32 as a part object for expanding the security function. It shows that you cannot do it.

【0060】そこで上記部品オブジェクト管理部35
は、例えば先の図3、及び図5〜図7に例示したような
セグメントを利用してのオブジェクトの生成に伴って、
この図10に例示するような部品管理テーブル101を
二次記憶装置内に生成し、以後このような状況下にあっ
て、その非互換性に基づくデータの破壊等を回避するた
めに、例えば図11に示すような手順にて、これを管理
する。
Therefore, the component object management unit 35 is provided.
Is generated along with the generation of an object using the segments illustrated in FIGS. 3 and 5 to 7, for example.
A component management table 101 as illustrated in FIG. 10 is generated in the secondary storage device, and in order to avoid data destruction or the like due to the incompatibility in such a situation thereafter, for example, This is managed by the procedure shown in FIG.

【0061】すなわちいま、入出力管理部31に対して
データベース1へのアクセスを要求するアプリケーショ
ン、例えば前述したセグメントを利用してのオブジェク
トの生成を要求するアプリケーションが入力され、その
解読された内容が結合制御部34を介してこの部品オブ
ジェクト管理部35に与えられたとすると、該部品オブ
ジェクト管理部35では、以下に列記する態様で、該処
理要求に対処する。
That is, now, an application requesting access to the database 1 to the input / output management unit 31, for example, an application requesting generation of an object using the above-mentioned segment is input, and the decrypted contents are If it is given to the component object management unit 35 via the combination control unit 34, the component object management unit 35 handles the processing request in the modes listed below.

【0062】( 1)指定されたデータベース1がオープン
済みか否かを先ずチェックし(図11ステップS11
1)、これが未だオープンされていない場合には、その
旨を入出力管理部31を通じてアプリケーションに通知
して処理を終えるなどの、適宜のエラー処理を行う(図
11ステップS112)。
(1) First, it is checked whether the specified database 1 has been opened (step S11 in FIG. 11).
1) If it has not been opened yet, appropriate error processing is performed such as notifying the application to that effect through the input / output management unit 31 and ending the processing (step S112 in FIG. 11).

【0063】( 2)同データベース1がオープンされてい
れば、上記部品管理テーブル101を読み込み(図11
ステップS113)、そのデータベースがセグメントを
利用して記憶管理されている否か、すなわち前記部品オ
ブジェクト33A(部品オブジェクトA)を通じて記憶
管理されているものか否かをチェックする(図11ステ
ップS114)。ここでの例では、図10に例示する部
品管理テーブル101に対してセグメントを使用して
の、すなわち部品オブジェクトAを使用してのオブジェ
クト生成が要求されているため、利用可能なデータであ
る旨の判断がなされるが、同データベースに対して、上
述したような例えばセキュリティ機能を追加する部品で
あるとする部品オブジェクト33B(部品オブジェクト
B)を使用してのアクセスが要求されているとする場合
には、入出力管理部31を通じて警告メッセージをアプ
リケーションに返して処理を終えるなどの、適宜の警告
処理を実行する(図11ステップS115)。少なくと
もこれによって、該オープンされているデータベース1
内のデータが、記憶管理仕様の異なる部品オブジェクト
を使用しての不正なアクセスによって破壊されるような
事態は避けられるようになる。
(2) If the database 1 is open, the parts management table 101 is read (see FIG. 11).
In step S113), it is checked whether or not the database is stored and managed by using the segment, that is, whether or not the database is stored and managed through the part object 33A (part object A) (step S114 in FIG. 11). In this example, since it is requested that the component management table 101 illustrated in FIG. 10 uses the segment, that is, the component object A, it is available data. However, when it is determined that access to the database using the component object 33B (component object B), which is a component to which a security function is added as described above, is requested. For example, an appropriate warning process such as returning a warning message to the application through the input / output management unit 31 and ending the process is executed (step S115 in FIG. 11). At least by this, the open database 1
It is possible to avoid a situation where the data in the inside is destroyed by an unauthorized access using a part object having a different storage management specification.

【0064】( 3)上記利用可能なデータである旨、判断
した場合には、次いで、その部品オブジェクトAのデー
タ101a(図10参照)として、セグメントテーブル
が存在しているか否かをチェックし(図11ステップS
116)、それが存在していない場合には、該セグメン
トテーブルを当該データベース内に新たに生成する(図
11ステップS117)。ここで、セグメントテーブル
とは次のようなものである。すなわち、データベースに
セグメントが含まれる場合、該セグメントは複数含まれ
ている可能性が高い。データベースの利用者が複数のセ
グメントから使用したいセグメントを選択するために
は、全てのセグメントに対してアクセス可能でなければ
ならない。これには、全てのセグメントの識別子OID
を含むテーブルをオブジェクトとして実現し、そのテー
ブルの識別子OIDを上記部品管理テーブル101に登
録しておけばよい。ここでいうセグメントテーブルと
は、このオブジェクトとして実現される全てのセグメン
トの識別子OIDを含むテーブルをいうものとする。
(3) If it is determined that the data is available, then it is checked whether or not a segment table exists as the data 101a (see FIG. 10) of the part object A (( FIG. 11 Step S
116), if it does not exist, the segment table is newly generated in the database (step S117 in FIG. 11). Here, the segment table is as follows. That is, when the database includes a segment, there is a high possibility that a plurality of the segment is included. In order for the database user to select a desired segment from multiple segments, all segments must be accessible. This includes identifiers OIDs of all segments
It is only necessary to realize a table including the above as an object and register the identifier OID of the table in the component management table 101. The segment table mentioned here is a table including the identifiers OIDs of all the segments realized as this object.

【0065】( 4)こうしてセグメントテーブルの存在を
確認した(図11ステップS116)、若しくはセグメ
ントテーブルを新たに生成した(図11ステップS11
7)部品オブジェクト管理部35は最後に、このセグメ
ントテーブルを読み込み(図11ステップS118)、
前記結合制御部34を通じての先の図3、図5〜図7に
例示したような態様でのオブジェクトの生成、割り付け
が終了されることに基づいて、その生成、割り付け結果
が反映されるよう、該セグメントテーブルを再構築す
る。
(4) In this way, the existence of the segment table is confirmed (step S116 in FIG. 11) or a segment table is newly generated (step S11 in FIG. 11).
7) Finally, the component object management unit 35 reads this segment table (step S118 in FIG. 11),
Based on the fact that the generation and allocation of the object in the mode as illustrated in the above-mentioned FIG. 3, FIG. 5 to FIG. 7 through the combination control unit 34 is completed, the generation and allocation result is reflected, Rebuild the segment table.

【0066】このように、図9に示した実施例のシステ
ムによれば、サーバ・クライアントモデルにあって、上
記異なる記憶管理環境にある複数のクライアントが、サ
ーバによって一元管理される同一のデータベース資源に
アクセスを行う場合でも、該部品オブジェクト管理部3
5を通じて上記部品管理テーブル101を参照しつつ、
その必要とされるデータアクセス、若しくは警告処理が
行われることから、異なる部品オブジェクトの異なる記
憶管理機能に基づくデータの非互換性や、それに起因す
るデータ破壊、混乱等を未然に防ぐことができるように
もなる。
As described above, according to the system of the embodiment shown in FIG. 9, in the server / client model, a plurality of clients in the different storage management environments are uniformly managed by the server in the same database resource. Even when accessing the component object management unit 3
While referring to the parts management table 101 through 5,
Since the required data access or warning processing is performed, it is possible to prevent incompatibility of data based on different storage management functions of different component objects, data destruction, confusion, etc. It also becomes.

【0067】なお、同実施例のシステムでは、上記部品
管理テーブル101の参照の結果、アクセスしようとし
ているデータが利用できない旨判断される場合には警告
処理を行うものとしたが、この生成された部品管理テー
ブル101の使い方は任意であり、他に例えば、ダイナ
ミック・リンキング・ライブラリィ(DLL)技法を用
い、該利用できない旨の判断に基づいて、そのアプリケ
ーションに当該データを利用するための部品オブジェク
トを動的にリンクするなどの手法を採るようにしてもよ
い。
In the system of the embodiment, if it is determined as a result of referring to the component management table 101 that the data to be accessed cannot be used, warning processing is performed. The component management table 101 may be used in any manner. For example, a dynamic linking library (DLL) technique may be used, and a component object for using the data in the application based on the determination that the data cannot be used. May be dynamically linked.

【0068】[0068]

【発明の効果】以上説明したように、この発明によれ
ば、オブジェクト指向データベース管理システムとして
の記憶管理機能を、基本的ないくつかの機能と、それを
拡張するいくつかの機能とに適宜分配して、それら機能
をそれぞれ中核部と1乃至複数の部品オブジェクトにも
たせ、これら中核部のもつ基本機能と部品オブジェクト
のもつ拡張機能との結合の有無、或いは結合態様を、ア
プリケーション(ユーザ)の要求に応じて随時制御する
ようにしたことから、それらアプリケーション(ユー
ザ)の要求する規模に応じた非常に柔軟なシステム構築
が可能になる。
As described above, according to the present invention, the storage management function as an object-oriented database management system is appropriately distributed to some basic functions and some functions for extending the basic functions. Then, the functions are provided to the core part and one or a plurality of component objects respectively, and the application (user) requests whether or not the basic function of these core parts and the extended function of the component object are combined or not. Since the control is performed according to the requirements, it is possible to construct a very flexible system according to the scale required by those applications (users).

【0069】また、この発明の上記構成によれば、将
来、より高度な記憶管理機能が望まれる場合であって
も、上記部品オブジェクトとして、その都度必要とされ
る機能を追加していくこともでき、そのような要求にも
容易に対処することができるようになる。
Further, according to the above configuration of the present invention, even in the case where a more advanced storage management function is desired in the future, it is possible to add a function required each time as the component object. Therefore, it becomes possible to easily deal with such a demand.

【0070】またこの発明によれば、上記構成に加え、
データベースに格納されている永続オブジェクトが上記
部品オブジェクトの何れを通じて記憶管理されているか
を示す部品管理テーブルを同データベース内に生成する
ようにしたことから、該部品管理テーブルを参照しつつ
データベースへのアクセスを行うようにすることで、異
なる部品オブジェクトの異なる記憶管理機能に基づく非
互換性や、それに起因するデータ破壊、混乱等を未然に
防ぐことができるようにもなる。これは、サーバによっ
て一元管理される同一のデータベース資源に複数のクラ
イアントがアクセスを行うサーバ・クライアントモデル
として構築されたデータベースシステムにあって特に有
効である。
According to the present invention, in addition to the above configuration,
Since the component management table indicating which of the above-mentioned component objects the persistent object stored in the database is stored and managed is generated in the same database, access to the database while referring to the component management table By doing so, it is possible to prevent incompatibility based on different storage management functions of different component objects, data destruction, confusion, and the like due to the incompatibility. This is particularly effective in a database system constructed as a server-client model in which a plurality of clients access the same database resource that is centrally managed by the server.

【図面の簡単な説明】[Brief description of drawings]

【図1】この発明にかかるオブジェクト指向データベー
ス管理システムの一実施例についてそのシステム構成例
を示すブロック図。
FIG. 1 is a block diagram showing a system configuration example of an object-oriented database management system according to an embodiment of the present invention.

【図2】クラスタリングの説明として、セグメント、ペ
ージ、及びオブジェクトの二次記憶装置上での関係を模
式的に示す略図。
FIG. 2 is a schematic diagram schematically showing the relationship of segments, pages, and objects on a secondary storage device as an explanation of clustering.

【図3】図1に示す実施例システムによるオブジェクト
生成手順を示すフローチャート。
FIG. 3 is a flowchart showing an object generation procedure by the system of the embodiment shown in FIG.

【図4】同実施例システムに対してオブジェクトの生成
を要求するアプリケーションプログラムの記述例を示す
略図。
FIG. 4 is a schematic diagram showing a description example of an application program requesting generation of an object to the system of the embodiment.

【図5】セグメントを明示的に指定してのオブジェクト
生成を要求するアプリケーションが入力された際の同実
施例システムによるオブジェクト生成(割り付け)態様
を模式的に示すブロック図。
FIG. 5 is a block diagram schematically showing an object generation (allocation) mode by the system of the embodiment when an application requesting object generation by explicitly specifying a segment is input.

【図6】アプリケーションによってカレントセグメント
が設定された際の該カレントセグメントのデータベース
への格納態様を模式的に示すブロック図。
FIG. 6 is a block diagram schematically showing a storage mode of a current segment in a database when the current segment is set by an application.

【図7】セグメントの指定はないものの、同カレントセ
グメントを設定してのオブジェクト生成を要求するアプ
リケーションが入力された際の同実施例システムによる
オブジェクト生成(割り付け)態様を模式的に示すブロ
ック図。
FIG. 7 is a block diagram schematically showing an object generation (allocation) mode by the system of the embodiment when an application requesting object generation by setting the same current segment is input, although no segment is designated.

【図8】同実施例システムによるオブジェクト削除処理
についてその手順を示すフローチャート。
FIG. 8 is a flowchart showing the procedure of object deletion processing by the system of the embodiment.

【図9】この発明にかかるオブジェクト指向データベー
ス管理システムの他の実施例についてそのシステム構成
例を示すブロック図。
FIG. 9 is a block diagram showing a system configuration example of another embodiment of the object-oriented database management system according to the present invention.

【図10】図9に示される部品管理テーブルの具体例を
示す略図。
10 is a schematic diagram showing a specific example of the parts management table shown in FIG.

【図11】図9に示される実施例システムの動作例とし
て、主にその部品オブジェクト管理部による処理手順を
示すフローチャート。
FIG. 11 is a flowchart mainly showing a processing procedure by the component object management unit as an operation example of the embodiment system shown in FIG. 9;

【図12】従来のオブジェクト指向データベース管理シ
ステムのシステム構成例を示すブロック図。
FIG. 12 is a block diagram showing a system configuration example of a conventional object-oriented database management system.

【符号の説明】[Explanation of symbols]

1…データベース、3…オブジェクト指向データベース
管理システム、31…入出力管理部、32…中核部、3
3A、33B、… …部品オブジェクト、34…結合制
御部、35…部品オブジェクト管理部、101…部品管
理テーブル。
1 ... Database, 3 ... Object-oriented database management system, 31 ... Input / output management section, 32 ... Core section, 3
3A, 33B, ... Component objects, 34 ... Combined control unit, 35 ... Component object management unit, 101 ... Component management table.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】二次記憶装置内に生成される永続オブジェ
クトを操作の対象とするオブジェクト指向データベース
システムにあって該二次記憶装置内でのそれら永続オブ
ジェクトの生成、削除等にかかる記憶管理を実行するオ
ブジェクト指向データベース管理システムにおいて、 前記永続オブジェクトを記憶管理するための基本機能を
提供する中核部と、 同記憶管理について前記基本機能を拡張するための拡張
機能を提供する1乃至複数の部品オブジェクトと、 前記永続オブジェクトを操作するユーザの要求に応じて
前記中核部のもつ基本機能に対するこれら部品オブジェ
クトのもつ拡張機能の結合を制御する制御手段と、 を具えることを特徴とするオブジェクト指向データベー
ス管理システム。
1. An object-oriented database system in which a persistent object created in a secondary storage device is an operation target, and storage management for creation and deletion of the persistent object in the secondary storage device. In an object-oriented database management system for executing, a core part that provides a basic function for storing and managing the persistent object, and one or more component objects that provide an extension function for expanding the basic function for the same storage management And an object-oriented database management, which controls a combination of an extended function of these component objects with a basic function of the core part according to a request of a user who operates the persistent object. system.
【請求項2】二次記憶装置内に生成される永続オブジェ
クトを操作の対象とするオブジェクト指向データベース
システムにあって該二次記憶装置内でのそれら永続オブ
ジェクトの生成、削除等にかかる記憶管理を実行するオ
ブジェクト指向データベース管理システムにおいて、 前記永続オブジェクトを記憶管理するための基本機能を
提供する中核部と、 同記憶管理について前記基本機能を拡張するための拡張
機能を提供する1乃至複数の部品オブジェクトと、 前記永続オブジェクトを操作するユーザの要求に応じて
前記中核部のもつ基本機能に対するこれら部品オブジェ
クトのもつ拡張機能の結合を制御する制御手段と、 前記二次記憶装置に格納されている永続オブジェクトが
前記部品オブジェクトの何れを通じて記憶管理されてい
るかを示す部品管理テーブルを同二次記憶装置内に生成
する手段と、 を具えることを特徴とするオブジェクト指向データベー
ス管理システム。
2. An object-oriented database system in which a persistent object created in a secondary storage device is a target of operation, and storage management relating to creation and deletion of the persistent object in the secondary storage device. In an object-oriented database management system for executing, a core part that provides a basic function for storing and managing the persistent object, and one or more component objects that provide an extension function for expanding the basic function for the same storage management And a control means for controlling the combination of the extended functions of these component objects with the basic functions of the core part according to the request of the user who operates the persistent object, and the persistent object stored in the secondary storage device. Through which part object is stored and managed An object-oriented database management system comprising: means for generating the component management table shown in the secondary storage device.
JP5052653A 1993-03-12 1993-03-12 Object directing data base management system Pending JPH06266603A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5052653A JPH06266603A (en) 1993-03-12 1993-03-12 Object directing data base management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5052653A JPH06266603A (en) 1993-03-12 1993-03-12 Object directing data base management system

Publications (1)

Publication Number Publication Date
JPH06266603A true JPH06266603A (en) 1994-09-22

Family

ID=12920822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5052653A Pending JPH06266603A (en) 1993-03-12 1993-03-12 Object directing data base management system

Country Status (1)

Country Link
JP (1) JPH06266603A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007514993A (en) * 2003-11-13 2007-06-07 クゥアルコム・インコーポレイテッド System and method for dynamically simulating devices in a computing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007514993A (en) * 2003-11-13 2007-06-07 クゥアルコム・インコーポレイテッド System and method for dynamically simulating devices in a computing device
US7877247B2 (en) 2003-11-13 2011-01-25 Qualcomm Incorporated System and method for dynamically simulating devices at a computing device

Similar Documents

Publication Publication Date Title
US5561799A (en) Extensible file system which layers a new file system with an old file system to provide coherent file data
US5675748A (en) Method and apparatus for automatically configuring computer system hardware and software
US6665786B2 (en) Dynamic disk partition management
US5682532A (en) System and method having programmable containers with functionality for managing objects
Needham et al. The Cambridge CAP computer and its protection system
JP2986075B2 (en) System for combining a local object address and a global object identifier into a single object pointer
US6401101B1 (en) Method, server/computer and data structure for implementation of complex objects in an object-oriented database
US6240429B1 (en) Using attached properties to provide document services
US5915253A (en) Method and system for implementing objects in a storage system
US5701458A (en) System and method for managing arbitrary subsets of access control lists in a computer network
US5842226A (en) Virtual memory management for a microkernel system with multiple operating systems
US8667508B2 (en) Method for providing stand-in objects
US7325017B2 (en) Method of implementation of data storage quota
US8046392B2 (en) Storage system and information transfer method for the same
JPH0683649A (en) System and method for common agent computer control
US7958097B1 (en) Method and system for implementation of data storage quota
EP0628907B1 (en) Method of running on a computer system an application not designed to run on the computer system
JP2001101042A (en) System and method for managing data
US7171417B2 (en) Method and apparatus for improving performance and scalability of an object manager
JPH06243018A (en) Network distributed document file system
Andert Object frameworks in the Taligent OS
US8909875B1 (en) Methods and apparatus for storing a new version of an object on a content addressable storage system
US7509341B2 (en) Stateless-object software environment
US6292824B1 (en) Framework and method for facilitating client-server programming and interactions
JPH06266603A (en) Object directing data base management system