技術面の特徴
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/22 14:52 UTC 版)
「オブジェクトデータベース」の記事における「技術面の特徴」の解説
ODBMSでは、オブジェクト指向の考え方を純粋な形で採用しており、データはオブジェクトとしてデータベースに格納(永続化)される。オブジェクトはカプセル化されている。オブジェクトに対しては、その設計図であるクラスで定義されたメソッドを介してのみ、扱うこと (オブジェクトの状態を参照・変更することなど) ができる。オブジェクトはなんらかのタイプ(型)をもつ。おのおののタイプの間には継承関係がある。あるタイプを継承して、そのタイプの特性を引き継いだ別のタイプを定義することができる。継承元となるタイプをスーパータイプといい、継承先のタイプをサブタイプという。スーパータイプを継承してサブタイプが定義される。サブタイプは、単一のスーパータイプのみもつことができる場合と、複数のスーパータイプをもつことができる場合とがある(オブジェクト指向プログラミング言語により異なる)。 アプリケーションソフトウェアは、ナビゲーショナルな方法で、オブジェクトデータベースに格納されているオブジェクトへの参照を取得することができる(ナビゲーショナルデータベース)。オブジェクトは、他のオブジェクトへの参照をもつことができる。これを利用して、アプリケーションソフトウェアは、別のオブジェクトへの参照を取得するために、オブジェクト間の参照関係をたどって目的とするオブジェクトへの参照を取得することができる。 多くの ODBMSでは、オブジェクトデータベースに格納されているオブジェクトへの参照を取得するための、別の方法として、宣言的なデータ操作言語による方法も使うことができる。オブジェクト問い合わせ言語については、後述するODMGの標準(オブジェクト問い合わせ言語、OQL; Object Query Language)が策定されているが、実際にはODBMSごとに差異がある。またオブジェクト問い合わせ言語による方法とナビゲーショナルな方法の、2つの方法のインタフェースの統合のしかたについても、ODBMSごとに違いがある。 ODBMSの検索速度は、関係 (テーブル構造) で実装する RDBMS (関係データベース管理システム) と比較すると、速くなる可能性がある。これはODBMSでは、RDBMSとは異なり、結合 (join) のような処理を行うことはほとんど無く、またオブジェクトの参照をたどるという直接的な方法で目的とするオブジェクトへの参照を取得することができるからである(「結合」はポインタをたどる過程の高水準の抽象であると主張されることがある)。 一般的には、オブジェクトデータベースのスキーマと、オブジェクト指向プログラミング言語は、同じタイプ定義を使う。ただし、ODBMSごとに微妙な違いがある。 オブジェクトデータベースを有効に使うと、マルチメディアを扱うアプリケーションソフトウェアを、比較的容易に開発することができる。マルチメディアの音や映像などのコンテンツは、オブジェクトとして扱われる。そのため、コンテンツを符号化(エンコード)したり復号(デコード)したりすることなどのコンテンツの種類に特有な処理を、そのオブジェクトのメソッドに任せることができ、アプリケーションソフトウェア側で処理する必要は無い。 多くのODBMSでは、バージョニングのサポートを提供している。オブジェクトの状態の全ての変更履歴(バージョンの履歴)を確認することができる。オブジェクトの各バージョンもまた、オブジェクトとして扱うことが可能である。 いくつかのODBMSではまた、アクティブデータベースの基本的な機能である、トリガや制約のシステム的なサポートを提供している。
※この「技術面の特徴」の解説は、「オブジェクトデータベース」の解説の一部です。
「技術面の特徴」を含む「オブジェクトデータベース」の記事については、「オブジェクトデータベース」の概要を参照ください。
- 技術面の特徴のページへのリンク