ファイルからデータベースへ
実世界の事実を集めたものとしてはファイル(file)という語があるが、これは同じ構造のデータを集積したものであり、一方データベースはさまざまな種類の異なった構造のデータを統合化したものである、というのが直観的な区別である。 データベースが登場する以前の時代では、ファイルによって業務プログラムごとに取り扱うデータを保有し管理するシステム形態であった。
この形態はファイルシステムと呼ばれ、現在でもこの形態を採用する業務プログラムは数多く存在する。
しかし、1950年代の後半から複数の業務プログラムの間で異なるファイルを扱うファイルシステムに対して問題点が指摘されていた。 異なるファイルの間で同じデータを持つ場合には、それぞれのファイルのデータを一致させておくのは困難である。
例えば、出退勤プログラムと人事管理プログラムがあるとき、ある社員が入社するとそれぞれのプログラムが管理するファイルへデータを追加しなければならない。
また、異なるファイルの間で同じデータを重複して持つことにより、その分データを格納するためのディスク容量が増加する。 ファイルの持つ主な問題点
情報処理の対象となるデータは、密接に関係するものどうしが集まってレコードとなり、同種類の複数のレコードが集まってファイルになっていく。
このようにして作成されたファイルは、小規模で単純な適用業務システムで使用する限り特に大きな問題は引き起こさない。
しかし、そもそもファイル自体が特定の目的使用されて来たために、次のようないくつかの問題点を持っている。
1. データの独立性がない。
処理プログラムの中にファイル仕様(編成方法やブロック長など)を記述しなければならない。
ファイルの仕様変更があると、処理プログラムも変更しなければならない。
2. データの重複がある。
別の人が作成したファイルとの間でデータの内容が重複しやすい。
一方のファイルを変更しても、他方の重複した部分は変更されない。
3. 同時処理ができない。
原則として、1プログラム1ファイルの処理。同時処理しようとするとプログラムは実行出来ない。 これらのファイルが持つ問題点を解決するために、データベースは考えられた。 コンピュータが出てきた当初はコンピュータ自体が非常に高価であり、限られた業務のファイルを処理プログラムが(同時処理をしないで)単一処理をするだけであった。
そのため、上記の問題点は大きく取り上げられることはなかった。
しかし、コンピュータの利用が進むにつれ、上記の問題点がクローズアップされてきた。