はじめに コース概要と目的 Oracle データベースのパフォーマンス問題の分析方法 解決方法を説明します 受講対象者 データベース管理者の方を対象としています 前提条件 データベース アーキテクチャ データベース マネジメント を受講された方 もしくは同等の知識 をお持ちの方 テキスト内の記述につ

Similar documents
第 5 章 結合 結合のパフォーマンスに影響を与える結合の種類と 表の結合順序について内部動作を交えて 説明します 1. 結合処理のチューニング概要 2. 結合の種類 3. 結合順序 4. 結合処理のチューニングポイント 5. 結合関連のヒント

はじめに コースの概要と目的 Oracle をより効率的に使用するための SQL のチューニング方法について説明します また 索引の有無 SQL の 記述方法がパフォーマンスにどのように影響するのかを実習を通して理解します 受講対象者 アプリケーション開発者 / データベース管理者の方 前提条件 S

第 7 章 ユーザー データ用表領域の管理 この章では 表や索引を格納するユーザー データ用表領域の作成や 作成後のメンテナンスに ついて解説します 1. ユーザー データ用表領域の管理概要 2. ユーザー データ用表領域作成時の考慮事項 3. ユーザー データ用表領域の作成 4. ユーザー データ

今さら聞けない!? Oracle入門 ~前編~

今さら聞けない!? Oracle入門 ~後編~

第 3 章 メディア障害とバックアップ リカバリ この章では メディア障害の発生に備えたバックアップ方法と 障害時の基本的なリカバリ方法につい て説明します 1. メディア リカバリ概要 2. ファイルの多重化 3. アーカイブ モードの設定 4. バックアップ概要 5. 一貫性バックアップ ( オ

はじめに コース概要と目的 Oracle を使用した開発 管理を行う上でのファースト ステップとして リレーショナル データベース管理ソフトウェアである Oracle の役割 基本機能 基本アーキテクチャを幅広く理解することを目的としています 受講対象者 これから Oracle を使用する方 データ

Agenda はじめに 目的とゴール Part1の振り返り AWRを使用した性能分析 AWR 概要 AWRに格納される情報 AWR レポートにおける分析アプローチ AWR 確認ポイント Case Study AWRとアーキテクチャの関係 まとめ Part2のポイント まとめ Copyright 20

Oracle 入門 ~ 研修受講後のスキルアップサポート ~ 対応バージョン :Oracle 10gR1 ~ 12cR1 本資料は アシスト Oracle 研修をご受講いただいたお客様からのご質問や 研修ではご案内できなかった情報などを FAQ にまとめたものです 研修受講後のスキルアップの一助とし

Null

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

第 2 章 問合せの基本操作 この章では データベースから情報を検索する際に使用する SELECT コマンド および SELECT コマンドと 同時に使用する句について説明します 1. 問合せとは 2. 基本的な問合せ 3. 列の別名 4. 重複行を一意にする 5. 検索行の絞込み 6. 文字パター

第 3 章代表的なチューニングポイント 3 Q. ストアド プロシージャを使用した SQL 共有率の向上 A. ストアド プロシージャを使用した場合 同じストアド プロシージャを実行する複数のユーザーが 同じ共有 PL/SQL 領域を使用します また ストアド プロシージャは解析済みで格納されている

Null

OracleDBA(パフォーマンスチューニング(SQL編) - コピー

Enterprise Manager 10gによるデータベース・パフォーマンスチューニング

PA4

自己管理型データベース: 自動SGAメモリー管理

Oracle Data Pumpのパラレル機能

Oracle Direct Seminar <Insert Picture Here> 試験対策ポイント解説 Bronze DBA11g 日本オラクル株式会社

OWI(Oracle Wait Interface)の概要

Agenda Oracle Database の概要 Oracle Databaseの内部構造 Oracle Databaseの処理の仕組み Oracle Database の管理 メモリの管理 領域の管理 Oracle Database の運用ポイント ( 概要 ) データベースの起動と停止 デー

第 1 章 条件分岐 この章では 条件に応じて処理を分岐する方法について説明します 1. CASE 式で複雑な条件分岐を実現 2. 関数を使用した条件分岐 3. MERGE 文による条件に応じた DML の実行

Oracle Database 11g Oracle Real Application Testing

untitled

How to Use the PowerPoint Template

MaxGauge_診断分析プロセス

意外と簡単!?Oracle Database 10g Release2 - データベース構築から運用まで - データベースの運用 - チューニング編 (Windows 版 ) Creation Date: Nov 2, 2005 Last Update: Nov 2, 2005 Version: 1

ORACLE TUNING PACK 11G

Oracle Database 10g Release 2を使用したデータベース・パフォーマンス

Agenda パフォーマンス チューニングとは ボトルネック箇所の特定 代表的なチューニング項目 メモリ割り当てのチューニング ディスクI/Oのチューニング SQL 文のチューニング Copyright 2010, Oracle. All rights reserved. 2

意外と簡単

How to Use the PowerPoint Template

スライド 1

Oracle Data Pumpのパラレル機能

はじめに コースの概要と目的条件分岐の方法や複雑な集計の手法など SQL のコーディングの幅を広げるためのテクニックについて説明します また パフォーマンスを考慮した記述方法や正しい結果を取得するための記述方法などについても あわせて説明します 本コースでは 実践的な SQL の記述手法を広く浅く紹

Slide 1

これは何? ORACLE の内部状態を示す情報の一つである 待機イベントについて解説します 待機イベントを知ることで 一歩進んだパフォーマンスチューニングが出来ます また 待機イベントという切り口を通して ORACLE のアーキテクチャに対する理解を深めていきます なお ORACLE のバージョンは

サポートエンジニアが語るパフォーマンス問題の原因調査とチューニング 日本オラクル株式会社データベーステクノロジーサポート本部 Principal Technical Support Engineer 田島教子

Oracle Tuning Pack

Oracleデータベースを使用したEMC Symmetrix DMX-4

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

スライド 1

1000 Copyright(C)2009 All Rights Reserved - 2 -

ホワイト ペーパー EMC VFCache により Microsoft SQL Server を高速化 EMC VFCache EMC VNX Microsoft SQL Server 2008 VFCache による SQL Server のパフォーマンスの大幅な向上 VNX によるデータ保護 E

スライド 1

Oracle Database 11g Direct NFS Client

~~~~~~~~~~~~~~~~~~ wait Call CPU time 1, latch: library cache 7, latch: library cache lock 4, job scheduler co

Microsoft Word DB_management_win_1.0.doc

ソフト活用事例③自動Rawデータ管理システム

Microsoft Word - PDFHS _ doc

Oracle Database 12c Release 1 ( ) CoreTech Seminar

アジェンダ Oracle サーバの見える化はなぜ必要? WebSAMApplicationNavigator で簡単 安心に監視を実現 Oracle 監視の導入コスト 2 NEC Corporation 2009

PowerPoint Presentation

(Microsoft PowerPoint - goupGold\224z\225z\227p.ppt)

untitled

データベース マネジメント ~ 研修受講後のスキルアップ サポート ~ 対応バージョン :Oracle 10gR1 ~ 12cR2 本資料は アシスト Oracle 研修をご受講いただいたお客様からのご質問や 研修ではご案内できなかった情報などをまとめたものです 研修受講後のスキルアップの一助として

Slide 1

Oracle Advanced Compression:ディスクの節約とデータベースの高速化を可能にする包括的な圧縮機能

Pro/INTRALINK 10.0 Curriculum Guide

Microsoft Word - nvsi_050090jp_oracle10g_vlm.doc

Silk Central Connect 15.5 リリースノート

エンタープライズ・フラッシュ・ドライブとEMC CLARiX CX4を利用したOracleデータベースの展開

PowerPoint プレゼンテーション

実践!Oracle Enterprise Manager を使用した 簡単データベース管理 日本オラクル株式会社製品事業統括テクノロジー製品事業統括本部シニアセールスコンサルタント海老坂恵

ここからはじめる、Oracle データベース入門・アーキテクチャー編

Symantec Backup Exec TM 2010 の管理スタディガイド Symantec Backup Exec 2010 テクニカルアセスメント資格試験の目的と 参考となる Symantec Backup Exec 2010 コースの内容を下記の表で確認できます Symantec Back

Slide 1

はじめに NEC と日本オラクル社は NEC のブレードサーバーシステム SIGMABLADE-H を利用し Linux プラットフォーム上で OracleRAC11g Release2 との組み合わせで線形な性能向上が可能であることを実証しました 本資料ではその検証結果について述べます 今回は 検

テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト

Oracle Enterprise Manager Oracle Tuning Packによるデータベース・チューニング, リリース 9.2

Oracle Real Application Clusters 10g: 第4世代

PowerPoint Presentation

Slide 1

PowerRW+からPowerRDBconnectorへの移行手引書

意外と簡単

バッチ処理にバインド変数はもうやめません? バッチ処理にバインド変数はもうやめません?

組込み Linux の起動高速化 株式会社富士通コンピュータテクノロジーズ 亀山英司 1218ka01 Copyright 2013 FUJITSU COMPUTER TECHNOLOGIES LIMITED

Oracle Direct Seminar <Insert Picture Here> もうアプリ修正は必要ない! 画期的な SQL チューニング手法 日本オラクル株式会社

PowerPoint プレゼンテーション

Oracleデータベース監査:パフォーマンス・ガイドライン

Arcserve Backup r16 新機能 テープブロックサイズの拡張 効果実測 Arcserve Japan 1.5 版

pg_monz 監視アイテム一覧 :Template App PostgreSQL Template App PostgreSQL アプリケーション LLD アイテムトリガー監視タイプ更新間隔ヒストリトレンドデフォルト説明ステータス pg.get pgsql.get.pg.bgwriter Zabb

OracleDBA(パフォーマンスチューニング(SQL編) - コピー

Oracle Berkeley Database 11g Release 2パフォーマンスの概要

Oracle Database Clientクイック・インストレーション・ガイド, 10gリリース1( ) for Microsoft Windows

Veritas System Recovery 16 Management Solution Readme

< 写真欄 > 11g R2 Real Application Clusters スキルチェック ポイント解説

Oracle Databaseパフォーマンス・チューニング・ガイド, 10gリリース2(10.2)

Arcserve Replication/High Availability 製品の仕組み

Orchestrator Version Up Guide 2019 年 6 月 UiPath 株式会社

McAfee ENS 移行プロセス概要

PassSureExam Best Exam Questions & Valid Exam Torrent & Pass for Sure

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

システム管理者ガイド GIGAPOD 3 システム管理者ガイド - 負荷分散構成 第 1.01 版 2013 年 3 月 改訂履歴 No バージョン 日付 作成者 改訂者 補足 /09 トライポッドワークス 初稿 /03 トライポッドワークス cr

PHP 開発ツール Zend Studio PHP アフ リケーションサーハ ー Zend Server OSC Tokyo/Spring /02/28 株式会社イグアスソリューション事業部

Oracle SQL Developer Data Modeler

CLUSTERPRO MC RootDiskMonitor 1.0 for Windows インストールガイド 2013(Mar) NEC Corporation はじめに 製品導入の事前準備 本製品のインストール 本製品の初期設定 本製品のアンインストール

Oracleセキュア・エンタープライズ・サーチ

目 次 第 1 章 QlikViewの 基 礎 1.1 QlikView 概 要 ビジネスインテリジェンス(BI)とQlikView QlikView Personal Edition QlikViewのアプリケーション...1

Transcription:

はじめに コース概要と目的 Oracle データベースのパフォーマンス問題の分析方法 解決方法を説明します 受講対象者 データベース管理者の方を対象としています 前提条件 データベース アーキテクチャ データベース マネジメント を受講された方 もしくは同等の知識 をお持ちの方 テキスト内の記述について 構文 [ ] 省略可能 { A B } A または B のどちらかを選択 n _ 数値の指定 デフォルト値 マーク 指定バージョンからの新機能 ( 左記の場合 Oracle 12cR1 からの新機能 ) Enterprise Edition で使用できる機能 知っておいたほうが良いテクニック もしくは注意事項 参照ページ データ ディクショナリ ビュー

第 1 章 Oracle パフォーマンスチューニングの基礎知識 この章ではパフォーマンス チューニングを行う上での基本手順の説明と Oracle の基本アーキテクチャを確認します 1. チューニング概要 2. チューニングのステップ 3. ベースライン 4. 待機イベント 5. パフォーマンス情報の収集 6. Oracle アーキテクチャ (SQL 処理と Oracle データベース ) 7. 代表的なチューニングポイント 8. 代表的なアクセス パス

第 1 章 Oracle パフォーマンスチューニングの基礎知識 7. 代表的なチューニングポイント Oracle データベースでパフォーマンスの問題が発生している場合 次のような原因が考えられます (1) SQL 非効率な SQL によって 大量のディスク I/O やメモリー消費が引き起こされているケースが数多くあります そのため 高負荷 SQL を特定し その SQL の記述方法や実行計画に問題がないかどうかを調査します 実行計画とは SQL を実行するための一連の処理のことであり アクセス パス ( データベースからデータを取り出す経路 ) などが含まれます 代表的なアクセス パスとして以下の 2 つがあります 全表スキャン (1-23) 索引スキャン (1-25) 例えば 全表スキャンの SQL を索引スキャンに変更することで ディスク I/O 量を削減できる場合があります 実行計画には 上記以外にも表の結合方法や結合する表の順序などがあります 詳細は SQL パフォーマ ンス チューニング 研修で解説しています (2) メモリー領域 システム グローバル領域 (SGA) とプログラム グローバル領域 (PGA) を適切に管理します 1) システム グローバル領域 (SGA) SGA では メモリー上に保持されているデータの共有率を高めることが重要です 共有プール ライブラリ キャッシュにおける SQL 解析結果の共有率の向上 断片化の防止 解消が重要です SQL の記述を統一化し 共有プールを適正なサイズに調整します データベース バッファ キャッシュ バッファ キャッシュに保持されているデータの共有率向上が重要です まず SQL を改善し その 後 バッファ キャッシュを適正なサイズに調整します REDO ログ バッファ サーバー プロセスの REDO ログ バッファへの書込み待機が発生しないようにすることが重要で す REDO ログ バッファを適正なサイズに調整します 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 1-21

第 1 章 Oracle パフォーマンスチューニングの基礎知識 2) プログラム グローバル領域 (PGA) PGA とはプロセスごとに取得される非共有のメモリー領域であり PGA 内の SQL 作業領域でソート処理やハッシュ処理が行われます SQL 作業領域のサイズは時間帯などで使用量が変化するため 適切なサイズに設定できているかが問題になります 自動 PGA メモリー管理機能を使用している場合 PGA の合計サイズが適切になるように調整します (3) データベース データベース ファイルに関しては ファイルへの I/O 分散やファイルのサイズ 数の調整が重要です データファイル 特定のデータファイルに対する I/O 集中が問題になります 全表スキャンを行っている SQL を索引スキャ ンに変更して I/O 量を削減したり ディスク追加などで I/O 分散を行います オンライン REDO ログ ファイル オンライン REDO ログ ファイルへの I/O や オンライン REDO ログ ファイルに影響を受けるチェックポ イントなどが問題になります ファイルのサイズや数 REDO ログ バッファのサイズなどを調整します データベース バッファキャッシュ データの共有率が低い Oracle インスタンス SGA REDO ログバッファ サイズが不適切 共有プール 解析結果の共有率が低い 断片化 SQL が不適切 サーバープロセス PGA ユーザープロセス DBWn LGWR SGA のサイズが不適切 PGA のサイズが不適切 実行計画が不適切 ファイルのサイズや数が不適切 I/O の集中 データファイル オンライン REDO ログ ファイル 制御ファイル Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 1-22

第 3 章 代表的なチューニングポイント Oracle データベースで問題となるケースが多い 代表的なパフォーマンス問題と その解決方法について解説します 1. 代表的なチューニングポイント ( 復習 ) 2. 共有プールのチューニング 3. データベース バッファ キャッシュのチューニング 4. REDO ログ構造のチューニング

第 3 章 代表的なチューニングポイント 4. REDO ログ構造のチューニング REDO ログ バッファやオンライン REDO ログ ファイルなどの REDO ログ構造のチューニングについて解説します (1) REDO ログ構造概要 変更処理で発生した REDO エントリは REDO ログ バッファに一時的に格納されます その後 主に以下のタイミングで LGWR プロセスがまとめてオンライン REDO ログ ファイルに書込みます REDO ログ バッファの領域を使い切った後は 書込みが完了した領域を上書きして再利用します コミット時 REDO ログ バッファの 1/3 が使われた時 または 1MB の領域が使用された時 DBWn がダーティ バッファを書込む前 (2) REDO ログ構造の調査 関連するシステム統計や待機イベントを調査し チューニングが必要かどうかを検討します システム統計を使用して REDO ログ バッファの待機を確認 LGWR が REDO エントリをオンライン REDO ログ ファイルへ書込んでいる間 サーバー プロセスが REDO ログ バッファに REDO エントリを書込み REDO ログ バッファが満杯になることがあります このような場合 サーバー プロセスは REDO ログ バッファへの書込みを待機します この待機発生回数が 全 REDO エントリ数の 1% を上回らないようにします 待機発生回数 (redo buffer allocation retries) と REDO エントリ数 (redo entries) は V$SYSSTAT ビューで確認できます REDO ログ構造に関連する待機イベント イベント名 log buffer space log file parallel write log file sync log file switch completion log file switch (checkpoint incomplete) log file switch (archiving needed) 説明 REDO ログ バッファが満杯でサーバー プロセスが書込みを待機した ログ バッファが小さすぎるか LGWR プロセスの書込みが遅い LGWR の REDO ログ ファイルへの書込みに関する待機 I/O 遅延の問題 サーバー プロセスが COMMIT または ROLLBACK 処理の完了を待機した 通常 LGWR の I/O 遅延が原因 log file parallel write 待機イベントの時間も含まれる ログ スイッチ時に発生する待機 I/O 遅延の問題 チェックポイントが完了していないため オンライン REDO ログ ファイルを上書きできない場合の待機 アーカイブが完了していないため オンライン REDO ログ ファイルを上書きできない場合の待機 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 3-19

第 3 章 代表的なチューニングポイント <REDO ログ バッファの待機 > システム グローバル領域 ( SGA ) システム グローバル領域 ( SGA ) バッファ キャッシュ REDO ログ バッファ バッファ キャッシュ REDO ログ バッファ 2/3 1/3 書込み待機 サーバープロセス LGWR 書込み中 サーバープロセス LGWR 書込み中 オンライン REDO ログ ファイル オンライン REDO ログ ファイル REDO ログ バッファの 1/3 が使われたため LGWR が REDO エントリをログ ファイルに書込む 同時に変更処理が発生したため サーバー プロセスが REDO バッファの残りの 2/3 の領域に REDO エントリを書込む サーバー プロセスの書込みが 2/3 の領域を使い切り 残りの領域を上書きしたいが LGWR の書込みが終わっていない そのため サーバー プロセスは LGWR の書込み完了まで待機する 例 )REDO ログ バッファでの待機状態を調査する SQL> SELECT sum(decode(name,'redo buffer allocation retries',value,0)) / 2 sum(decode(name,'redo entries',value,0)) RATIO 3 FROM v$sysstat; RATIO ----------.013731 上記例では 待機は 0.01% でほとんど問題になっていません Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 3-20

