検索
連載

データベースの「論理構造」とは何かゼロからのリレーショナルデータベース入門(3)(3/3 ページ)

リレーショナルデータベースのデータ構造は、大きく「物理構造」と「論理構造」に分けられます。前回解説したデータファイル、オンラインREDOログファイル、制御ファイルなどのRDBを構成するファイルが物理構造です。今回はもう1つのデータ構造である、「論理構造」の役割を解説します。【更新版】

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

「エクステント」の役割

 エクステントとは、連続したデータブロックで構成される領域を確保する単位のことです。例えば「社員表」を作成して表にデータをINSERTすると、領域はエクステント単位で確保され、その中のデータブロックに1行1行のデータが格納されていきます。もちろん、データが格納されていないデータブロックは空の状態です(図6)。

エクステントは連続したデータブロックから構成される 図6 エクステントは連続したデータブロックから構成される

 その後、データが追加されてエクステント単位で確保したデータブロックが全て使用されると、同じ表領域内に次のエクステントが確保されます。必要なのはデータブロック1つ分だけでよい場合であっても、領域はエクステント単位で確保されます(図7)。

領域は常にエクステント単位で確保される 図7 領域は、常にエクステント単位で確保される

 なお、表領域には異なる複数の表を格納できるため、通常は図8のように複数の表のエクステントが混在することになります。

photo 図8 表領域には、複数の表のエクステントが含まれる

「論理構造」のまとめ

 今回は、Oracle Databaseでの論理単位を例に、データベースの論理構造を解説しました。論理構造のファイルは、物理構造のOSファイルのように「見えるファイル」ではないのでイメージしにくいものかもしれませんが、論理構造への理解は、今後、データベースの領域管理を行っていく上で非常に重要です。以下のポイントで復習をしておきましょう。

論理構造のポイントまとめ

  1. 表領域とは、データファイルをグループ化した単位である
  2. 1つの表は、表領域内でセグメント単位で管理される
  3. セグメントとは、表などに確保されたエクステントの集合体である
  4. エクステントとは、連続したデータブロックで構成される領域確保の単位である
  5. データブロックとは、行データを格納する領域であり論理構造の最小単位である

更新履歴

【2016/10/5】2016年時点の状況に合わせて、内容を追記更新しました

【2008/07/16】初版公開


筆者紹介

石尾覚

株式会社アシスト サービス事業部教育部所属。Oracle研修の講師としてリカバリーやチューニングなど幅広い研修を担当。ていねいで誠実な対応が受講者に高い評価を得ている。群馬県をこよなく愛している

初版:井坂太

株式会社アシスト 支援統括部教育部(当時)。データベース管理者コースを中心に講師を担当。サポートセンター時代に培った障害対応の体験談を講義に交えるなど、常に受講者の立場に立った講義には定評がある。趣味はサーフィンと子育て


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る