1. データベースとは何か
情報を大量に保存しコンピュータを使ってそれらに効率よくアクセスできるように加工したデータの集まりをデータベース(DB)という。DBを管理するコンピュータシステムをデータベースマネジメントシステム(DBMS)という。
- 大量の情報を保存しコンピュータから効率よくアクセスできるように加工したデータの集合体を「データベース」という。
- データベースを管理するコンピュータシステムのことを「データベース管理システム(DBMS)」という。
- DBMSを使うことで大量のデータを多人数でも安全かつ簡単に扱える。
- リレーショナルデータベースは「リレーショナルデータベース管理システム(RDBMS)」で管理する。
1.1 DBMSが必要な理由
テキストファイルや表計算ソフトでデータ管理をした場合、デメリットがある。
(1) | 多人数でデータを共有するのに向かない | |
ネットワークにあるコンピュータ上のファイルは共有できるものの、誰かが開いていると他の人間が編集できない。 | ||
(2) | 大量のデータを扱える形式になっていない | |
数十万件、数百万件といった大量のデータから瞬時に欲しいデータを取り出す形式になっていない。 | ||
(3) | 読み書きを自動化するのにプログラミング技術が必要 | |
データ構造を理解し一定以上のプログラミング技術が無いとデータの読み出しや書き換えを自動化できない。 | ||
(4) | 万が一の事故に対応できない | |
ファイル操作を誤って削除したりハードウェアが故障して読みだせなくなったりしてデータを失う危険がある。また部外者でも容易に読込・持出が可能。 |
DBMSはこれらに対応している。
1.2 DBMSの種類
現在最も広く普及しているのは「リレーショナルデータベース(RDB)」で、代表的なのは①Oracle Database、②SQL Server、③DB2、④PostgreSQL、⑤MySQLである。
(1) | 階層型データベース | |
データを階層構造で表現するDB。 | ||
(2) | リレーショナルデータベース(RDB) | |
行と列からなる得次元票の形式でデータを管理するDB。 | ||
(3) | オブジェクト指向データベース(OODB) | |
データとそれを操作する処理をひとまとめにした「オブジェクト」を管理する形式のDB。 | ||
(4) | XMLデータベース(XMLDB) | |
XML形式のデータを大量かつ高速に扱うためのDB。 | ||
(5) | キー・バリュー型データストア(KVS) | |
検索に用いるキー(Key)と値(Value)の組み合わせの実の形態でデータを保存するDB。 |
1.3 データベースの構成
RDBMSを利用する際のシステム構成はクライアント/サーバー型が最も一般的である。
- サーバ:他のプログラムからの要求を受け取り、それに応じて処理を行うプログラムもしくは当該プログラムがインストールされたコンピュータ
- クライアント:サーバに要求を出すプログラムまたはそのプログラムがインストールされたコンピュータ
クライアント/サーバー型のシステム構成模式図
RDBMSは1台のコンピュータ内でRDBMSとそのクライアントを動かすことも、RDBMSとクライアントを別々のコンピュータで動かすこともできる。またネットワークで両者をつなぐのみならず、複数のクライアントから利用することもできる。
1.4 テーブルの構造
RDBMSは行と列からなる2次元票の形式でデータを管理する。これをテーブル(表)と呼ぶ。
テーブルはRDBMSが管理するデータベースの中に保存される。1つのデータベース内には複数のテーブルを保存できる。SQL文の内容に従ってクライアントに返信されるデータも必ずテーブルと同じように2次元表の形式で返される。
テーブルの例
商品ID |
商品名 |
商品分類 |
販売単価 |
仕入単価 |
登録日 |
|
Tシャツ |
衣服 |
2009-09-20 |
||||
穴あけパンチ |
事務用品 |
2009-09-11 |
||||
衣服 |
||||||
包丁 |
キッチン用品 |
2009-09-20 |
||||
圧力鍋 |
キッチン用品 |
テーブルの列はカラム(column)とも呼び、テーブルの行はレコード(record)とも呼び、1件のデータに相当する。RDBではデータを必ず行単位で読み書きする。行と列が交わる箇所を同書ではセルと呼ぶ。セルには1つのデータしか入れることができない。