Home » database » チューニングのための問題分析

チューニングのための問題分析

チューニングのための問題分析についての解説

インデックスを作成すれば解決ですか?本当にそれが根本原因ですか?チューニングに限らず根本原因が判明すれば、その問題の80%は解決したと言ってもいいでしょう。それ程問題分析は重要であり、難しい作業です。

 

問題分析はチューニングの中でも最も重要

チューニングのための問題分析は、チューニングの最も重要なフェーズです。根本問題が分かれば、チューニングの80%は解決したと言っていいでしょう。技術的には解決できない問題はないと言います

どうして性能が出ない、出せないか、その原因が分かれば、その解決は費用の大小にもよりますが可能でしょう

問題分析の最も有力な情報はSTATSPACKもしくはAWRレポートです

これらの情報を以下の手順で見ていくと、問題の本質に近づけると思います

1.全体の把握

・Load Profile          → システムの負荷状況、特性、処理の傾向を確認する
・Instance Efficiency Indicators      → Oracleインスタンスの使用効率を確認する

 

2.待機イベントの分析

・Top 5 Timed Events  → 総待ち時間(Wait Time)の長い待機イベントトップ5を確認する
・Wait Events       → Foreground及びBackgroundの待機イベントの情報を確認する

 

3.I/Oの分析

・Segments by Logical Readsの分析  →論理I/Oの量を確認する
・Segments by Physical Readsの分析   →物理I/Oの量を確認する

 

4.SQLの分析

・SQL ordered by XXXの分析 →CPU負荷の高いSQL、I/Oの多いSQL等を確認する
・SQL文の分析         →上記のSQLソースを確認する

問題の多くはI/Oに起因しています。I/Oの負荷を重点的に見ていくと良いでしょう。そのI/Oも、論理I/Oか、物理I/Oかによって問題は異なります

さらにI/Oの多いテーブルやインデックスと負荷の高いSQLのテーブルやインデックスに関係があれば、さらに問題に近づくと思います

One thought on “チューニングのための問題分析

Comments are closed.