三層スキーマ
「データベースの構造を3つに分けて定義しましょう」な考え方だよ
「外部スキーマ」「概念スキーマ」「内部スキーマ」に分ける考え方と「概念スキーマ」「論理スキーマ」「物理スキーマ」に分ける考え方が有名だよ
簡単に書くよ
三層スキーマ(読:サンソウスキーマ 英:three-schema?)とは
データベースの構造を定義するんだけどね。全体を一気に定義しようとすると大変じゃん?ごちゃごちゃ複雑になりそうでしょ。だから、まずは全体を3つに分けるね。そして、分けたそれぞれに対して定義するからさ。な考え方のこと
です。
詳しく書くよ
サクっと一言で説明すると
「データベースの構造を3つに分けて定義しましょう」な考え方
が「三層スキーマ」です。
分け方はいくつかありますが、
・外部スキーマ
・概念スキーマ
・内部スキーマ
の3つに分ける考え方と
・概念スキーマ
・論理スキーマ
・物理スキーマ
の3つに分ける考え方が有名です。
よく分からない方は、データベースを「ピヨ太君」に置き換えて考えてみましょう。
ピヨ太君という人間(?)がどんなやつかを説明したいとします。
ですが、ピヨ太君はとっても奥ゆかしいやつです。
とても一言では説明できません。
そこで、ピヨ太君の要素を3つに分けて説明することにしました。
その3つとは
・頭
・身体
・心
の3つです。
頭は、ピヨ太君が「何を考えるか」の部分です。
身体は、ピヨ太君が「何をできるか」の部分です。
心は、ピヨ太君が「何を感じるか」の部分です。
ピヨ太君の頭、身体、心がどうなっているかをそれぞれ説明することによって、ピヨ太君という人間(?)がどんなやつかを説明できるでしょう。
三層スキーマの考え方も同じです。
データベースがどんなものかを、一言で定義するのは大変です。
そこでデータベースの要素を3つに分けて、それぞれを定義することによって、全体を定義しようと考えました。
一気に全部は大変なので、まずはざっくりと分けちゃって、その中でさらに細かいことを定義していくのです。
この
1.データベースを、3つの層がくっついたものだと考える
2.3つの層それぞれの構造を定義する
3.「1.」「2.」により、データベース全体の構造が定義される
な考え方が三層スキーマです。
一言でまとめるよ
まぁ「三層スキーマ」って単語が出てきたら「データベースの構造を3つに分けて定義しような考え方なんだな~」と お考えください。
おまけ
■訳してみるよ
「三層」は日本語ですね。
「schema(スキーマ)」の意味は「図式」とか「図表」とか「図解」とか「概要」とかです。
何となく くっつけると
三層(に分けて)図解
となります。






