REDOログに関する検証 その11

投稿日: 2001年9月19日

< REDOログに関する検証 その11 > ペンネーム つけまい

— 内部構造を理解し
パフォーマンスの向上に役立てる —

前回は、書き込みを行うタイミングによって、必要とされるブロック数に差が
生まれてしまうという現象についての解説を行った。

今回は、UPDATE、INSERT、DELETEのそれぞれ3つの処理を行った際の、REDOに対
する書き込み量の違いについての解説を行う。

****** 書き込み量の違い(UPDATE、INSERT、DELETE) *******

UPDATE 処理をすると以下のDUMPが表示されます。

INSERT 処理をすると以下のDUMPが表示されます。

DELETE 処理をすると以下のDUMPが表示されます。

上記の図は、テーブルWORK03に対してUPDATE、INSERT、DELETEのそれぞれ3つの
処理を行った際に生成されたREDOレコードのDUMPを抜粋したものである。

各DUMPの先頭にある網掛け部分は、その処理で生成されたREDO情報のサイズを
表している。

            16進数    10進数

UPDATE         148       328 |
INSERT         154       340 | Redo size
DELETE         1b0       432 |

この結果から言えることは、UPDATE、INSERT、DELETE共に、REDOログ・ファイ
ルへ書き込まれる情報量に、さほど差が無いということである。つまり、REDO
ログ・ファイルへの書き込みは、OSのブロック単位(512バイト)で行われるた
め、これらの3つの処理を「パフォーマンス」という観点から見た場合、差は全
く生まれないことになる。ただし、処理件数の違いや、極端に項目数の多いテー
ブルなどは別である。

次回は、CREATEおよびDROP処理を行った際、UPDATE、INSERT、DELETE処理と比
べ、REDOに対して大量に書き込みが発生するという現象についての解説を行う
予定である。

以上 近鉄M6点灯に沸く茅ヶ崎にて(つけまいだけです)