OracleとEBSとSiebelと駄文と。

Oracle製品ファンとして、見たこと聞いたこと調べたことを綴っています。

コンカレントが遅くなったときにやること(2)

だいぶ間があいてしまいました。これだけ間があけばコンカレントも終わるか強制終了の道をたどるか、どちらかでしょう。では恥さらしの続き。

詳細情報を収集

  • いつから遅くなったのか?
    コンカレントの履歴やユーザーさんヒアリングで。
  • 統計情報は取得しているか?
  • パフォーマンステスト時と何が違うのか?
    DB初期化パラメータ、データ量など。データ分布が全然違うなどもあるかも。

(コンカレントが終わったら)結果分析

無事に結果が取得できればいいのですが。SQLトレースが取得できていればtkprofで整形してみると、実行計画なんかからSQL改善のヒントが得られるかも。AWRのレポートでは、待機イベントやメモリ系のアドバイザが「初期化パラメータを変更せよ」のサインをだしているかも。
SQLトレースだと初期化パラメータ変更って対応は出てこないだろうし、逆もまた難しい気がする・・・両方必要なんでしょうね。

テスト環境で改善策を試してみる

テスト環境で再現するようなパフォーマンス劣化であれば、改善策を試してみます。try&errorです。よさげなら、しかるべき手続きを経て本番環境へ。
結局遅くなる理由は千差万別なので「こうすれば直るよ!」とは言えないんですが・・・それにしてもなんだろうこのがっかりエントリ。