データベースと秋の空・RDBMS掌握術!

第1回 RDBMSが、SQLを見てどう思うのか

この記事を読むのに必要な時間:およそ 2.5 分

さて,前置きが終わって連載の第1回です。今回は,いちばん基本になる利用者がSQLを与えた時のRDBMS側の処理についてお話ししましょう。これは人間から見える部分においては,「SQLを投げる」「結果が投げ返される」というシンプルなことしかありません。しかし,もちろん実際には様々な処理がされているのです。

これをより細かくひもといていきますと,「サーバ内でSQLがどのように処理されるか?」という流れを理解することができます。流れを理解すれば,SQLが実行される時に起こることについても理解が深まるでしょう。

RDBMSでの処理の流れ

RDBMSにSQLが渡されたときに,実際にどのような処理がされているのかを示したのが次の図「問い合わせ実行の流れ」です。この図のように,SQLは,

  • パーザで構文解釈され,
  • プランナで実行計画を立て,
  • エグゼキュータで実行する。

という3段階の流れによって内部的に実行されます。まずは,この大きな流れに沿って追っていき,実際にSQL文がどのように解釈され,実行されるか,大まかなところを読み解いていきます。

図1 問い合わせ実行の流れ

図1 問い合わせ実行の流れ

著者プロフィール

谷田豊盛(たにだゆたか)

国立明石工業高等専門学校卒。いったん公務員になるが,プログラミングが好きでコンピューター業界に転進。 PostgreSQLを触り出したのは6.3のころから。特にCygwinを使ったWindows環境で使っていたが,それが高じて現在ではPostgreSQLで飯を食うことに。

コメント

コメントの記入