Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は「アプリケーションのレスポンスが悪くなった事例とその対処方法」を解説します。Server)」で発生するトラブルについて、「なぜ起こったか」の理由とともに具体的な対処方法を紹介していきます。Serverのパフォーマンス問題に対応していくための情報収集の方法を解説してきました。今回からは実際のパフォーマンス問題対策のケーススタディに入ります。個々のトラブルはそれぞれ固有の条件下で起こりますが、大枠のストーリーは似たものが多いことから、典型的なパターンとして参考にしてください。RTM」をインストールした環境を想定して解説します。トラブルの実例:自社が、ある企業を買収合併。それに伴い、新たなオフィスや営業所を自社システムに加えることになった。予定していたシステム更改のタイミングと併せて、新しく参加するオフィスを新システムに加えることにした。システム更改と増加のプロジェクトは無事完了。......したかのように見えたが、稼働直後から、特定のオフィスから「アプリケーションのレスポンスが悪くなった」「タイムアウトエラーが発生するようになった」といった苦情が上がってきた。新システムから旧システムへの切り戻しも検討された。新システムでは業務が稼働しており、データが更新されている。切り戻しを行うとしても、新システムで更新されたデータを旧システムに反映することは技術的に困難であることに加え、新システム稼働後のデータは既に捨てられない。稼働後の新システムで何とか対策する方針となった。目次に戻るトラブルの原因を探るこの企業はこれまでも、営業所や支店の追加とともにアプリケーションサーバを追加して、アプリケーションリソース不足に対応していました。新システムでは、合併のタイミングで「既存のシステムを更改」しつつ、そのシステムへ「追加されたオフィスのシステムが参加」するという2つの大きなシステム変更が行われました。一般的にシステム更改プロジェクトは、不測の事態に備えて旧システムへ切り戻す方法を用意しているはずです。それは、「新システムで業務が稼働するまで」に起きる状況を想定していることがほとんどです。新システムが稼働してからしばらく時間が経過したデータを旧システムとマージするのは難しい作業となります。この事例では、データベース管理者は「新システムの稼働」と「新オフィスの参加」の状況を切り分けて問題解決をする必要があります。トラブルシューティングではまず、「正常時」と「異常時」で何が違うのかを比較します。ここで着目されたのは、パフォーマンス遅延のトラブルが発生しているのは「特定のオフィスから」ということです。遅延は、新しく参加したオフィスのみで発生していることが分かりました。このことから、新システムのデータベースが原因になっている可能性は低くなりました(図29-2)。切り分けの考え方を図示したところ。この状況から、新システムのデータベースが原因である可能性は低くなった念のため、データベースサーバの状況をチェックします。パフォーマンスログを確認しても、明確なリソース不足はなく、サーバリソースには問題がありませんでした。続いて、アプリケーションから「遅い処理を特定」し、トレースを使ってデータベース内部での処理時間を測定します(図29-3)。遅延発生時点のトレースログを確認トレースログのDuration列から、該当する処理が終了するまでに要した時間を確認できます。Server内では122ミリ秒で終了しています。アプリケーションの動作は秒単位で遅いにもかかわらず、データベース側の処理は遅くはない。トラブルの要因はデータベースではなく、クライアント側にあることを特定できました。特徴の1つとするセキュリティ対策機能のポイントと目指すところをキーパーソンに聞いた。そもそも、リレーショナルデータベースとは何か?データベースを基礎から勉強し理解を深めていくことは簡単なことではありません。本連載では、データベースに対するハードルを少しでも低くするために、初心者の方に必要なデータベースの基本から、障害対策やチューニングといった実践に即した内容までを幅広く解説していきます。今回は、データベースの役割と、それを管理するソフトウェアであるDBMSの基本機能について解説します。複数の条件を指定してSELECT文を実行する前回は、SELECT文の初歩の初歩を解説しました。Database運用の鍵となるトラブル対処法について紹介していきます。第1回、第2回では情報収集の要となるログについて見ていきます。ログの出力情報は10gと11gとでは大きく異なる点がありますので、それぞれについても確認しておきましょう。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。