第 4 章 メモリーの管理 バージョンアップごとに進化している メモリー管理機能の使用方法について説明します 1. メモリー管理概要 2. 自動共有メモリー管理 3. 自動 PGA メモリー管理 4. 自動メモリー管理 5. メモリー アドバイザ機能

第 4 章 メモリーの管理 1. メモリー管理概要 Oracle が使用するメモリー領域には SGA( システム グローバル領域 ) と PGA( プログラム グローバル領域 ) があります これらのメモリー領域を適切に管理することは パフォーマンスにおいて非常に重要です (1) 各領域の管理方法 領域ごとのメモリー管理について解説します SGA(4-3~) SGA 内の各領域 ( 共有プール データベース バッファ キャッシュなど ) を個別に調整できます また 自動共有メモリー管理機能を使用すると SGA の総メモリーサイズのみ指定するだけで Oracle が SGA 内の各領域を自動管理してくれます PGA(4-9~) PGA はプロセスごとに確保されるメモリー領域で SQL 処理に必要なデータや制御情報 SQL 作業領域 ( ソートやハッシュで使用 ) などが含まれます PGA のサイズは セッション数や処理内容によって増減するため PGA を監視したり 各 SQL 作業領域を個別にチューニングしたりすることが大きな負担になります 自動 PGA メモリー管理機能を使用すると PGA の総メモリーサイズのみ指定するだけで Oracle が各 PGA を自動管理してくれます メモリー全体 (4-13~) Oracle 11g から自動メモリー管理機能が提供されました この機能を使用すると Oracle に割当て可能な 総メモリー サイズを指定するだけで Oracle が SGA PGA を自動調整してくれます 対象管理方法初期化パラメータ概要 SGA 手動共有メモリー管理 SHARED_POOL_SIZE DB_CACHE_SIZE など 共有プールなど メモリー領域ごとにサイズを調整 自動共有メモリー管理 SGA_TARGET SGA の総メモリー サイズのみ設定すれ ば SGA 内の各領域は Oracle が自動調整 PGA 手動 PGA メモリー管理 *_AREA_SIZE (SORT_AREA_SIZE など ) セッションごとに SQL 作業領域のサイズを *_AREA_SIZE パラメータで調整 自動 PGA メモリー管理 PGA_AGGREGATE_TARGET PGA の総メモリー サイズのみ設定すれば 各 SQL 作業領域が自動調整される SGA+PGA 自動メモリー管理 (Oracle 11g~) MEMORY_TARGET SGA と PGA の総メモリー サイズを設定すれば Oracle メモリーが自動調整される 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 4-1

