とあるITエンジニアたちの備忘録

新米エンジニア5人がお送りする、ちょっとためになる話

Oracle データベースのアーキテクチャ

みなさん、こんにちは。

どうも、さいばーきゃっとです。

 

今回は、Oracleデータベースのアーキテクチャについて、解説していきます。 

まずは、日常会話ではあまり使用しない「アーキテクチャ」の用語について、簡単に説明しようと思います。

そもそも「アーキテクチャ」とは、「建築」、「建築術」、「建築様式」、「構造」などの意味を持つ英単語ですが、コンピュータ分野では、「ハードウェア」、「ソフトウェア」の基本設計や設計思想などを指すことが多いです。

IT業界では、「アーキテクチャ」の用語の出現率が多いので、まずは「アーキテクチャ=構成」という認識で、この用語に慣れていきましょう。

 

Oracleデータベースサーバの構成

Oracleデータベースサーバーは、「Oracleインスタンス」と、「Oracleデータベース」から構成されます。さらに、「Oracleインスタンス」は「SGA(システムグローバル領域)」というメモリー構造と、「バックグラウンドプロセス」というプロセス構造から構成されます。一方、「Oracleデータベース」は、「制御ファイル」、「データファイル」、「REDOログファイル」という記憶域構造(ファイル群)から構成されます。

 

 Oracleデータベースサーバーの構成要素(全体像)


 

f:id:cloudy0901:20160913013504p:plain

 

モリー構造

Oracleのメモリー構造は、「SGA(システムグローバル領域)」と、「PGA(プログラムグローバル領域)」から構成されます。

今回は、「SGA(システムグローバル領域)」の代表的なメモリー領域をまとめました。

  • 共有プール
  • データベースバッファキャッシュ
  • REDOログバッファ
  • ラージプール
  • JAVAプール
  • Streamsプール

 

プロセス構造

Oracleのプロセス構造には、「ユーザープロセス」、「サーバープロセス」、「バックグラウンドプロセス」があります。

今回は「バックグラウンドプロセス」の種類をまとめました。

  • DBWn(データベースライター)
  • LGWR(ログライター)
  • CKPT(チェックポイント)
  • SMON(システムモニター)
  • PMON(プロセスモニター)
  • ARCn(アーカイバー)
  • RECO(リカバラ
  • MMON(マネージメントモニター)
  • MMAN(メモリーマネージャー)

 

記憶域構造

 Oracleの記憶域構造には、「物理構造」と「論理構造」があります。

今回は、「物理構造」の1つであるOracleデータベースを構成するファイルをまとめました

  • 制御ファイル
  • データファイル
  • REDOログファイル

  

まとめ

まずは、用語から覚えることから始めましょう。

最初の段階から、用語の「概念」、「役割」、「機能」について、理解する必要はありません。

Oracleデータベースのアーキテクチャは、数多くの概念(用語)が存在しますので、「記憶」→「理解」のフェイズで学習すると、Oracleデータベースを理解しやすいと思います。