スキーマとはデータベースの構造のことで、外部スキーマと概念スキーマ、内部スキーマの3層に分けられます。
抽象的で分かりづらい概念ではありますが、データベースを学ぶ上で欠かせないものなので、この機会にどういうものか理解しておきましょう。
データベースのスキーマとは何か?
データベースにおける「スキーマ」とは、簡単にいうと、データベースの図面のようなものです。データの分類やほかのデータとの連携、そしてデータベースをSQLなどで操作する際のルールなどを設定したもので、スキーマを定義することによって、データの格納形式が決まります。
抽象的で分かりづらい概念ですが、データベース全体を定義するのに必要なのがスキーマだと覚えておきましょう。
そもそもデータベースとは?
データベースとは、ユーザーが後から検索・利用しやすいように整理された情報の集まりです。企業の場合、顧客データや商品データなどを、社員が必要に応じて利用しやすいように整理する必要があります。これらの業務データをデータベース化しておくことで、必要なタイミングですぐに利用できるようになります。
現在、主流となっているデータベースはリレーショナル型と呼ばれるもので、行と列によって構成されたテーブル(表)にデータを格納するのが特徴です。テーブル同士を関連付けることでデータの重複を避けられるのに加え、スムーズに必要なデータを検索できることから、企業のデータベースのほとんどはリレーショナル型になっています。
データを分類するための仕組み
上記のように、スキーマとはデータベースの設計図のようなもので、データの格納場所を定義するために設定されます。
パソコンのディレクトリと似たような性質を持っており、データをどういった基準で保存するかを決めるためのものです。スキーマはデータベースによって位置付けが異なり、データの分類するための仕組みはデータベースによって違ってきます。
3層スキーマアーキテクチャによる定義
通常、データベースのスキーマは「外部スキーマ」「概念スキーマ」「内部スキーマ」の3階層に分けて定義されます。それぞれみていきましょう。
外部スキーマ
ユーザーの視点からデータベースの構造を定義したスキーマのことです。アプリケーションの開発者側からみた構造や、データの指定方法などを示したもので、具体的にはSQLによるビューがなどが外部スキーマの代表例です。データベースの利用者側から、当該データベースがどうみえるかを定義したものといえるでしょう。
※SQL(Structured Query Language):リレーショナルデータベースを操作するための言語で、国際標準規格として決められている。ユーザーはSQLを使ってデータベース管理システムに命令を出し、必要なデータを検索・利用することができる。
概念スキーマ
概念スキーマは開発者側からみたデータベースで、保存するデータの要素やデータ同士の関係性を定義します。リレーショナルデータベースでは、データをテーブルに格納しますが、このテーブルを作成するための設計図と捉えることができます。
内部スキーマ
内部スキーマとは、概念スキーマによって定義したデータを、どのようにデータベースに格納するかを決めるものです。データベースの物理設計の段階で決められます。
※データベースの物理設計:データの格納方法や管理方法を決めることで、システムの要件に合致した物理的な設計を行う段階を指す。その前段階として、データベースの構造が決められており、これを論理設計と呼ぶ。
スキーマの理解に必要な用語
次に、スキーマを理解するのに必要な用語を解説していきます。いずれもデータベースの構築では理解しておかなければならない概念です。
テーブル
テーブルとは、リレーショナルデータベースにおいて、実際にデータを格納する領域です。データベースの基本要素であり、行と列から構成されます。Excelなどで作成した表を思い浮かべると分かりやすいでしょう。
データの属性や形式を「列」で表現し、データそのものを「行」で表現します。テーブルのタイプを定義するのがスキーマなので、テーブルよりも一段大きな概念といえるでしょう。
ディレクトリ
ディレクトリはコンピューターのOS内でデータを分類・保存するための単位であり、ファイルを整理・管理するための概念でもあります。各データはディレクトリにファイルとして保存されるのが一般的です。
なお、データベースも各種データを入れておくための「箱」のようなものであり、ファイルに相当するものがテーブルになります。
データ分類に不可欠なスキーマ
データベースのスキーマの概要と、3階層について解説しました。スキーマとは、データを分類するための仕組みであり、データベースの図面のようなものです。
通常、「外部スキーマ」「概念スキーマ」「内部スキーマ」で定義され、データベース管理システムによってスキーマが違っています。抽象的で分かりづらい概念ではありますが、データベースの構築には欠かせないものなので、ここで覚えておきましょう。
ミツモアで最適なデータベースを探してみよう!
ミツモアのソフトウェア診断なら、最適なデータベースがすぐに見つかります。
業種など各種要件を質問ベースで回答していくだけで、希望条件に基づいたデータベースを自動で分析。あなたにぴったりの製品と料金プランを提案します。
データベースの比較が最短2分で完了
ミツモアなら簡単な質問に答えるだけで製品比較が最短2分で完了。
業種や欲しい仕様などの簡単な質問に答えるだけで、あなたの会社に最適な製品が必ず見つかります。質問はパソコンやスマートフォンでお手軽に答えることが可能です。
あなたにぴったりの料金プランが届く
見積もりを依頼すると、会社規模や指針に合った最大5つの製品で概算金額、おすすめプランの見積もりが届きます。
その見積もりの中から、条件にあったプランを探してみましょう。もちろん見積もり費用は無料です。