第 4 章 メモリーの管理 (2) メモリーサイズの管理 メモリーに割当てる初期値は 経験やテスト またはガイドラインに基づいて設定します また 運用中は 定期的に監視し 必要に応じて割当てサイズを調整します 初期設定のガイドラインサーバーの物理メモリーから Oracle 以外のアプリケーションで使用されるメモリーを除いたサイズを SGA と PGA で使用します 一般的に Oracle メモリーに割当てる初期値は 経験やテスト 以下のガイドラインに基づいて設定します SGA と PGA での割当ての目安は OLTP システムと DSS システムでは異なります 一般的に DSS システムは大規模なソートやハッシュ処理が行われるため PGA のサイズを OLTP システムに比べて大きく設定します システム SGA PGA OLTP システム 80% 20% DSS システム 50% 50% メモリーの監視 (4-7 4-11 4-15) 運用中は メモリーに関するデータベース統計を確認し 各領域に割当てたサイズが適切かどうかを監視 します 適切なサイズに調整 (4-7 4-12 4-15) 最適なメモリー サイズを見つけるには テストをする他 メモリー アドバイザ機能を利用する方法があります この機能は 実行されたワークロードをもとに分析を行い 様々なメモリー サイズでどのように動作するかの予測値を提示してくれます メモリー アドバイザ機能はメモリー領域ごとに用意されています Oracle 以外用メモリー SGA 自動共有メモリー管理 自動メモリー管理 サーバーの物理メモリー PGA 自動 PGA メモリー管理 Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 4-2

