「データスペシャリスト育成カリキュラム」では、従来、データモデルを概念データモデル、論理データモデル、物理データモデルに3区分していたが、平成10年より、従来の概念データモデルを論理データモデルとし、従来2つに分かれていたDBMS依存の論理データモデルと物理データモデルを統合し、物理データモデルとした。
従来 | カリキュラム改定後 | |
---|---|---|
概念データモデル | → | 論理データモデル |
論理データモデル | → | 物理データモデル |
物理データモデル |
論理データモデル | 物理データモデルに先立って作成られる。DBMSに依存しないデータモデルであり、コンピュータ化されていない部分についても記述する。 |
---|---|
物理データモデル | DBMSの特性や実装方式を加味して作成される。DBMSで管理する範囲のみを記述し、コンピュータ化されない部分は記述しない。 |
外部スキーマ | ユーザあるいはプログラムから見たデータベース記述。 ex.)RDBMSのビュー。 |
---|---|
概念スキーマ | 対象となる外界の事象を抽象化したもの。データベース化したいすべてのデータを、データモデルに従って記述したもの。 ex.)データ定義SQL。(CREATE TABLE文とか) |
内部スキーマ | データの物理的な格納面からの定義。 ex.)インデックスの定義。ORACLEの表領域の定義。 |
データモデルは次の三つの部分からなる。そのうち二つの部分は、データ構造およびデータ操作である。残る一つの部分と最も関連の深い用語はどれか。
ア 関係完備
イ 関係代数
ウ 整合性制約
エ データ独立
オ 表構造
関係完備:関係モデルのデータ操作言語が備えるべき機能。
関係代数:関係モデルのデータ操作は関係代数からなる。
データ独立:コッドか提唱した関係モデルの目標。
表構造:関係モデルのデータ構造。
ANSI/SPARCの3層スキーマのうち、概念スキーマの説明として、正しいものはどれか。
ア 実体をそのまま表として利用するよりも、部分的に一つの表としてアクセスするときに定義する。
イ データベースがモデル化している対象全体の論理的なデータ構造を記述したものである。
ウ 特定の利用者に対して、データベースの一部のデータ構造を特定の見方(ビュー)で切り出したものである。
エ 二次記憶装置上に格納されたデータの物理的な機能を記述したものである。
ア、ウ:外部スキーマ
エ:内部スキーマ
企業全体のデータ体系を記述するモデリング技法。対象とする世界のデータの意味関係を忠実に記述でき、分析・設計した結果を的確に第三者に伝えることができなければならない。
論理データモデル機能の機能要件
複合オブジェクト
(高度共通午前:平成8秋 NW 問59の解答を再利用)
(高度共通午前:平成8秋 NW 問59の解答を再利用)
E-Rモデル
ネットワークモデル、関係モデル、エンティティセットモデルの3モデルを統合するモデルとして1976年にP.P.チェンにより発表された。
現実世界をモデル化する手段として理解しやすい、実体間の関係の意味表現ができる、さまざまなデータ構造が表現できる、あるいは関係モデルとの親和性が高いなどの特徴から広く利用されている。
E-Rモデルでの表現
エンティティタイプとインスタンスの例
顧客は一般に複数の銀行に預金するものとして、顧客と銀行の関連を、E-R図で次のように表現する。このE-Rモデルを関係データベースで”銀行”表、”預金”表、”顧客”表と表現したときの記述として正しいものはどれか。
ア ”銀行”表と”預金”表のガーディナリティは多対1である。
イ ”銀行”表に参照制約のあるキーはない。
ウ ”預金”表と”顧客”表のガーディナリティは1対多である。
エ ”預金”表には2つ以上の外部キーがある。
「顧客は一般に複数の銀行に預金する」こと、および「銀行は通常複数の顧客の預金を預かる」ことから顧客と銀行の関係は多対多の関係となる。
預金は顧客と銀行の多対多の関係を1対多に変えるための連関エンティティであり、顧客と預金は1対多、銀行と預金は1対多の関係となる。
連関エンティティのキーは、元の二つのエンティティ(銀行、顧客)を含むので、”預金”表には最低二つ以上の外部キーが存在することになる。
”銀行”表のキーは、預金表により参照されるので、参照制約の対象となる。
階層モデル
データ構造に階層構造を採用したデータモデル。
●表現
●特徴
階層モデルのデータ構造
ネットワークモデル
データ構造にネットワーク構造を採用したデータモデル。
●表現
●特徴
ネットワークモデルにおける親子関係に関する記述のうち、正しいものはどれか。
ア 親子集合が定義されている場合、子レコード型のすべてのレコード実現値は親レコード型のいずれかの親レコード実現値に対応しなければならない。
イ 親子集合が定義されている場合、その親レコードとは無関係に子レコードを直接アクセスすることはできない。
ウ 親子集合では、親レコードと子レコードとに同一のレコード型を指定できない。
エ 親子集合内で子レコードを検索するときは、順序句による条件指定はできない。
オ 一つの親子集合では、一つの子レコードは一つの親レコードにしか対応できない。
ア:子レコード型の実現値は、親レコード型の実現値に対応しない場合もある。(挿入属性MANUAL指定)
イ:子レコードにレコードキーを指定することによって、子レコードを直接アクセスできる。
ウ:NDLでは、親と子が同じレコード型の再起親子集合が定義できる。