データベースソフトのデータモデル・集合演算と関係演算

本日の出席

データベースを管理するシステム

3 層スキーマ=概念スキーマ+外部スキーマ+内部スキーマ

データベース:情報を集約して管理するシステムや場所のこと

データモデル:情報を抽象化して表現した情報

データの独立性:データが変更されてもプログラムに変更が生じないこと、 3 層スキーマにより実現

ANSI:American National Standatrds Institute(米国規格協会)

DBMS概念スキーマ データベース全体の定義概念データモデル
外部スキーマユーザ側からのデータベース 論理データモデル、ビュー
内部スキーマ物理面(ハードウェア)からみたデータベース 物理データモデル

DBMS:データベース管理システム (DataBase Management System)

データベースの主な機能
定義スキーマを定義
操作データベースの構築、操作を行う
制御アクセス制御、排他制御、障害回復機能
トランザクション管理トランザクションの実行を制御
ビュー表の一部を抽出してユーザに分りやすく示す機能

トランザクション: インターネットバンキングなどの操作に使われ、 複数位置にある情報を更新するときに、 対象となる全ての更新処理が終了した段階で処理を確定させること

データモデル

階層データモデル階層データベース ツリー(木)構造
ネットワークモデルネットワークデータベース 網の目構造
関係モデル関係データベース (RDB) 2 次元表で表示

E-R 図:データモデルに独立な、データモデルの表現方法

関係データベース

キー

関係データベース: データベースを 2 次元表形式にまとたもので、 行(レコード、組)と列(フィールド、属性)の表を作る

主キー: 特定の行を取り出すための属性のこと

候補キー: 関係表の中で、ある属性を持った行を全て取り出すもののこと、 ある行を一意に取り出すものは主キー

外部キー: 二つの表から参照関係を取り出すときに使う主キーや候補キーのこと

データベース管理システム

DBMS の特徴

データの独立 データベースの属性を追加・ 変更してもその列を参照しないプログラムに影響はないように設計
冗長性の排除 同一の内容を持つデータの重複を避けるように設計
同時処理 排他制御を用い、 複数のプログラムから同時にアクセスが可能となるように設計

排他制御: 更新中のデータを他のユーザに更新されないようにする制御、ロックともいい、 参照はできるが、更新ができない場合と、参照すらできない場合を指す

共有ロック 追加・変更・削除不可能・参照可能
占有ロック 追加・変更・削除・参照不可能

トラブル対策:データベースは企業の資産であるので、 データベース管理システムにはログファイルやチェックポイントファイルなど、 停電やハードウェア障害などのトラブルが生じても、 データベースに損害を与えないようにする保護機能がある

集合演算・関係演算

集合演算:関係表の和・積・差・直積を求めること

和演算 2 つの関係表から、 どちらか一方あるいはどちらにも含まれるデータを取り出す
積演算 2 つの関係表から、両方に含まれるデータを取り出す
差演算 2 つの関係表から、どちらか一方にしか含まれないデータを取り出す

関係演算:一つあるいは複数の関係表のデータを取り出して、 新たに表を作ること

射影 表から特定の属性を取り出す
選択 表から特定の条件を満たす行を取り出す
結合 複数の表から条件を満たす行を取り出して新しい表を作る

本日のレポート課題 : (Subject: 第 9 回レポート「情報処理基礎論 I」)

宛先は
it-ip1-0612-report@e.koeki-u.ac.jp
である。

初級シスアドの平成 17 年度以降の出題のうち、 「データベース」 に関する問題を含め、5 問または午後問題 1 問を解く。 本日の講義分で解ける問題でもよいし、 自分で勉強した問題でもよい。前回解いたものは除く。 問題は教科書を購入したり、インターネットから検索して探すことができる。

  1. レポートには、年度と季節、何問目かを記入し、選択肢を書く。 解答及び解法も記せ(解法は打ち間違いかどうかのチェックに利用する)。
  2. できるだけ他の学生と違う問題にも挑戦せよ。