公開:

AWR(Automatic Workload Repository)とは?意味をわかりやすく簡単に解説

text: XEXEQ編集部


AWR(Automatic Workload Repository)とは

AWRはAutomatic Workload Repositoryの略称で、Oracleデータベースの性能情報を自動的に収集・保存するための仕組みです。AWRはデータベースの性能情報を定期的に収集し、その情報をリポジトリに保存します。

AWRはデータベースの性能問題を特定するための重要な情報源となります。AWRに保存された情報を分析することで、パフォーマンスボトルネックの特定や、SQLの最適化、リソースの適切な配分などに役立てることができます。

AWRはスナップショットと呼ばれる機能を使用して、指定した間隔でデータベースの状態を記録します。デフォルトでは1時間ごとにスナップショットが取得され、8日分のデータが保持されます。

AWRのデータはOracleが提供する各種のレポートやツールで活用できます。代表的なものとして、AWRレポートがあります。AWRレポートは指定した期間のデータベースの性能情報を詳細に分析し、問題点や改善点を示してくれます。

AWRを効果的に活用するには適切な設定と運用が必要です。スナップショットの取得間隔や保持期間はシステムの特性に合わせて調整する必要があります。また、AWRデータの定期的な分析と、それに基づく改善アクションが重要となります。

AWRスナップショットの活用方法

「AWRスナップショットの活用方法」に関して、以下3つを簡単に解説していきます。

  • AWRスナップショットの取得タイミングの設定
  • AWRスナップショットを使った性能分析
  • AWRスナップショットのデータ保持期間の管理

AWRスナップショットの取得タイミングの設定

AWRスナップショットの取得タイミングはシステムの特性に合わせて適切に設定する必要があります。デフォルトでは1時間ごとに取得されますが、システムの負荷が高い場合はより短い間隔で取得することを検討します。

一方、負荷が低いシステムでは取得間隔を長くすることで、ストレージの消費を抑えることができます。取得タイミングの設定はDBCAツールや、DBMS_WORKLOAD_REPOSITORY パッケージを使って変更できます。

スナップショットの取得タイミングは定期的に見直し、最適な設定を維持することが重要です。システムの利用状況の変化に合わせて、柔軟に調整していく必要があります。

AWRスナップショットを使った性能分析

AWRスナップショットにはデータベースの性能に関する膨大な情報が含まれています。この情報を活用して、パフォーマンスの問題点を特定し、改善策を立案することができます。

AWRレポートはスナップショットのデータを分かりやすく可視化してくれます。トップ5のイベントやSQLなど、ボトルネックになっている要因を特定するのに役立ちます。また、時系列でのリソース使用状況の推移を確認することもできます。

AWRレポートは定期的に確認し、問題点の早期発見に努めることが大切です。システムの変更や、パフォーマンス低下の兆候があれば、速やかに分析を行い、対策を実施することが求められます。

AWRスナップショットのデータ保持期間の管理

AWRスナップショットはデフォルトでは8日分のデータが保持されます。この保持期間はシステムのストレージ容量と、データの分析に必要な期間を考慮して、適切に設定する必要があります。

長期間のデータを保持することで、パフォーマンスの傾向分析や、問題の原因特定がしやすくなります。ただし、ストレージの消費量も増大するため、バランスを取ることが重要です。

データの保持期間はDBMS_WORKLOAD_REPOSITORY パッケージを使って変更できます。定期的にデータをアーカイブし、長期間の分析に備えることも検討すべきでしょう。保持期間の設定はシステムの運用方針に沿って、適切に管理していく必要があります。

AWRレポートの種類と活用シーン

「AWRレポートの種類と活用シーン」に関して、以下3つを簡単に解説していきます。

  • AWR通常レポート
  • AWR比較レポート
  • AWRASHレポート

AWR通常レポート

AWR通常レポートは指定した期間のデータベース性能情報を包括的に示すレポートです。このレポートはsqlplusやOracle Enterprise Managerから生成できます。

AWR通常レポートではCPU使用率、I/O統計、トップSQLなど、様々な性能メトリクスを確認できます。定期的にこのレポートを確認することで、データベースの全体的な状態を把握し、問題の早期発見につなげることができるでしょう。

