• 検索結果がありません。

この章では、Oracle Databaseの自動パフォーマンス診断およびチューニング 機能について説明します。

この章のトピックは、次のとおりです: 自動データベース診断モニターの概要 ADDMの設定

ADDMを使用したデータベース・パフォーマンスの問題の診断 ADDMビュー

関連項目:

Oracle Enterprise Manager Cloud Control (Cloud Control)で、自動データベース診断モニターを使用し てデータベースの診断およびチューニングを行う方法の詳細は、『Oracle Database 2日でパフォー マンス・チューニング・ガイド』を参照してください

自動データベース診断モニターの概要

自動ワークロード・リポジトリ(AWR)には、Oracleデータベースのパフォーマンス関連統計が格納 されます。自動データベース診断モニター(ADDM)は、AWRデータの定期的な分析、パフォーマ ンスに関する問題の根本原因の特定、問題を修正するための推奨事項の提示、問題のないシステ ム領域の特定を行う診断ツールです。AWRはパフォーマンスに関する履歴データのリポジトリで あるため、ADDMでは、イベントの後にパフォーマンスの問題を分析でき、時間とリソースをか けて問題を再現する必要がありません。

多くの場合、データベース管理者はパフォーマンスの問題に関して通知を受け取った時点で、ま ずADDM出力を調べる必要があります。ADDMには次の利点があります。

デフォルトで1時間ごとの自動パフォーマンス診断レポート

数十人のチューニング専門家に基づく問題の診断

問題の影響と推奨事項による利点の時間ベースの数量化 症状ではなく根本的な原因の特定

問題の根本的な原因の処理に関する推奨事項 システムのうち正常な領域の特定

診断処理中のシステムに対する最小限のオーバーヘッド

チューニングは反復的なプロセスであり、ある問題を修復したことが原因でシステムの他の部分 がボトルネックになる場合があります。ADDM分析による利点があるとしても、システム・パフ ォーマンスが許容レベルに達するまでには複数のチューニング・サイクルを必要とする場合があ ります。ADDMによる利点は本番システムに適用されるのみでなく、開発およびテスト・システ ムでもパフォーマンスの問題を早期に警告できます。

この項では、次の項目について説明します。

ADDM分析

Oracle Real Application ClustersでのADDMの使用方法 マルチテナント環境でのADDMの使用

リアルタイムADDM分析 ADDMの分析結果

ADDMの分析結果の確認: 例

ノート: プラガブル・データベース(PDB)とともにADDM機能を使用している場合には、

データ可視性および権限の要件が異なります。ADDM機能などの管理機能がマルチテナ ント・コンテナ・データベース(CDB)で機能する仕組みの詳細は、Oracle Multitenant管理 者ガイドを参照してください。

ADDM 分析

ADDM分析は、AWRスナップショットのペアと、同じデータベースのインスタンスのセットに対 して実行できます。AWRスナップショットのペアにより分析の期間が定義され、インスタンスの セットにより分析のターゲットが定義されます。

Oracle Real Application Clusters (Oracle RAC)を使用している場合、ADDMには次の3つの分析モード があります。

データベース

データベース・モードでは、ADDMによりデータベースのすべてのインスタンスが分析され ます。

インスタンス

インスタンス・モードでは、ADDMによりデータベースの特定のインスタンスが分析されま す。

部分

部分モードでは、ADDMによりすべてのデータベース・インスタンスのサブセットが分析さ れます。

Oracle RACを使用しない場合は、存在するデータベース・インスタンスが1つのみであるた

め、ADDMはインスタンス・モードでのみ動作します。

ADDM分析はAWRスナップショットが作成されるたびに実行され、結果がデータベースに保存さ れます。ADDMにより分析される期間は、最新の2つのスナップショットにより定義されます(デ フォルトでは最後の1時間)。ADDMでは、インスタンス・モードで指定されたインスタンスが常 に分析されます。Oracle RAC以外の環境または単一インスタンス環境の場合、インスタンス・モ ードで実行される分析は、データベース全体の分析と同じになります。Oracle RACを使用してい る場合、「Oracle Real Application ClustersでのADDMの使用方法」に記載されているとお

り、ADDMではデータベース・モードでもデータベース全体を分析します。

ADDMで分析が完了すると、Cloud Control、DBMS_ADDMパッケージ・サブプログラム、また はDBA_ADDM_*ビューとDBA_ADVISOR_*ビューのいずれかを使用してADDM結果を表示できま す。

ADDM分析は、トップダウン方式で実行され、最初に症状を識別し、次にパフォーマンスの問題 の根本的な原因に到達するまで精査します。分析の目標は、DBtimeと呼ばれる1つのスループッ ト・メトリックを減少させることです。DBtimeは、データベース・パフォーマンスの基本的な 測定基準で、データベースがユーザー・リクエストの処理に費やした累積時間を表します。これ には、アイドル状態でないすべてのユーザー・フォアグラウンド・セッションの待機時間

とCPU時間が含まれます。DBtimeは、V$SESS_TIME_MODELビューおよ びV$SYS_TIME_MODELビューに表示されます。

DBtimeの短縮により、データベースで同じリソースを使用してサポートできるユーザー・リク エストの数が増加し、スループットが改善されます。ADDMによりレポートされる問題は、それ に関係するDBtimeの量でソートされます。DBtimeの大部分に関係しないシステム領域は、正常 領域としてレポートされます。

