データベース論 朝日大学大学院 経営学研究科 奥山 徹 [email protected] 2006/05/22 データベース論(6回目) 1 講義日程 • • • • • • • • • • • 4月17日 4月24日 5月01日 5月08日 5月15日 5月22日 5月29日 6月05日 6月12日 6月16日 6月26日 2006/05/22 ガイダンスおよび集合論の基礎 リレーショナルデータベースの基礎 データ操作言語 データベースの論理設計 SQL(データベース操作言語)の基礎 データベース管理システム データベースの内部スキーマ 質問処理とその最適化 トランザクション処理 分散データベース序説 定期試験 データベース論(6回目) 2 関係データベースの利点と欠点 • 利点 – – – – 設計法が明確なので、誰もが同じ関係を設計できる 直観的に明瞭なデータ構造となる 数学的・論理的な基礎が明確である ユーザ向きの簡単な問い合わせ言語が提供できる • 欠点 – 直観的にデータ構造をつかみにくい – 結合演算(join)を多用するために処理効率が悪い – 関係としての形式的基礎は明確でも、もとの実体の意味が不 明確となる – 必要となる関係を列挙しなければならないので、問い合わせが 複雑となる 2006/05/22 データベース論(6回目) 3 関係データベースで処理困難 な例(1) • CADなどのエンジニアリングデータベー ス • オフィスオートメーション(OA)での情報 データベース • 異種のデータを持つマルチメディアデータ ベース • 実験データを格納した科学データベース 2006/05/22 データベース論(6回目) 4 関係データベースで処理困難 な例(2) • 遺伝情報配列を格納したデータベース – GenBank(米国) – EMBL(欧州) – DDBJ(日本) • GenBank(データ構造は次に示す) – 共通データベースとして関係データベースを 推奨している 2006/05/22 データベース論(6回目) 5 GenBankのデータ構造(Release 60.0より抜粋) ローカス名 定義 アクセス番号 セグメント 2006/05/22 名前 長さ ストランド 分子型 形 日付 分類 年 月 日 総数 分割番号 データベース論(6回目) 6 関係データベース選択の理由 • データ構造が頻繁に変わるので、それを許容す るモデルが欲しい • データの利用法も変化するので、それに対応し たアドホックな問い合わせが容易にできること が望ましい • 市販のデータベース管理システムで関係データ ベースが最も簡単に入手できるので、国際協力 のプラットフォームとしてふさわしい 2006/05/22 データベース論(6回目) 7 GenBankの関係の構造 • 55個の関係に分割されている • これらの関係間の関連は複雑 • 表現効率、処理効率、問い合わせの容易 さを犠牲にしている • データ管理者側の都合を優先した • アプリケーションが対象とするものをその ままモデル化しないで、関係という断片に 分解してしまった 2006/05/22 データベース論(6回目) 8 2006/05/22 データベース論(6回目) 9 ANSI/X3/SPARC • ANSI/X3/SPARC Study Group on Data Base Management Systems • ANSI: American National Standard Institute • X3: Committee on Computers and Information Processing • SPARC: Standards Planning and Requirements Committee 2006/05/22 データベース論(6回目) 10 ANSI/X3/SPARCの3層スキーマ 構造(再掲) • データベースの取り扱うスキーマを次の3 つに分けて考える – 外部(external)スキーマ:ユーザインターフェ イス – 概念(conceptual)スキーマ:データ構造の論 理的枠組み – 内部(internal)スキーマ:ファイルシステムと のインターフェイス →データの独立性実現のための枠組み 2006/05/22 データベース論(6回目) 11 3層スキーマ構造の概念図(再掲) アプリケーション アプリケーション データベーススキーマ 外部スキーマ 写像 実世界 表現 外部スキーマ 写像 概念スキーマ 写像 内部スキーマ 2006/05/22 データベース論(6回目) 12 管理者の定義 • 組織体管理者(enterprise administrator) • データベース管理者(database administrator) • アプリケーションシステム管理者(application system administrator) 2006/05/22 データベース論(6回目) 13 処理機能1 • 概念スキーマプロセッサ(conceptual schema processor) • 内部スキーマプロセッサ(internal schema processor) • 外部スキーマプロセッサ(external schema processor) 2006/05/22 データベース論(6回目) 14 処理機能2 • 外部/概念データベース変換(external/conceptual database transform) • 概念/内部データベース変換(conceptual/internal database transform) • 内部データベース/内部記憶変換(internal database/internal storage transform) 2006/05/22 データベース論(6回目) 15 データ辞書 データ辞書(data dictionary/directory) • データベースに関する情報の保管庫 (repository) • メタデータベース(metadatabase) 2006/05/22 データベース論(6回目) 16 各種インターフェイス1 • インタフェース1 – 概念スキーマ記述‐ソース形式 • インタフェース2 – 概念スキーマ記述‐オブジェクト形式 • インタフェース3 – 概念スキーマ記述‐表示形式 2006/05/22 データベース論(6回目) 17 2006/05/22 データベース論(6回目) 18 各種インターフェイス2 • インタフェース4 – 外部スキーマ記述‐ソース形式 • インタフェース5 – 外部スキーマ記述‐オブジェクト形式 • インタフェース6 – 外部スキーマ記述‐ホスト言語フォーマット 2006/05/22 データベース論(6回目) 19 2006/05/22 データベース論(6回目) 20 各種インターフェイス3 • インタフェース7 – 外部データ操作言語‐ソース形式 • インタフェース8,9,10,11 – エンドユーザ機能 • インタフェース12 – 外部データ操作言語‐システム形式 2006/05/22 データベース論(6回目) 21 2006/05/22 データベース論(6回目) 22 各種インターフェイス4 • インタフェース13 – 内部スキーマ記述‐ソース形式 • インタフェース14 – 内部スキーマ記述‐オブジェクト形式 • インタフェース15 – 内部スキーマ記述‐表示形式 2006/05/22 データベース論(6回目) 23 2006/05/22 データベース論(6回目) 24 各種インターフェイス5 • インタフェース16 – 内部データ操作言語‐ソース形式 • インタフェース17 – 内部データユティリティ‐制御言語 • インタフェース18 – 内部データ操作言語‐オブジェクト形式 2006/05/22 データベース論(6回目) 25 2006/05/22 データベース論(6回目) 26 各種インターフェイス6 • インタフェース30 – 内部データ操作言語‐システム形式 • インタフェース31 – 概念スキーマ操作言語‐システム形式 2006/05/22 データベース論(6回目) 27 2006/05/22 データベース論(6回目) 28 各種インターフェイス7 • インタフェース33 – データベース管理システム指定言語(specification language) • インタフェース34 ‐ 38 – データ辞書インタフェース • インタフェース39 – データベース輸送インタフェース(transportability) • インタフェース40 – データベース管理システム規定言語‐オブジェクト形 式 2006/05/22 データベース論(6回目) 29 2006/05/22 データベース論(6回目) 30 2006/05/22 データベース論(6回目) 31 概念スキーマ • 実世界の写し絵であるデータベースの構 文的 (syntactic)・意味的(semantic)構造を記述 したもの • 実世界のデータモデリングの結果得られ る実世界の“概念的”モデル 2006/05/22 データベース論(6回目) 32 内部スキーマ • データベースを実装(implement)するコン ピュータ上でのデータベースの構文的・意 味的構造 • 概念スキーマ/内部スキーマ変換 (conceptual/internal transformation) 2006/05/22 データベース論(6回目) 33 外部スキーマ • ユーザの目的に即したデータベース空間 を記述したスキーマ • ビュー(view)の集まり • 外部スキーマ/概念スキーマ変換 (external/conceptual transformation) 2006/05/22 データベース論(6回目) 34 2006/05/22 データベース論(6回目) 35 2006/05/22 データベース論(6回目) 36 選択ビュー(selection view) 2006/05/22 データベース論(6回目) 37 和ビュー(union view) 2006/05/22 データベース論(6回目) 38 2006/05/22 データベース論(6回目) 39 2006/05/22 データベース論(6回目) 40 2006/05/22 データベース論(6回目) 41 DBMSの三大機能 • メタデータ管理 – システムカタログ(system catalog) • 質問処理 – 質問処理の最適化(query optimization) • トランザクション管理 – 障害時回復(recovery)と同時実行制御(concurrency) 2006/05/22 データベース論(6回目) 42 2006/05/22 データベース論(6回目) 43 まとめ • リレーショナルデータベースの利点と欠点 • データベース管理システム – ANSI/X3/SPARCモデル – 各種インターフェイス – 内部及び外部スキーマ • ビュー • RDBMSの基本機能 2006/05/22 データベース論(6回目) 44 レポート課題(六回目) • レポート課題 – DBMSはANSI/X3/SPARCの3層スキーマとは何 か?名称を記すとともに、DBMSとの関連を含めて 完結に説明せよ。 • 締め切り:6月5日タイムスタンプ有効にて電子 メールで – メールアドレス:[email protected] – サブジェクト:データベース論第六回課題 – 本文の最初に必ず学籍番号、氏名を記入 2006/05/22 データベース論(6回目) 45
© Copyright 2024 ExpyDoc