プロが教えるわが家の防犯対策術!

現在データベースの役割について勉強しています。
その中で、データベースの必要性として、以下のような説明があります。データベースが存在する前のデータ管理についてわからない為、
(1)~(3)が理解できません。
(1)~(3)について、具体的に教えてくださいませんか?
よろしくお願いします。
--------------------------------
データベースが存在する前は、プログラムごとにデータを保持している。
以下のような問題点がありました。
(1)冗長性の問題:同じデータが複数のファイルに重複して存在する為、多くのデータ格納領域が必要になります。

(2)整合性の問題:データに変更があった場合、各プログラム毎のデータをすべて変更する必要があります。このため、データの更新漏れが発生しやすくなります。

(3)独立性の問題:プログラムは物理的にデータが格納されている位置を指定して処理していたため、データの構造が変わってしまうとプログラムも変更する必要がありました。

A 回答 (2件)

 SEです。

汎用コンピュータを経て、サーバ系システムを担当してます。

 この文書は、大型の汎用コンピュータのシーケンシャルファイルと、サーバ系のデータベースを比較した文書のようです。

 各プログラムやシステムで、それぞれが独自にデータを持っていると、(1)は起こります。が、データベースもうまく考えないと同じことになりますし、重要なマスタにアクセスが集中しすぎてしまう場合には、逆に分散させることも考えなければなりません。

 (2)と(3)は例を挙げると2000年対応で年月日の桁数を6桁から8桁にしたら、2桁ずつ全てのデータの位置が狂うと言うことです。データの位置を先頭からの桁数だけで管理しているのが問題です。Oracleなどのデータベースでは、日付型の項目を設定できるので無縁ですが、汎用系のデータベースでは、同じように桁数で項目を管理している物もあるので、正しいとも間違っているとも言えないですね。

 この文書は、データベース自体の特徴を書いているとは全く思えないです。10~20年ぐらい前に書かれた本ではないですか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。創造できるようになりました。

ちなみに、
この本は、外部研修に参加した時にいただいた参考書です。。。
研修費は、4日で10万だったと思います。。。。
研修に参加したのは、最近です。。

お礼日時:2010/03/16 13:42

かなりひどい記述ですね。

他の本を読んだ方がいいかと。

>データベースが存在する前は、プログラムごとにデータを保持している。
間違い。従って(1)(2)もおかしい。

>(3)独立性の問題:プログラムは物理的にデータが格納されている位置を指定して処理していたため、
そういう処理をするプログラムもあるでしょうけど、普通はそんなことはしないのでこれもデータベースの必要性とは関係ない。

とりあえずこんな所から読んでみては。
http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC% …


「データベースが存在する前のデータ管理」などそもそもありません。データ管理が始まったときからデータベースは存在しています。プログラムの中に埋め込まれたデータベース処理機能をくくりだして、外部に独立させた物が「データベースシステム」です。

「独立したデータベースシステムを使わないデータ管理方法」ということなら、上の言い換えですが、「データベースシステムを構成する機能を処理プログラムの中に埋め込む・またはサブルーチンとして呼び出す」ということです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。創造できるようになりました。

ちなみに、
この本は、外部研修に参加した時にいただいた参考書です。。。
研修費は、4日で10万だったと思います。。。。
研修に参加したのは、最近です。。

お礼日時:2010/03/16 13:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す