- PR -

オブジェクト指向データベースで,手続き(操作)はどう管理されるか

1
投稿者投稿内容
banboo
大ベテラン
会議室デビュー日: 2003/12/05
投稿数: 210
投稿日時: 2006-08-02 01:15
オブジェクト指向データベースについて質問がございます.

オブジェクト指向データベースは,「データ」と「手続き(操作)」がカプセル化
されて一体として扱われるという認識でおります.

データは,DBで値として管理されるとして,手続き(操作)はどういう形式で
表現しどのように管理されるのでしょうか?

どなたかご存知の方がいらっしゃいましたら御教授下さい.
忠犬
大ベテラン
会議室デビュー日: 2006/05/01
投稿数: 109
投稿日時: 2006-08-02 04:39
実装の仕方は、各製品によって違います。

処理部のソースコードをそのまま持っていて、インタプリタ方式で実行するものも
あれば、事前にコンパイルして保持するものもあります。

私の担当製品(RDBMS)では、コンパイル結果とソースコードの両方を保持しています。
管理方法は、基本的にストアドプロシジャと同じです。
banboo
大ベテラン
会議室デビュー日: 2003/12/05
投稿数: 210
投稿日時: 2006-08-02 11:50
アドバイスありがとうございます.

>管理方法は、基本的にストアドプロシジャと同じです。

私自身は,ストアドプロシジャ自体は記述した事がありませんので,
申し訳御座いませんが,理解した範囲で処理のイメージを書きます.
何か勘違いしている点がありましたらご指摘下さい.

【データ】
DBで値として管理.

【手続き(操作)】
処理部のソースコードを(インタプリタ方式または,コンパイル方式)
管理する.
*ソースコードをファイルとして管理するのか,DBのカラムにhoge.sql とか
いう値で管理されるのかが,私自身よくわかっておりません.

【実行時】
データ呼ばれた時に,データと紐づいている手続き(操作)が呼び出されて
実行される.
忠犬
大ベテラン
会議室デビュー日: 2006/05/01
投稿数: 109
投稿日時: 2006-08-06 10:10
引用:

【データ】
DBで値として管理.

【手続き(操作)】
処理部のソースコードを(インタプリタ方式または,コンパイル方式)
管理する.
*ソースコードをファイルとして管理するのか,DBのカラムにhoge.sql とか
いう値で管理されるのかが,私自身よくわかっておりません.

【実行時】
データ呼ばれた時に,データと紐づいている手続き(操作)が呼び出されて
実行される.



大まかに言うと、その通りです。

データの定義情報やメソッドの管理情報
→ディクショナリ(システムカタログ)で管理。

メソッドの本体
→専用の格納スペース(DBスペース)に格納して管理
 ソースコードそのものとコンパイル済みのコードを格納

インスタンス
→ユーザDB内に格納

実行時
→ご理解の通りです。

ただ、これらはあくまでも私の担当製品での実装方法ですので、他社製品はどのように実装しているかまでは不詳です。
banboo
大ベテラン
会議室デビュー日: 2003/12/05
投稿数: 210
投稿日時: 2006-08-06 17:38
忠犬様,アドバイスありがとう御座います.

ご丁寧に説明頂きましたおかげで不明点
が理解できました.
1

スキルアップ/キャリアアップ(JOB@IT)