第 5 章 Statspack によるデータベース診断 データベース診断ツールである Statspack の使用方法と Statspack によって出力される レポートファイルの分析方法について説明します 1. Statspack 概要 2. Statspack レポートの分析 3. Statspack の使用方法 4. スナップショットの取得 5. AWR によるデータベース診断

第 5 章 Statspack によるデータベース診断 (2) 負荷特性の確認 (Load Profile セクション ) 1 秒単位 1 トランザクション単位でシステム統計を確認できます 参照時のポイント ベースラインの中心的な情報が記録されているため 複数のレポートでこのセクションを比較し 負荷の 変化を確認します < 主な列 > Per Second 統計 1 秒あたりのスループットを表します この値が高くなるほど 1 秒あたりの作業量が多くなります Per Transaction 統計 1 トランザクションあたりの処理負荷を表します この値が高くなるほど 1 トランザクションで行った処 理負荷が高くなります < システム統計 > 統計名 DB time(s) DB CPU(s) Redo size Logical reads Block changes Physical reads Physical writes User calls Parses Hard parses W/A MB processed Logons 詳細 SQL の実行に費やした時間 SQL の実行に費やした CPU 時間生成された REDO のサイズアクセスしたブロック数変更されたブロック数ディスクから読込んだブロック数ディスクに書込んだブロック数ログイン 解析 フェッチ 実行などのユーザー コール数 SQL の解析回数ハード解析の回数 SQL 作業領域の使用量ログオン数 Executes SQL 実行数 ( 再帰 SQL を含む ) Rollbacks Transactions ロールバック数 トランザクション数 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 5-5

