Web教材一覧データベース

データベースの種類

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

キーワード


階層型データモデル

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

階層型の例

網型データモデル

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

網型の例

関係モデル

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

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

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

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

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

XMLデータベース

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

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

NoSQLデータベース

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

多次元データベース

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


本シリーズの目次へ