2014/12/09

文系のための「RDBMS」(1)

情報管理において最も重要なことは情報を「体系的」に管理することである。
パソコン上で、ファイルが「ごちゃまぜ」な人をよく見かけるが、
そういった人は、欲しいファイルが見つからず苦労する。

もちろん、私にもそういった経験はあるので批判はできないのだが…。

さて、コンピュータ上で情報を管理する方法には様々な方法がある。
いわゆる「ファイル」を単位で管理する方法がよく知られているが、
データベース」と呼ばれるシステムを使うこともある。

データベースをもう少し分かりやすく訳すと「データの基地」となる。
つまり、情報を一元的に体系的に管理する仕組み、あるいは、
管理されているデータそのもののことを指す言葉である。

データベースに関わる人は、「仕組み」と「データ」を分けて考え、
前者を「データベース管理システム(DBMS:DataBase Management System)」とよび、
後者を単に「データベース」と呼ぶ。

ということで、ここでは、DBMSの方について整理する。

DBMSには、様々な種類があるが、最も普及されていると考えられる
リレーショナル・データベース(RDMS: Relational DBMS)について、
簡単に解説することにする。

いきなり、横文字連発で気が滅入りそうになるけれど、
まずは、エクセルなどのスプレッド・シートを考えてみることにする。
なお、エクセルはデータベースの代わりにはならないので、あくまで例として。

まずは、スプレッド・シートについての基本的な話から整理することにする。

スプレッドシートは、セルと呼ばれる矩形の入力ボックスが行列のように配されている。
ここで、横方向のことをカラムと呼び、縦方向のことをロウと呼び、
そのような、行列に入力されたデータの塊をブックと呼ぶ。

一方データベースでは、カラムに相当する部分を「フィールド」、
ロウに相当する部分を「レコード」、ブックに相当する部分を「テーブル」と呼ぶ。
そして、RDBMSにおいて「関連」はテーブル間の関係を定義する。

RDBMSにおいても基本は同じような形態であると考えることができるが、
かなり乱暴な言い方をすると、複数のテーブルが相互に関連を持つことでき、
そうした関連に様々な意味を持たせることができるシステムである。

なるほど、解ったような、解らないような話である。

ポイントとなるのは、「キー」と呼ばれる存在である。簡単に言うとID。
これを、各データの先頭に付して、「キー」を使って関連を構築する。
例えば、以下のような関連を定義することができる。














ここでは、大学情報が入ったテーブルと教員情報が入ったテーブルの二つがある。
大学情報のPKは、主キー(PK: Primary Key)と呼ばれレコードの固有識別子である。
一方、教員情報のFK外部キー(Foreign Key)であり、これらが両者を関係付けている。

つまりこの例では、風保下郎、九楠保下良、フーバー・ホゲホゲの三名の教員の所属は、
教員情報のFK=1 から 大学情報の PK =1 を辿ってみると、風津大学であることが解る。
このようにRDBMSでは、固有のIDを使ってテーブル間の関係を定義することができる。

RDBMSの仕組みを大雑把に理解すると、このような感じであるが、
実際に運用するには、残念ながら、この程度では使えない。
エクセルのように「入力しながら…」というわけにはいかない

その当たりのことについては、少しずつ、話をしていこうと思う。

0 件のコメント:

コメントを投稿