通常運用時の性能動向の確認や、問題発生時の原因調査の起点として、AWR通常レポートは広く活用されています。システムの特性に合わせて、適切な頻度でレポートを生成し、確認することが大切です。

AWR比較レポート

AWR比較レポートは2つの異なる期間のAWRデータを比較するレポートです。このレポートにより、性能の変化や、問題の発生前後の状態を詳細に分析することができます。

例えば、アプリケーションの変更前後のAWRデータを比較することで、変更によるパフォーマンスへの影響を確認できます。また、問題発生前と発生時のデータを比較することで、原因となったSQLやイベントを特定しやすくなります。

AWR比較レポートは変更管理や問題解決の場面で威力を発揮します。適切な比較対象を選択し、重要な差分に着目することで、効率的な分析が可能となるでしょう。

AWRASHレポート

AWRASHレポートはデータベースでActive Session History(ASH)が有効になっている場合に生成できるレポートです。ASHはアクティブなセッションの情報を秒単位で収集する仕組みで、より詳細な性能分析が可能となります。

AWRASHレポートでは特定の期間におけるセッションの状態遷移や、待機イベントの詳細な内訳を確認できます。これにより、ボトルネック箇所を細かく特定し、具体的な対策を立てやすくなります。

AWRASHレポートはパフォーマンスの詳細分析や、難解な問題の解決に活用できます。ただし、ASHの情報収集にはオーバーヘッドがあるため、常時有効にするかどうかはシステムの特性を考慮して判断する必要があります。

AWRデータの長期的な傾向分析

「AWRデータの長期的な傾向分析」に関して、以下3つを簡単に解説していきます。

  • AWRデータの長期保持の重要性
  • AWRデータを使った傾向分析の方法
  • 傾向分析による予兆検知と予防保守

AWRデータの長期保持の重要性

AWRデータはデフォルトでは8日分が保持されますが、長期的な傾向分析のためにはより長い期間のデータを保持することが重要です。数ヶ月から数年にわたるAWRデータを蓄積することで、システムのパフォーマンスの変化を俯瞰的に捉えることができます。

長期的なデータ保持にはストレージコストがかかりますが、その価値は大きいと言えます。過去のデータを参照することで、現在の状況をより深く理解し、適切な意思決定を行うことができるでしょう。

AWRデータの長期保持はシステムの継続的な改善と安定運用に欠かせない取り組みです。保持期間とコストのバランスを考慮しつつ、できる限り長期のデータを蓄積していくことが望ましいと言えます。

AWRデータを使った傾向分析の方法

AWRデータを使った傾向分析では時系列でのパフォーマンスメトリクスの推移を確認します。CPU使用率、I/O負荷、待機イベントなどの主要な指標について、長期的な変化をグラフ化することで、傾向を視覚的に把握できます。

傾向分析では絶対値だけでなく、変化率にも着目することが重要です。急激な変化やパターンの異常は問題の予兆を示している可能性があります。また、周期的なパターンを見つけることで、ワークロードの特性を理解することもできます。

AWRデータの傾向分析はOracleが提供するAWR Warehouseや、サードパーティ製のツールを活用することで効率化できます。定期的に分析を行い、システムの健全性を確認することが大切です。

傾向分析による予兆検知と予防保守

AWRデータの傾向分析は問題の予兆検知と予防保守に大きく貢献します。パフォーマンスの悪化傾向やリソース枯渇の兆候を早期に発見することで、深刻な問題に発展する前に対策を打つことができます。

例えば、CPU使用率の緩やかな上昇傾向を検知した場合、将来的なCPUリソースの不足を予測し、増強計画を立てることができます。また、特定のSQLの実行時間が徐々に伸びている場合、SQLチューニングによる改善を検討できます。

傾向分析に基づく予防保守はシステムの安定性と性能を維持するために欠かせません。問題の兆候をいち早く捉え、適切な対策を講じることで、ビジネスへの影響を最小限に抑えることができるでしょう。日々のAWRデータのモニタリングと分析を習慣化し、システムの健全性を維持していくことが重要です。

参考サイト

  1. Oracle. https://www.oracle.com/jp/
「コンピュータ」に関するコラム一覧「コンピュータ」に関するニュース一覧
ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。