こんにちは。ぽこです!
今回はデータベースとは何かについて話していきたいと思います。
データベース
第二次世界大戦後の米軍が、点在していた膨大な資料を一つの基地に集約して、そこにアクセスするだけですべての情報が得られるように効率化を図りました。
この時にデータベースという言葉ができたと言われています。
一か所に集められた情報をDate(情報)のBase(基地)と呼んだのです。
データベースの概念を理解しやすくするために、データベースを図書館に例えて説明してみましょう。
- 図書館には様々な種類の本がたくさんあります。
- 図書館には多くの利用者が来ます。求める本は一様ではなく多岐にわたっています。
- 図書館には利用者が必要な本を探すための様々な工夫がされています。
もしも、図書館にある大量の書籍が全く生理・分類されていないとします。
利用者は、どうやって目的の本を探せばいいか分からず、すべての本を一つ一つ調べなくてはいけません。
せっかく一か所に集められていても、集めた意味がなくなってしまいます。
実際の図書館では
- 本の入荷・登録
- 本の分類・整理
- 本の補修
などを行っているので、利用者は求める本を簡単に見つけることができ、いつでも快適に本を手にすることができるのです。
データベースも、この図書館のように「整理・整頓されたデータの集まり」といえます。
また、データベースは、ただ整理・整頓してあるだけでも十分役に立ちますが、図書館の司書に当たるデータベース管理システム(DBMS)の存在があって、利用者に相当するプログラムやユーザがさらに快適にそのデータベースを利用できるようになるのです。
データベース管理システム(DBMS)
ここまでデータベースとは何なのかということを学習してきました。
では、巷に聞く、Oracle、DB2、SQLserverなどはいったい何者なのでしょうか?
Oracle、DB2、SQLserver などは、データベース・ソフトとも呼ばれます。しかし、その実体は、データベース+データベース管理システム(DBMS)と呼ばれるものなのです。
データベースには、大量の情報があります。
いくら利用しやすいように整理・整頓されているとはいえ、必要な情報を取り出すには大変な作業が必要となります。
そこで、「情報を利用するもの」と「データベース」の間で、この作業を代行してくれるものが必要となります。
これが データベース管理システム(DBMS) なのです。
では、 データベース管理システム(DBMS) にはどのような機能があるのでしょうか。
下の図を見てください。
データ定義言語
データベースで管理する情報について、その構造や関係、特性などを定義するための言語とインターフェイス
データ操作言語
データベースを高級言語で記述されたプログラムなどから利用するときの言語とインターフェイス
照会言語
データベースをユーザが優しい操作で利用するときの言語とインターフェイスデータ辞書
データ辞書
利用者の登録簿、データベースの登録簿など
ユーティリティ
データベースの再編成、障害復旧、監視・分析、運用のための各種ツール
インターフェイス
ネットワーク等で利用する際のサーバ/クライアント間のインターフェイス
少し難しかったかもしれませんが、データベース管理システム(DBMS)では、このような機能を提供し、利用者(人とは限らない)に最適な形で情報を提供するものなのです。