どうも、porukaです。
今回は、前回に引き続きデータベースについての説明をしていきます。前回は、「データベースとは何か」から始め、「DBMS」、「SQL」について、それから、「データベースの種類」についても解説しました。
それに続きまして、今回は、
1.データベース製品の種類
2.SQLの標準化
3.データベースサーバ
の三つについてお話をしていきます。
1.データベース製品の種類
まず、種類の説明に入る前に、RDBMSについてです。
RDBMSとは、データベースの管理システムの名前で、リレーショナルデータベースを管理するソフトウェアの総称として使われる言葉です。
現在、このようなRDBMSとして販売されているものもしくはオープンソースとして公開されているソフトウェアはたくさんあります。
Oracle
これは古くからある製品で、現在でも、多くの人が利用するデータベースです。
SQL Server
SQLServerとは、Microsoft社が開発したRDBMSです。Windows上でのみ動き、RDBMSの中では新しいものです。
PostgreSQL
オープンソースとして開発されているRDBMSであり、誰でも自由に利用できます。
MySQL
MySQLも、同様にオープンソースコミュニティから生まれたものであり、当初は機能が少なかったものの、今では多くの機能が追加され、他のRDBMSとはさほど差がありません。初心者にはオススメです。
DB2
このRDBMSは古くから存在する、IBM社が開発したものです。しかし、DB2販売開始当初は、Windows等では動かなかったため、Oracle有名になることはありませんでした。
2.SQLの標準化
これまで、様々なRDBMSについて紹介してきましたが、これからは、それらを動かすのに必要なSQL命令についてお話しします。RDBMSはたくさんの種類があり、それぞれで同じ操作ができるのにSQLによる命令では異なる方法であったことから、それらを同じに、つまり標準化をしようということになったのです。現在、多くのRDBMSが標準化へ向けて努力をしてきた結果、方言と言われる、違いというのは少なくなってきています。
3.データベースサーバ
これまで説明してきたRDBMSは、その多くがネットワーク上でたくさんのユーザーと連動していることがイメージしやすいかと思います。それらを可能とするのがサーバであり、次にその説明をします。
基本的な仕組みとしては、以下の通りになっています。↓
- クライアント(ユーザー)からサーバに対して、接続要求やSQL命令の実行要求をします。
- サーバはそれの要求に対して処理を行い、その結果をクライアントに戻します。
たったこれだけですが、学んでいくととても奥が深いです。
通常のRDBMSはネットワーク上のサーバマシンを一つ独占して稼働します。しかし、自前でそれを用意するのは大変です。そこで、勉強するときなどに行う方法としては、同じパソコン上に、クライアントとサーバの両方のソフトウェアを稼働させるものです。それを、クライアント/サーバモデルと言います。
まとめ
RDBMSには、様々な種類がある。
しかし、SQL命令は標準化が進み、共通の命令で処理が可能に!
データベースサーバによってクライアントとRDBMSを結びつけることができる。
次回は、クライアント/サーバモデルをWebシステムを例に詳しく解説します。