第 5 章 Statspack によるデータベース診断 例 )Load Profile セクション Load Profile Per Second Per Transaction Per Exec Per Call ~~~~~~~~~~~~ ------------------ ----------------- ----------- ----------- DB time(s): 0.2 3.0 0.00 0.01 1 DB CPU(s): 0.1 1.8 0.00 0.00 Redo size: 482,067.6 9,659,207.1 Logical reads: 4,488.1 89,927.7 Block changes: 4 3,778.3 75,705.7 Physical reads: 45.7 916.2 2 Physical writes: 25.8 516.2 User calls: 28.0 561.4 Parses: 9.0 180.4 3 Hard parses: 3.9 77.8 W/A MB processed: 5 0.6 12.1 Logons: 0.0 0.7 Executes: 874.1 17,515.2 Rollbacks: 0.0 0.0 Transactions: 0.1 1 DB time でユーザー コールの処理に要した時間 DB CPU で CPU 処理に要した時間を確認できます この 2 つの隔たりが大きい場合 待機時間が問題になっている可能性があるため 後続セクションの Top 5 Timed Events で主な待機イベントを確認します また チューニング前後で DB time を比較し チューニングの効果を確認できます 2ディスク I/O の状態を確認できます Physical reads が増加している場合 データベース バッファ キャッシュのヒット率が低下している可能性があります ヒット率のセクションも確認した上で SQL チューニングやデータベース バッファ キャッシュのサイズ増加などを検討します 3 解析の状態を確認できます Hard parses が増加している場合 共有プールのヒット率が低下している可能性があります ヒット率のセクションも確認した上で バインド変数の使用や共有プールのサイズ増加などを検討します 4 変更処理の量を確認できます これらの値が増えている場合 ログの書込み待機などが発生している可能性があります 待機イベントのセクションも確認した上で ログ バッファのサイズやログ ファイルの I/O などのチューニングを検討します 5 SQL 作業領域の使用量を確認できます この値が増加している場合 ソートやハッシュ処理が増えている可能性があります PGA 関連のセクションも確認した上で PGA のサイズ増加を検討します Oracle 10g までは Sorts と表示されます Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 5-6

