Web教材一覧データベース

データベースの種類

データベースとは,データの持ち方であり,それを管理する仕組みです。それをDBMS(データベース管理システム)といいます。

キーワード

構造型データベース、階層型データベース、HDB、網型データベース、NDB、関係データベース、RDB、オブジェクト指向データベース、OODB、ハイパテキストデータベース、マルチメディアデータベース、XMLデータベース、XMLDB、NoSQL、多次元データベース、MDDB


 

構造型データベース(Structural Database)

データを構造化によりモデル化したもので、「階層型データベース」と「網型データベース」の総称です。

階層型データベース(Hierarchical Database、HDB)

最も初期に出現したデータベースで、木構造データベースともいいます。すべて親子関係になっています。階層の上位から下位に節点をたどることによって,データを取り出すことができる構造です。この考え方は、二分木としてデータの整列や検索などに用いられていますが、データベースとしては用いられていません。

階層型の例 

網型データベース(Network Database、NDB)

図のように親になるものが複数ある場合も取り扱うことができます。1980年頃までは汎用コンピュータで広く用いられていましたが、その後、RDBの性能が向上したことにより、現在では使われていません。

網型の例 

関係データベース(Relational Database、RDB)

RDB(リレーショナルDB)ともいいます。現在,一般的な事務処理分野ではほとんどがこのデータベースになっています。このシリーズ全体がRDBに関する説明ですので、詳細は省略します。
   RDBを作成したり,RDBを加工する言語にSQLがあります。

オブジェクト指向データベース(Object Orientated Database、OODB)

オブジェクト指向によるデータベースで,RDBよりも複雑な関係を取扱えます。現行のRDBもこの機能を取り込むようになってきました。

カプセル化
OODBではデータだけでなく、データをアクセスする手続き(メソッドといいます)も一体化(カプセル化)してオブジェクトとし、外部から見えない(隠蔽)ようにしています。
   RDBはデータだけの部品化でしたが、OODBでは処理も含んだ部品化を実現できます。
インヘリタンス(継承)
クラスとは,属性の構造やメソッドに共通な要素を持ったオブジェクトの集合(単一のオブジェクトのこともある)です。クラスを定義するときには,上位のスーパークラス(例えば自動車というクラス)で定義した属性やメソッドを下位のサブクラス(乗用車やトラックなどのクラス)で引き継ぐことができます。それをインヘリタンス(継承)といいます(図解)
   RDBで乗用車やトラックを含むテーブルを作成すると、座席数のような乗用車には必要だがトラックには不要な項目、最大荷重のようなトラックには必要だが乗用車には不要な項目のために、空白の多いテーブルになりますが、OODBではそれを防ぐことができます。
   さらに、二輪車も扱うようになったとき、RDBでは全面的にテーブルを改訂する必要がありますが、OODBでは二輪車に特有な項目だけをもつテーブルを付け加えればよいので、拡張性に優れています。
 

発展→オブジェクト指向DB

ハイパテキストデータベース

複数の文書をそれぞれリンクさせた形で持たせたデータベースです。データの中で意味のあるテキスト同士をリンクによって、複雑な関係を整理したデータベースです。

マルチメディアデータベース

静止画や動画、音楽などマルチメディアデータを管理するデータベースです。メディアのデータ構造を意識させることなく、統一させたユーザーインタフェースを提供するために、オブジェクト指向のアプローチを取ることが多い。

XMLデータベース(XML Database、XMLDB)

XMLは、汎用的なマークアップ言語で、人間にもコンピュータにも理解しやすいので、企業間でのオンラインデータ交換の標準として注目されています。XMLデータベースは、XML文書をタグによりデータの構造と意味を表わし階層構造データベースとしたものです。

XMLデータベースは、XMLの操作に専門特化したデータベースであり、SQLではなくXpath/XQueryによる操作を行います。
 また、XML型データも扱えるRDBも出現してきました。XMLが階層構造でテーブルを持たないため、テーブルとして扱うにはマッピングが必要になります。

NoSQLデータベース

NoSQLとは「Not Only SQL」の意味で、広義には非リレーショナルな構造を持つデータベースを扱うDBMSの総称ですが、特に近年重視されているビッグデータ-広域に分散している巨大なデータ資源-の取り扱いに特化したDBMSを指すのが一般的です。
 ビッグデータは多様な形式があり、それぞれに適したデータベースがあります。
参照:NoSQLデータベース

多次元データベース(Multi-Dimensional Database、MDDB)

通常、3次元以上の次元配列を対象とするデータベースです。データウェアハウスのような分析を主とした処理をOLAPといいますが、このような利用では、RDBよりも多次元データベース(MDDB)のほうが適しています(参照:「OLAPと多次元データベース」)