第4回 リレーショナルデータベース
このコラムを書くのに、いろいろな資料をひっくり返していたら、私が大学生のころ使ったソフト(スウィングver.2)の説明書が出てきました。
ま、いわゆるNECのPC98用のソフトでかれこれ十年くらい前の物。ハードディスクも10MBで、インターネットなんて誰も知らなかったころです。
その説明書、よくよく見てみたらリレーショナルデータベースシステムって書いてあって笑ってしまいました。そんなこと意識しないで、このソフトで、自宅の図書管理システムとバイト先の某家電チェーンの顧客管理システムを作ってたとは。そういうことで、この与太話を読まないでも、差し支えなくRDBMS(リレーショナルデータベースマネジメントシステム)はマスターできるということのようです。
ま、でも簡単な解説?をしましょ。(じゃないとこのコラムの連載が終わってしまう)Web-DBのデータベースというものは、どういうものかというのを、前回の定義から。
・データを格納する形式
・データを操作するインターフェース
・Webサーバーと連動機能
・データベースから情報を引き出して分析可能
でしたね。RDBMSははじめの二つに特徴があります。まず、「データを格納する形式」です。いくつかのテーブルをあるキーで関係付けをするという特徴があります。
こう書くと「なんのこっちゃ?」という感じなので、分かりやすく説明してみましょう。たとえばどっかの企業の社員。
この人に関する情報はどんな感じになっているかと言うと、
名前
住所
所属部所
でも、これだとこの人どこでなんの仕事してるのか分からないので、
名前
住所
所属部所
所属部所の仕事内容
会社の住所
なんて情報を加える必要があります。さらに行くと、会社自体の規模だの所属部所の実績などなど 加え出すときりがないわけです。しかもその部所には何人もいるわけですから、情報が爆発的に増えるわけです。でも、ちょっと考えると、まとめたり 共通で使える情報があるはずです。たとえば
・個人の情報
名前
住所
所属部所名
・部所の情報
部所名
所属部所の仕事
内容会社の住所
このときに、ある個人の情報を見て、そこの所属部所名を見て、部所の情報を拾うという手続きをとれば、人数分の部所情報を用意しないでも良いわけです。
こういうなんか探す手がかり(キー)を元に、他の情報の塊から内容を引っ張ってくることができることをリレーション構造といいます。
こういう構造を持ってるのがRDBMSの特徴のひとつです。この特徴を使うと、いろいろすごいことを知るための構造を作れます。
そのために、Web-DBのDBに必要な条件の
・データベースから情報を引き出して分析可能
を満たしていると言えます。どうしてリレーション構造があると
こういうことが出来いるのかはそのうちおいおいということで。もうひとつのRDBMSの特徴に「データを操作するインターフェース」があります。
このRDBMSのインターフェースは超有名です。「SQL」と呼ばれているものです。これは、構造型問い合わせ言語の英語訳の省略形で、Structured Query Languageの略です。まぁ、手っ取り早い話がさっき言ったリレーション構造になっている情報を手早く探して来たり、内容を書き換えたり、内容を追加したりする言語です。
言語というくらいですから、インターフェースとは言っても、えっらい地味です。
こっちがなにやってるのか悩めます。MACやWindowsなどのGUIに馴染んだ人々にはなんのこっちゃという代物です。
ただ、このままではちょっと問題があるんですね。RDBMSはSQLしか理解できないということです。Web-DBを作る上ではこのSQLをいかに
してWebサーバーからデータベースに引き渡すのかが問題になります。ここの部分は、各ベンダーごとやシステムごとの独自の技術なんで、
次回はここに焦点を絞りつつ、現行のRDBMSの製品を紹介して行きましょう。-----
EXTENDED BODY: