【図解】『データベースの基礎』RDBMS(リレーショナルデータベース)の構造

【図解】『データベースの基礎』RDBMS(リレーショナルデータベース)の構造 Oracle SQL入門

【本サイトではGoogleアドセンス、または、アフィリエイト広告を利用しています。】

データベースとは?

データベースとは、ある一定のルールで整理されたデータの集まりです。

ある一定のルールとは、決められた情報フォーマットや登録方法のことです。

普段インターネットをしたり、仕事でシステムを使ったりすると、
データを登録したり、データを検索して情報を仕入れることがあります。

 WEBで検索する人

データベースは、システムを開発する上で必須のものです。

では、どんな構造になっているんでしょう?

データベースの構造を知っておくことは、データを取り扱う上で重要なことです。
今から1つ1つ見ていきましょう!

RDB(リレーショナルデータベース)とは?

データベースにもいろいろと種類があるのですが、Webシステムの開発に使うデータベースのほとんどは
RDB(リレーショナルデータベース)と呼ばれるものです。

RDBとは、データを表の集まりとして管理するデータベースのことです。

 表計算アプリ

例えば、お店を経営するとなった時に、顧客情報や売上情報をExcelの表で管理することがありますが、
RDBにおけるデータ管理の考え方もそれと同じです。

表と表がお互いに関係を持つ構造で管理されるので、
リレーショナルデータベース、または、関係データベースとも呼ばれます。

RDBMS(リレーショナルデータベース管理システム)とは?

RDBMS(リレーショナルデータベース管理システム)とは、
RDBで取り扱うデータを管理するためのソフトウェアです。

RDBMSでは、SQLという言語を使ってデータを登録したり、削除したりします

同じものと勘違いされがちですが、RDBとRDBMSは別物です。
RDBのデータをRDBMSで管理するということで覚えておいてください。

RDBには主に以下のような種類があり、Webシステムの開発などでよく使われています。

RDBMSの主な種類
  • Oracle(オラクル)
  • PostgresSQL(ポスグレエスキューエル)
  • SQL Server(エスキューエルサーバー)
  • MySQL(マイエスキューエル)

サーバーとデータベースの関係

データベースはハードではなくソフトなので、サーバーの中にインストールされています。

つまり、サーバーのストレージ(HDDやSSD)の中にデータベースがソフトとして入っているということです。

一見あたり前のように思いますが、このイメージはとても大切です。

データベースの基礎_RDBMS(リレーショナルデータベース管理システム)

データベースと表領域とスキーマの関係

データベースの中には、表領域というものがあります。

表領域とは、RDBのデータを保存するために確保した領域のことです。

つまり、サーバーのストレージにデータを書き込むために、RDBがあらかじめ場所を予約しておくのです。

表領域は1つではなく、複数存在し、表領域によって役割が異なります。

データベースの基礎_表領域とスキーマ

また、表領域の中には、スキーマというものが定義されます。

スキーマとは、データベースの構造のことです。

1つのシステムを開発する時、複数の表を使ってそのデータを管理します。
複数の表はお互いに関係があって、線でつなぐと構成図が出来上がります。

つまり、それら全体を1つの構造として説明できる表の集まりのことをスキーマと呼んでいます。

また、スキーマは表領域をまたいで定義することができます
そして、表領域は複数のスキーマのデータを持つことができます
(お互いに束縛する関係にありません。)

スキーマとテーブルの関係

スキーマの中には、テーブルと呼ばれるものが複数あります。

テーブルとは、データのカテゴリごとに定義された表のことです。

もう少しわかりやすく例えると、
部屋の物を整理する時に、服、おもちゃ、本など、種類ごとに用意する箱のイメージです。

 段ボール

システムから入力されたデータは、SQLによってテーブルに登録されます。

テーブルが複数のスキーマをまたぐことはありません
いずれか1つのスキーマに所属します。

逆に、スキーマが別のスキーマのテーブルを保持することもありません。

データベースの基礎_スキーマとテーブル

テーブルとレコードとカラムの関係

テーブルの中には、レコードが複数あります。

レコードとは、テーブルの中にある1つのデータのことです。

例えば、果物屋さんの商品情報をテーブルにすると、「りんご」や「みかん」がそれぞれのレコードになります。

データベースの基礎_テーブルとレコードとカラム

また、レコードの中には、カラムが複数あります。

カラムとは、レコードが持つ1つの項目のことです。

例えば、人の情報を管理するレコードが1件あった時、「名前」や「年齢」がぞれぞれのカラムになります。

スキーマとユーザーの関係

データベースにおけるユーザーとは、スキーマにあるテーブルのレコードを扱う為のアカウントのことです。

簡単に言えば、データベースに入る為の会員証です。

データベースの基礎_スキーマとユーザー

スキーマとユーザーは1対1の関係になります。

常にセットで扱う必要があるので、ユーザーを削除する時はスキーマも同時に削除されます。

また、多くのデータベースでは、基本的にスキーマとユーザーは同じ名前で管理されます。

レコードにアクセスする流れ

ここまでの内容を踏まえて、私たちがデータベースの情報を見る流れを整理してみましょう。

データベースの基礎_アクセスの流れ
データベースアクセスの流れ
  • ① パソコンでシステムを操作する。
  • ② システムからサーバーにあるデータベースにアクセスする。
  • ③ 対象のデータを持つユーザーでスキーマに入る。
  • ④ スキーマにあるテーブルのレコードを参照する。

このような流れでデータベースのデータを見つけに行くんですね!

ちなみに、対象のスキーマやテーブル、レコードの指定は、SQLで行います

データファイルと表領域の関係

ここまで、RDBMSというソフトウェア上のデータ管理構造についてお話をしましたが、
サーバー上にできるファイルとデータベースの関係についても少しお話をしておきます。

パソコンのファイルと同じように、データベースのデータはサーバー上のファイルで管理されます。

データベースを扱う為にRDBMSでは表領域を作成しますが、
その際、サーバー上ではデータファイルと呼ばれるファイルが作成されます。

データファイルとは、表領域に保管するデータを扱う為のファイルです。

データベースの基礎_データファイルと表領域

データファイルは、1つの表領域のみ扱います

また、表領域には、複数のデータファイルが紐づくこともあります

スキーマは複数の表領域をまたぐ為、データファイルも複数またぐことになります。

データを参照する上でここまで意識して操作をする必要はありませんが、
データベースの管理操作を行う時に必要となるので覚えておくと役に立ちます。

データベースの基礎 まとめ

データベースの基礎について以下説明しました。

  • ・データベースについて
  • ・RDBとRDBMSについて
  • ・サーバーとデータベースの関係
  • ・データベースと表領域の関係
  • ・表領域とスキーマの関係
  • ・スキーマとテーブルの関係
  • ・テーブルとレコードの関係
  • ・レコードとカラムの関係
  • ・データベースアクセスの流れ
  • ・データファイルと表領域の関係

データベースの種類はいろいろありますが、基本的な仕組みや構造は基本的に同じです。

SQLを扱う際にも、データベースの構成を知っているのと知らないのとでは、
作成したSQL構文の効率性に大きな差が出てくるので、

ここに出てくる内容はしっかり理解しておくようにしましょう!

タイトルとURLをコピーしました