最適なREDOログサイズを見切る

REDO ログメンバサイズは、明確な基準はないので一概には言えず、
業務量から判断して、決定されるサイズである。
一般的には、100MB ~ 1GB 程度 で収まるシステムが大半ではないだろうか。

システムが最大限のパフォーマンスを発揮できる最適なサイズを、設計段階で
導出するのは容易くない。H/W の性能に依存するウエイトも大きい。

では、運用後なら楽か?と言えば確かにそうだが、業務量の増減で最適なサイズは変わるもの。
それに稼動前 DB 環境とは違って、やたらに設定変更ができないのが普通。

パフォーマンスにかなりの影響を与える

REDO ログファイルのサイズは、設定値次第で性能がガラリと変わるので、重要なポイント。
SQL で実行計画を取って、インデックスを追加したりリビルドしたり・・・などなど、
モジュールレベルのチューニングに躍起にならなくても、すんなり向上することもある。

例えば数十万~数百万件クラスの DML を実行した場合、その影響は顕著に表れる。
REDO ログのサイズを最適化しただけで、処理時間が大幅に改善されるということもある。

あくまで目安だが実測値でいうと、変更前に50分かかったいた処理が REDO ログサイズを
3倍に増やしただけで20分に短縮したという経験がある。

サイズによる弊害も知る

当然、大きければ良いというものではない。(システムの設計は妥当でなかっただけ)。

大きすぎる場合、ログスイッチは頻繁ではないものの、アーカイブされるサイズが巨大。
負荷がかかってパフォーマンスが低下するし、破損した際の被害範囲も広くなる。
(破損については多重化することでリスクヘッジする。)

逆にサイズが小さすぎた場合、ログスイッチが頻繁に行われるため、大量の
アーカイブログファイルが出力され、ディスク I/O が増加する。

変更サイズの決定は、DBA としての手腕を問われるところ。
事前の性能検証は大変骨が折れるが、変更(再作成)そのものは至って簡単。

関連記事