第 5 章 Statspack によるデータベース診断 5. AWR によるデータベース診断 AWR( 自動ワークロード リポジトリ ) とは Statspack を進化させた機能です Oracle Enterprise Manager(OEM) と API で使用できますが 使いやすさの観点から一般的に OEM で使用されます 本機能を使用するには Enterprise Edition かつ有償オプション (Diagnostics Pack) のライセンスが必要です (1) AWR と Statspack の比較 AWR は Statspack と比較して 主に以下の点が優れています 管理者が手動でスナップショットを取得する必要がない 以下の 2 つの情報が自動的に取得されるため 手動でスナップショットを取得する必要がありません AWR スナップショット AWR スナップショットには Statspack のスナップショットと同じ情報に加え 稼動統計やワークロード情報などが含まれます デフォルトでは 1 時間に 1 回取得され 8 日間 (Oracle 10g では 7 日間 ) 保存されます 取得時の負荷も Statspack より低くなっています ASH( アクティブ セッション履歴 ) ASH は 1 秒ごとに V$SESSION ビューをサンプリングした情報の集合体です AWR スナップショットは Statspack のスナップショット同様 1 時間ごとのサマリー情報のため 瞬間的に発生した問題分析には不向きです ASH を利用することで そのような問題を解消できます ASH は AWR スナップショット同様 8 日間保存されます パフォーマンス レポートの改善 テキスト形式と HTML 形式を選べます HTML 形式は見やすく分析も容易にできます また Statspack よりも多くのセクションがパフォーマンス レポートに出力されます 期間比較レポートが作成できるある 2 つのパフォーマンス レポートを並べて比較するレポートを作成できます 通常時と問題発生時のレポートを比較して問題点を分析したり チューニング前後のレポートを比較して効果を確認したりすることが容易にできます 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 5-23

第 5 章 Statspack によるデータベース診断 例 )HTML 形式のパフォーマンス レポートの一部抜粋 (Load Profile セクションと Instance Efficiency Percentages セクション (Statspack の Instance Efficiency Indicators セクションに相当 )) 例 ) 期間比較レポートの一部抜粋 Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 5-24