DBMSの役割と構造
|
|||||||||
■データベースの設計とDBMS データベースは、「情報」の集まりであるが、数百万件にのぼるデータを管理することは大変なことである。 そのデータベースを管理するシステムがDBMS(Data Base Management System)である。図書館へ行って 目的の本を簡単に見つけられるのは、担当の職員が図書の整理をしているおかげである。DBMSは、図書館の 職員と考えても良い。後に記述してあるが、DBMSは、多数のアクセスに対する制御・データの安全性・ バックアップ等を考慮したシステムである。 データベースの設計とスキーマ 会社で、商品を作る場合には、設計図が必要となります。当然、データベースを構築する場合にも設計図が 必要となります。データベースのでいう設計図をスキーマと言います。データベースを作成するときに、まず、必要な情報を 洗い出し、そのデータを整理します。そして、それをどのように処理をするか検討します。その後、実際に そのために応じたDBMS用にデータモデルを設計します。現在は、そのスキーマを次のように三層スキーマと して定義しています。 ●概念スキーマ(論理データモデル)・・・データベースの全体の基本構造を表現したもの。 ●外部スキーマ(論理データモデル)・・・ユーザの立場から見たデータ構造やデータの関係を表現したもの。 ●内部スキーマ(物理データモデル)・・・実際にデータをどのような物理的データモデルにするか、ハードディスクに どのように置くかなど表現したもの。 ![]() 物理的データモデル DBMSのデータ構造(データとデータの関係)には、次の3つのものがある。
■DBMSの役割 DBMSは、データを入れる箱であるが、それだけでは、なんの意味もなさないわけです。データを利用するための いろいろな機能があります。 ●問い合わせ処理 一般的な検索処理で、問い合わせに対して適切なデータを返す役割である。また、データの追加や変更に対して、 不適切な値や重複するデータなどが入力されないかなどのチェックも行う。 ●セキュリティーの確保 データベースでは、多数によりデータの共有がなされるために、セキュリティーを保つ必要がある。DBMSでは、 ユーザ毎に検索・更新・追加・削除ごとに細かく権限を与えることできる。 ●同時実行制御処理 商品の在庫を確認して、商品を出庫したデータを商品数から減じたデータを書き込むという一連の操作をトランザクション という。トランザクション処理をデータベースに反映させることをコミットいい、トランザクション処理中にトラブルが起きた場合は、 すべての処理が破棄される。これをロールバックという。複数のユーザが同時にアクセスした場合、データに矛盾が起こる場合がある。 データベースの矛盾を防ぐ機能を、同時実行制御処理という。 自分がアクセスしている場合に他からのアクセスを制御することをロックという。次のような種類がある。 排他ロック・・・他からの検索・更新などのすべてのロックする 共有ロック・・・他からの参照のみ許可する デッドロック・・お互いのトランクザクションガじゃまをして、お互いのロックを待つことにより、処理が止まった状態。DBMSは、 これを監視し、解除するシステムも持っている。 ●障害復旧機能 突然の停電などにより、障害が起きたときには、ログファイルによりもとの状態にデータベースを戻す機能を持っている。 システムがダウンした時点で、トランザクションが終了してなければロールバックしトランザクション処理以前の状態に戻す。 ![]() Aさんは、給料日に銀行へお金をおろしに行きましたが、残高ゼロでびっくり。確かに30万円の給料は振り込まれていたが、 なぜこのようなことがおきたのか。 ![]() | |||||||||
HOMEへ | データベーストップへ | <<<情報化社会とデータベースへ戻る | RDBMSと正規化について>>> |