Oracle

バックグラウンドプロセス~縁の下の力もち?~

バックグラウンドプロセスとは?

バックグラウンドプロセスとは言葉の通り、バックグラウンドで動くプロセスのことです。

まず、ここで「プロセス」という言葉をさらっと使っていますが突き詰めると少し話が長くなるのでここではざっくり「処理」と置き換えてもらってかまいません。

Oracleに限らず、ほとんどのコンピューターの制御というものは、効率的に処理を完了させるため、表に見えている処理とは別に、裏方として処理を行っています。

Oracle用語では表に見えている処理のことをサーバープロセス。
裏方として処理を行っていることをバックグラウンドプロセスと呼びます。
まぁ「縁の下の力もち」とでもいいましょうか?

現実世界でもよくある光景で例えると飲食店が挙げられます。
注文を聞いたりレジを行ったりする人がここでいう、サーバープロセス。料理をする人がバックグラウンドプロセスという関係になります。
で、バックグラウンドプロセスというのは1種類ではなく様々なバックグラウンドプロセスがあります。先ほど例に挙げた飲食店でいうと、料理する人以外にも掃除する人、皿洗いをする人、原材料を調達する人などがいます。料理する人の中にも、実際調理する人や、下ごしらえをする人など細かく分かれている場合もありますね。
よく試験で登場するバッググラウンドプロセスは以下の通りです。
DBWn(データベースライター)
LGWR(ログライター)
CKPT(チェックポイント)
SMON(システムモニター)
PMON(プロセスモニター)

各バックグラウンドプロセスについて、Oracleの試験ではよく出題されます。
Oracleの市販のテキストや過去問題を丸暗記すれば点数はとれるとは思いますが、丸暗記ではなく、各プロセスがどんな役割をしているのか整理して頭の中に入れておけば忘れずらい上に、スキルとして使えるので、理解重視で覚えていくことをお勧めします。これから各バックグラウンドプロセスも1つずつ解説していきます。