最終更新日:2026年9月27日
fe fe-technology database rdbms
まず結論
データディクショナリ(Data Dictionary)とは、データベースで使うデータの定義や属性などの情報を管理するための「データの辞書」です。
基本情報技術者試験では、次のような言葉が中心ならデータディクショナリを疑います。
項目名
データ型
意味
制約
利用者や権限
データ同士の関係
↓
定義情報を管理する
→ データディクショナリ
ポイントは、業務データそのものをためる仕組みではなく、データを説明する情報を管理する仕組みだということです。
直感的な説明
データディクショナリは、名前のとおりデータベースの「辞書」のようなものです。
普通の辞書には、
単語
読み方
意味
品詞
などが載っています。
データベースでも同じように、
顧客ID
→ 整数
→ 主キー
→ 顧客を識別する番号
氏名
→ 文字列
→ 顧客の名前
のようなデータの説明やルールを管理します。
つまり、
顧客ID = 1001
氏名 = 山田太郎
のような値そのものではなく、
顧客IDは整数
氏名は文字列
顧客IDは重複しない
といった定義側の情報を見るのがデータディクショナリです。
定義・仕組み
データディクショナリには、DBMSが管理するデータベースの定義情報が保存されます。
代表的には、次のような情報です。
| 管理する情報 | 例 |
|---|---|
| テーブル名 | 顧客、商品、注文 |
| 列名 | 顧客ID、氏名、価格 |
| データ型 | INTEGER、VARCHAR、DATE |
| 制約 | 主キー、外部キー、NOT NULL |
| 関係 | どの表とどの表が関連するか |
| 利用者・権限 | 誰がどのデータを利用できるか |
このような、データを説明するためのデータをメタデータと呼びます。
したがって、関係は次のように整理できます。
メタデータ
→ データを説明する情報
データディクショナリ
→ その定義情報をまとめて管理する仕組み
DBMSは、SQLを処理するときやデータベースの構造を確認するときに、このような定義情報を利用します。
なお、実際のDBMSでは、データディクショナリやシステムカタログなど、製品によって呼び方や実装方法が異なることがあります。FEでは細かな製品差よりも、「データの定義情報を管理する」という役割を押さえることが重要です。
このテーマは、基本情報技術者試験のデータベース分野に関係する内容です。公式の出題範囲やシラバスは、IPA:基本情報技術者試験 から確認できます。
科目Aでどう出る?
科目Aでは、似た用語の役割を見分ける問題として出やすいテーマです。
判断するときは、何を保存・管理・分析しているのかに注目します。
| 問題文の方向性 | 判断したい用語 |
|---|---|
| データ項目の名前・型・意味・制約などを管理する | データディクショナリ |
| データベースの構造や関係を定義する | スキーマ |
| 複数システムのデータを統合・蓄積して分析する | データウェアハウス |
| 特定部門や目的向けにデータを切り出す | データマート |
| 大量データから規則性や知識を見つける | データマイニング |
試験中は、次の動詞で切り分けると判断しやすくなります。
定義情報を管理する
→ データディクショナリ
構造を定義する
→ スキーマ
統合してためる
→ データウェアハウス
目的別に切り出す
→ データマート
規則性を見つける
→ データマイニング
「データを管理する」という広い表現だけでは判断せず、管理しているのが実データなのか、定義情報なのかまで確認するのがポイントです。
どんな場面で使う?
データディクショナリは、データベースの構造やルールを確認・管理する場面で使われます。
例えば、
- どのテーブルが存在するか確認する
- 列名やデータ型を確認する
- 主キーや外部キーなどの制約を確認する
- 利用者や権限に関する情報を確認する
- データベースの構造を管理・保守する
といった場面です。
利用者が普段入力する売上や顧客情報を蓄積することが主目的ではありません。
業務データ
→ 顧客名、売上金額、注文日など
データディクショナリ
→ その項目の名前・型・意味・制約など
と分けて考えると理解しやすくなります。
よくある誤解・混同
データディクショナリとメタデータを同じものだと思う
かなり近い概念ですが、役割を分けて考えると迷いにくくなります。
メタデータ
→ データを説明する情報そのもの
データディクショナリ
→ メタデータをまとめて管理する仕組み
FEでは、このくらいの切り分けで十分です。
データディクショナリとスキーマを同じものだと思う
スキーマは、データベースの構造や関係を定義したものです。
一方、データディクショナリは、そのような定義情報を含めて管理するための情報の集まりです。
スキーマ
→ どういう構造かを定義する
データディクショナリ
→ その定義情報を管理する
「構造そのもの」と「構造などの定義情報を管理するもの」を切り分けます。
データウェアハウスと混同する
データウェアハウスは、企業内のさまざまなデータを整理・統合して蓄積し、分析に使うための基盤です。
データウェアハウス
→ 実データを統合してためる
データディクショナリ
→ データの定義情報を管理する
「大量データ」「過去から現在」「分析・意思決定」が中心なら、データディクショナリではありません。
データマイニングと混同する
データマイニングは、大量のデータから規則性や知識を見つける活動です。
データディクショナリ
→ 定義する・管理する
データマイニング
→ 分析して見つける
「統計的手法」「規則性」「新しい知識を発見」といった表現なら、データマイニングを疑います。
まとめ(試験直前用)
- データディクショナリは、データの定義・属性などの情報を管理する仕組み
- 「項目名・データ型・意味・制約」が判断キーワード
- メタデータは「データを説明する情報」、データディクショナリは「その情報を管理する仕組み」
- スキーマは「構造を定義」、データディクショナリは「定義情報を管理」
- データウェアハウスは「ためる」、データマイニングは「見つける」と切り分ける