ADDMでは、次のようなタイプの問題が考慮されます。

CPUのボトルネック - システムCPUがOracle Databaseまたは他のアプリケーションによりバイ ンドされているかどうか。

過小なメモリー構造 - SGA、PGA、バッファ・キャッシュなど、Oracle Databaseメモリー構 造が十分なサイズに設定されているかどうか。

I/O能力の問題 - I/Oサブシステムが予想どおりに動作しているかどうか。

高負荷のSQL文: システム・リソースを過剰に使用しているSQL文があるかどうか。

高負荷のPL/SQL実行およびコンパイルと、高負荷のJavaの使用

Oracle RAC固有の問題 - グローバル・キャッシュのホット・ブロックおよびオブジェクトの 問題、相互接続遅延の問題があるかどうか。

アプリケーションによるOracle Databaseの不適切な使用 - 不適切な接続管理、過剰な解析ま たはアプリケーション・レベルのロック競合による問題があるかどうか。

データベース構成の問題 - 不適切なログ・ファイル・サイズの設定、アーカイブの問題、過 剰なチェックポイントまたは不適切なパラメータ設定を示す兆候があるかどうか。

同時実行性の問題 - バッファ・ビジーの問題があるかどうか。

様々な問題領域のホット・オブジェクトおよび上位SQL。

ノート: これは、ADDMの分析で考慮されるすべての問題タイプの包括的なリストでは

ありません。

ADDMでは、システムの正常領域もドキュメント化されます。たとえば、システムのパフォーマ ンスにほとんど影響しない待機イベント・クラスが識別され、早期段階でチューニング考慮事項 から削除されます。これにより、システム全体のパフォーマンスに影響しない項目に費やされる 時間および労力が節約されます。

関連項目:

V$SESS_TIME_MODELおよびV$SYS_TIME_MODELビューの詳細は、『Oracle Databaseリフ ァレンス』を参照してください。

時間モデル統計およびDBtimeの詳細は、「時間モデル統計」を参照してください サーバー・プロセスの詳細は、『Oracle Database概要』を参照してください。

Oracle Real Application Clusters での ADDM の使用方法

Oracle RACを使用する場合は、データベース分析モードでADDMを実行して、すべてのデータベ

ース・インスタンスのスループット・パフォーマンスを分析します。データベース・モードで は、ADDMは、DB時間をすべてのデータベース・インスタンスのデータベース時間の合計とみな します。データベース分析モードを使用すると、データベース全体にとって重要なすべての検出 結果が単一のレポートに表示されます(各インスタンスの個別レポートは表示されません)。 データベース・モードのレポートには、データベース・リソース(I/Oやインターコネクトなど)に 関する検出結果が含まれます。レポートには、データベース全体にとって重要な場合は、様々な インスタンスからの検出結果も集計されます。たとえば、単一のインスタンスに対するCPU負荷

が高く、データベース全体に影響する場合、データベース・モード分析に、問題の原因である特 定のインスタンスを示す検出結果が表示されます。

関連項目:

Oracle RACでのADDMの使用の詳細は、Oracle Real Application Clusters管理およびデプロイメン ト・ガイドを参照してください

マルチテナント環境での ADDM の使用

Oracle Database 12c以降、ADDMはマルチテナント・コンテナ・データベース(CDB)のルート・コ ンテナでデフォルトで有効になっています。Oracle Database 19c以降では、プラガブル・データベ ース(PDB)でもADDMを使用できます。

CDBでは、ADDMは非CDBでの動作と同様に機能します。つまり、ADDM分析はAWRスナップシ ョットがCDBルートまたはPDBで取得されるたびに実行され、ADDM結果はスナップショットが 取得されたのと同じデータベース・システムに格納されます。ADDMにより分析される期間は、

最新の2つのスナップショットにより定義されます(デフォルトでは最後の1時間)。

ADDMで分析が完了したら、次のいずれかの方法を使用してADDM結果を表示できます。

Enterprise Manager Cloud Control (Cloud Control)の使用 DBA_ADDM_*ビューおよびDBA_ADVISOR_*ビューの使用 ノート:

CDBルートではADDMはデフォルトで有効化されています。

PDBでは自動AWRスナップショットがデフォルトで無効になっているため、デフ ォルトではADDMはPDBで機能しません。PDBでADDMを使用するには、PDBで自 動AWRスナップショットを有効にする必要があります。

現在のコンテナがCDBルートであるユーザーは、CDB全体のADDM結果を表示で きます。ADDM結果には、複数のPDBに関する情報が含まれる場合がありま

す。PDBが切断されていると、PDBに関連するADDM結果は含まれません。現在の コンテナがPDBである場合、CDBルートに格納されているADDM結果を表示するこ とはできません。

PDBに対するADDM結果では、PDB固有の結果および推奨事項のみが提供されま す。現在のコンテナがPDBであるユーザーは、現在のPDBのみのADDM結果を表示 できます。ADDM結果には、CDB全体に該当する診断結果(バッファ・キャッシ ュ・サイズに関連するI/Oの問題など)は含まれません。

PDBでAWRスナップショットを有効にしても、CDBルートのADDMレポートは変 更されません