Open2

DBの仕組みとSQLを理解する

kohinokohino

DBMSのアーキテクチャ

SQLインターフェース - DBMS - DB

参考: ミック .「SQL実践入門──高速でわかりやすいクエリの書き方」. 2015年

DBMS

  1. クエリ評価エンジン
     ・アクセスメソッド
  2. 記憶領域管理
     ・バッファマネージャ
     ・ディスク容量マネージャ
  3. 同時実行制御管理
     ・ロックマネージャ
     ・トランザクションマネージャ
  4. リカバリマネージャ

DB

◎システムカタログ
 ・インデックスファイル
 ・データファイル

kohinokohino

DBMS

クエリ評価エンジン

インターフェースから受け取ったSQLを解釈し、どのように記憶領域にアクセスしデータを取得するかを決める( = 実行計画、実行プラン)。実行計画に基づいたデータへのアクセス方法がアクセスメソッド。
関連: パーサ、オプティマイザ、プラン実行機能、演算評価機能

記憶領域管理

バッファマネージャ

バッファ(二次記憶装置、メモリ)をどのように扱うかを管理する。
ディスクにアクセスするより高速だが、容量は小さく、揮発領域である。
関連: データキャッシュ、ログバッファ、ワーキングメモリ

ディスク容量マネージャ

データを永続化する(ディスクに保存する)にあたって、どこにどのようなデータを保存するかを管理し、データに対する読み出し / 書き込みを制御する

同時実行制御管理

トランザクションマネージャ

ロックマネージャ

トランザクションという単位でDBへのアクセス処理を管理している。
多くのユーザーが一つのDBに対してアクセスしても処理と処理結果に対する整合性を保てるように、複数のトランザクション同士でデータの整合性を保てるようにし、必要であればデータにロックをかける。

リカバリマネージャ

定期的にバックアップを取り、データ復旧を行う