北川 博之著「データベースシステム(オーム社)」を参考に,データベースシステムの知識をまとめます。
目次
データベースシステムが克服する問題とメリット
DBSが普及する以前は,OSにより提供されるファイルシステムによりデータ管理を実現していました。ファイルシステムには,下記のような問題点があります。
- データ・アプリケーション間の依存性
- 整合性を担保する機能の欠如
- 機密保護機能の欠如
- 同時アクセス制御機能の欠如
- 障害復旧機能の欠如
「データ・アプリケーション間の依存性」とは,アプリケーション側がファイルの形式を強く意識しなくてはならないという問題点を意味します。「整合性を担保する機能の欠如」とは,本来あるべきではないデータがファイルに格納されてしまうことを防止する機能が存在しないことを意味します。「機密保護機能の欠如」とは,ファイル単位という粒度ではなく,ファイルの一部に対して細かい権限設定ができないことを意味します。「同時アクセス制御機能の欠如」とは,複数アクセスが行われた際にデータを矛盾なく操作できる機能が存在しないことを意味します。「障害復旧機能の欠如」とは,アプリケーションおよびDBSの障害が起きた際にデータを安全に操作する機能が存在しないことを意味します。
DBSでは,これらの問題点を克服します。すなわち,ファイルシステムと比較した際のDBSのメリットは,上記問題点の裏返しになっています。
- データ記述・操作基盤の実現
- 効率的なデータアクセスの実現(=問い合わせ最適化)
- 整合性を担保する機能の実現
- 機密保護機能の実現
- 同時アクセス制御機能の実現(=トランザクション)
- 障害復旧機能の実現
「データ・アプリケーション間の依存性」という問題点に対して,「データ記述・操作基盤の実現」と「効率的なデータアクセスの実現」が対応している点に注意してください。DBSでは,データモデルと呼ばれる統一的な枠組みを用いて,データ種別に関わらず操作を規定することができます。また,木構造やハッシュを用いてデータを効率的に格納し,問い合わせ最適化により高速に操作することが可能になります。
コメント