ホーム » スタッフ » 斉藤徹 » 講義録 » データベース » データベースの用語など

2012年10月
« 9月   11月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

最近の投稿(電子情報)

アーカイブ

カテゴリー

データベースの用語など

データベースの2回目ということで、データベースの形式などの説明のあと、 データベースの数学的な表記方法などを示す。

データベースの基本

データベースを利用する際、プログラマにしてみれば、SQLというデータ問い合わせ言語を 用いれば、簡単にデータを扱える。 これにより、応用プログラマにしてみれば、データをプログラムから分離ができ、 実際の内部の構造を知ることなく独立性が得られる。 また、データの一貫性を保つことは、データベースを利用しないと大変であるが、 データベースでは(a)正当性確認,(b)同時実行制御,(c)障害回復などを行ってくれるので、 一貫性のあるデータ管理が容易となる。 一般的には、データベースのACID特性として(a)atomicity原子性,(c)consistency一貫性,(i)isolation独立性,(d)dulability耐久性といった特性が求められる。

データベースに対する視点として、エンドユーザからの要求を応用プログラマが処理する場合、 データベースの一部分だけであったり、複数のデータベースを大きな単独の表で扱えると 便利であったりする。こういう応用プログラマの視点を外部スキーマと呼ぶ。 しかし実際には、複数の表からなるデータベースでは更新なども容易な(正規化された) 表で あるほうが良い。このような視点は、概念スキーマと呼ばれる。 さらにデータベースの内部では、このデータを高速に処理するための インデックスが付加されたり、実際のファイル上に記録されるデータ形式がとられる。 これらは内部スキーマと呼ばれる。 この利用者の視点に応じたスキーマ構成を、3層スキーマ・アーキテクチャと呼ぶ。

これらのデータを扱う際、木構造で表現できるようなものや、さらにそれらが複雑に からみあったネットワーク構造などは、自由にデータを表現できる一方、それらの データを扱うシステムは複雑化してしまう。 そこで、IBMのコッド博士の提唱した、データを簡単な表構造の 組み合わせで表す関係データベースは、処理の簡潔さもあって広く普及している。

データベースの表現

具体的なデータを組み合わせたデータベースは数学的に以下のように表現する。 データの集合A={s,t,u},B={p,q}とした場合、 直積A×Bとは、A×B={(x,y)|x∈A,y∈B}で表される。 例をあげると、AとBの全ての組み合わせであり、 A×B={(s,q),(t,q),(u,q),(s,q),(t,q),(u,q)} となる。 関係とは、直積の部分集合 R(A,B)⊂A×B であり、すべての組み合わせのうち、 実際に存在するものといえる。