Oracle9iOracle9i...

798
Oracle9i データベース・パフォーマンス・チューニング・ガイドおよびリファレンス リリース 29.22003 2 部品番号:J06248-02

Transcript of Oracle9iOracle9i...

  • Oracle9i

    データベース・パフォーマンス・チューニング・ガイドおよびリファレンス

    リリース 2(9.2)

    2003 年 2 月

    部品番号:J06248-02

  • Oracle9i データベース・パフォーマンス・チューニング・ガイドおよびリファレンス , リリース 2(9.2)

    部品番号:J06248-02

    原本名:Oracle9i Database Performance Tuning Guide and Reference, Release 2 (9.2)

    原本部品番号:A96534-02(Vol.1)、A96535-02(Vol.2)

    原本著者:Connie Dialeris Green

    原本協力者:Valarie Moore, James Barlow, Eric Belden, Qiang Cao, Sumanta Chatterjee, Benoit Dageville, Vinayagam Djegaradjane, Harvey Eneman, Bjorn Engsig, Cecilia Gervasio, Ray Glasstone, Leslie Gloyd, Lester Gutierrez, Karl Haas, Brian Hirano, Andrew Holdsworth, Mamdouh Ibrahim, Christopher Jones, Srinivas Kareenhalli, Stella Kister, Herve Lejeune, Yunrui Li, Juan Loaiza, George Lumpkin, Joe McDonald, Bill McKenna, Sujatha Muthulingam, Gary Ngai, Michael Orlowski, Kant C. Patel, Richard Powell, Shankar Raman, Vinay Srihari, Sankar Subramanian, Margaret Susairaj, Hal Takahara, Nitin Vengurlekar, Stephen Vivian, Simon Watt, Andrew Witkowski, Graham Wood and Mohamed Zait.

    Copyright © 2000, 2002 Oracle Corporation. All rights reserved.

    Printed in Japan.

    制限付権利の説明

    プログラム(ソフトウェアおよびドキュメントを含む)の使用、複製または開示は、オラクル社との契約に記された制約条件に従うものとします。著作権、特許権およびその他の知的財産権に関する法律により保護されています。

    当プログラムのリバース・エンジニアリング等は禁止されております。

    このドキュメントの情報は、予告なしに変更されることがあります。オラクル社は本ドキュメントの無謬性を保証しません。

    * オラクル社とは、Oracle Corporation(米国オラクル)または日本オラクル株式会社(日本オラクル)を指します。

    危険な用途への使用について

    オラクル社製品は、原子力、航空産業、大量輸送、医療あるいはその他の危険が伴うアプリケーションを用途として開発されておりません。オラクル社製品を上述のようなアプリケーションに使用することについての安全確保は、顧客各位の責任と費用により行ってください。万一かかる用途での使用によりクレームや損害が発生いたしましても、日本オラクル株式会社と開発元である Oracle Corporation(米国オラクル)およびその関連会社は一切責任を負いかねます。 当プログラムを米国国防総省の米国政府機関に提供する際には、『Restricted Rights』と共に提供してください。この場合次の Notice が適用されます。

    Restricted Rights Notice

    Programs delivered subject to the DOD FAR Supplement are "commercial computer software" and use, duplication, and disclosure of the Programs, including documentation, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement. Otherwise, Programs delivered subject to the Federal Acquisition Regulations are "restricted computer software" and use, duplication, and disclosure of the Programs shall be subject to the restrictions in FAR 52.227-19, Commercial Computer Software - Restricted Rights (June, 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.

    このドキュメントに記載されているその他の会社名および製品名は、あくまでその製品および会社を識別する目的にのみ使用されており、それぞれの所有者の商標または登録商標です。

  • 目次目次目次目次

    はじめにはじめにはじめにはじめに ........................................................................................................................................................................ xvii

    対象読者 ................................................................................................................................................................. xviiiこのマニュアルの構成 ........................................................................................................................................... xix関連文書 .................................................................................................................................................................. xxii表記規則 ................................................................................................................................................................. xxiii

    Oracle のパフォーマンスの新機能のパフォーマンスの新機能のパフォーマンスの新機能のパフォーマンスの新機能 ......................................................................................................... xxvii

    第第第第 I 部 部 部 部 SQL の作成とチューニングの作成とチューニングの作成とチューニングの作成とチューニング

    1 オプティマイザの概要オプティマイザの概要オプティマイザの概要オプティマイザの概要SQL 処理の概要処理の概要処理の概要処理の概要 ...................................................................................................................................................... 1-2オプティマイザの概要オプティマイザの概要オプティマイザの概要オプティマイザの概要 ........................................................................................................................................... 1-3

    CBO を必要とする機能 ................................................................................................................................. 1-4

    オプティマイザ操作 ....................................................................................................................................... 1-5

    オプティマイザのアプローチと目標の選択オプティマイザのアプローチと目標の選択オプティマイザのアプローチと目標の選択オプティマイザのアプローチと目標の選択 ....................................................................................................... 1-6CBO を使用した SQL 文の最適化による応答の高速化 ............................................................................ 1-9

    コストベース・オプティマイザについてコストベース・オプティマイザについてコストベース・オプティマイザについてコストベース・オプティマイザについて ......................................................................................................... 1-10CBO の構成要素 ........................................................................................................................................... 1-10

    実行計画について ......................................................................................................................................... 1-18

    CBO のアクセス・パスについてのアクセス・パスについてのアクセス・パスについてのアクセス・パスについて ....................................................................................................................... 1-23全表スキャン ................................................................................................................................................. 1-23

    ROWID スキャン ......................................................................................................................................... 1-26

    索引スキャン ................................................................................................................................................. 1-27

    クラスタ・スキャン ..................................................................................................................................... 1-34

    i

  • ハッシュ・スキャン ..................................................................................................................................... 1-35

    サンプル表スキャン ..................................................................................................................................... 1-35

    CBO によるアクセス・パスの選択方法 ................................................................................................... 1-36

    結合について結合について結合について結合について ......................................................................................................................................................... 1-39CBO による結合文の実行方法 ................................................................................................................... 1-39

    CBO による結合方法の選択方法 ............................................................................................................... 1-40

    CBO による結合タイプの実行計画の選択方法 ....................................................................................... 1-40

    ネステッド・ループ結合 ............................................................................................................................. 1-44

    ハッシュ結合 ................................................................................................................................................. 1-46

    ソート / マージ結合 .................................................................................................................................... 1-48

    デカルト結合 ................................................................................................................................................. 1-50

    外部結合 ......................................................................................................................................................... 1-51

    コストベース・オプティマイザのパラメータの設定コストベース・オプティマイザのパラメータの設定コストベース・オプティマイザのパラメータの設定コストベース・オプティマイザのパラメータの設定 ..................................................................................... 1-55CBO 機能の有効化 ....................................................................................................................................... 1-55

    CBO の動作の制御 ....................................................................................................................................... 1-57

    拡張可能オプティマイザの概要拡張可能オプティマイザの概要拡張可能オプティマイザの概要拡張可能オプティマイザの概要 ......................................................................................................................... 1-60ユーザー定義統計 ......................................................................................................................................... 1-61

    ユーザー定義の選択性 ................................................................................................................................. 1-62

    ユーザー定義コスト ..................................................................................................................................... 1-62

    2 オプティマイザ操作オプティマイザ操作オプティマイザ操作オプティマイザ操作オプティマイザによる操作の実行方法オプティマイザによる操作の実行方法オプティマイザによる操作の実行方法オプティマイザによる操作の実行方法 ............................................................................................................... 2-2

    CBO による IN リスト・イテレータの評価方法 ....................................................................................... 2-3

    CBO による連結の評価方法 ......................................................................................................................... 2-6

    CBO によるリモート操作の評価方法 ....................................................................................................... 2-10

    CBO による分散型の文の評価方法 ........................................................................................................... 2-13

    CBO によるソート操作の評価方法 ........................................................................................................... 2-14

    CBO によるビューの評価方法 ................................................................................................................... 2-18

    CBO による定数の評価方法 ....................................................................................................................... 2-19

    CBO による UNION および UNION ALL 演算子の評価方法 .............................................................. 2-20

    CBO による LIKE 演算子の評価方法 ........................................................................................................ 2-21

    CBO による IN 演算子の評価方法 ............................................................................................................. 2-22

    CBO による ANY または SOME 演算子の評価方法 ............................................................................... 2-22

    CBO による ALL 演算子の評価方法 ......................................................................................................... 2-23

    CBO による BETWEEN 演算子の評価方法 .............................................................................................. 2-23

    ii

  • CBO による NOT 演算子の評価方法 ........................................................................................................ 2-24

    CBO による推移性の評価方法 ................................................................................................................... 2-25

    CBO による共通の副次式の最適化方法 ................................................................................................... 2-26

    CBO による DETERMINISTIC 関数の評価方法 ...................................................................................... 2-28

    オプティマイザによるオプティマイザによるオプティマイザによるオプティマイザによる SQL 文の変換方法文の変換方法文の変換方法文の変換方法 ...................................................................................................... 2-29CBO による OR の複合問合せへの変換方法 ........................................................................................... 2-29

    CBO による副問合せのネスト解除方法 ................................................................................................... 2-32

    CBO によるビューのマージ方法 ............................................................................................................... 2-34

    CBO による述語のプッシュ方法 ............................................................................................................... 2-37

    CBO による複合問合せの実行方法 ........................................................................................................... 2-47

    3 オプティマイザ統計の収集オプティマイザ統計の収集オプティマイザ統計の収集オプティマイザ統計の収集統計について統計について統計について統計について ........................................................................................................................................................... 3-2統計情報の生成統計情報の生成統計情報の生成統計情報の生成 ....................................................................................................................................................... 3-3

    パーティション・スキーマ・オブジェクトの統計の取得 ....................................................................... 3-4

    DBMS_STATS パッケージの使用 ................................................................................................................ 3-5

    ANALYZE 文の使用 .................................................................................................................................... 3-12

    データ分散の検索 ......................................................................................................................................... 3-13

    統計の欠落 ..................................................................................................................................................... 3-13

    統計の使用方法統計の使用方法統計の使用方法統計の使用方法 ..................................................................................................................................................... 3-14統計の管理 ..................................................................................................................................................... 3-14

    表統計の検証 ................................................................................................................................................. 3-16

    索引統計の検証 ............................................................................................................................................. 3-16

    列統計情報の検証 ......................................................................................................................................... 3-18

    ヒストグラムの使用方法ヒストグラムの使用方法ヒストグラムの使用方法ヒストグラムの使用方法 ..................................................................................................................................... 3-20ヒストグラムの用途 ..................................................................................................................................... 3-21

    ヒストグラムの作成 ..................................................................................................................................... 3-21

    ヒストグラムのタイプ ................................................................................................................................. 3-22

    ヒストグラムの表示 ..................................................................................................................................... 3-24

    ヒストグラム統計の検証 ............................................................................................................................. 3-24

    iii

  • 4 索引およびクラスタ索引およびクラスタ索引およびクラスタ索引およびクラスタ索引について索引について索引について索引について ........................................................................................................................................................... 4-2

    論理構造のチューニング ............................................................................................................................... 4-2

    索引を付ける列と式の選択 ........................................................................................................................... 4-3

    コンポジット索引の選択 ............................................................................................................................... 4-4

    索引を使用する文の記述 ............................................................................................................................... 4-5

    索引を使用しない文の記述 ........................................................................................................................... 4-6

    索引の再作成 ................................................................................................................................................... 4-6

    索引の縮小 ....................................................................................................................................................... 4-7

    一意でない索引による一意性の規程 ........................................................................................................... 4-7

    ENABLE NOVALIDATE 制約の使用方法 ................................................................................................. 4-8

    ファンクション・ベース索引の使用方法ファンクション・ベース索引の使用方法ファンクション・ベース索引の使用方法ファンクション・ベース索引の使用方法 ........................................................................................................... 4-9問合せでファンクション・ベース索引を使用するためのパラメータの設定 ....................................... 4-9

    索引構成表の使用索引構成表の使用索引構成表の使用索引構成表の使用 ................................................................................................................................................. 4-11ビットマップ索引の使用方法ビットマップ索引の使用方法ビットマップ索引の使用方法ビットマップ索引の使用方法 ............................................................................................................................. 4-11

    ビットマップ索引の使用のタイミング ..................................................................................................... 4-12

    良好なパフォーマンスのビットマップ索引の使用方法 ......................................................................... 4-14

    ビットマップ索引のための初期化パラメータ ......................................................................................... 4-17

    B ツリー索引に対するビットマップ・アクセス計画の使用方法 ......................................................... 4-17

    ビットマップ索引の制限事項 ..................................................................................................................... 4-18

    ビットマップ・ジョイン・インデックスの使用ビットマップ・ジョイン・インデックスの使用ビットマップ・ジョイン・インデックスの使用ビットマップ・ジョイン・インデックスの使用 ............................................................................................. 4-18ドメイン索引の使用方法ドメイン索引の使用方法ドメイン索引の使用方法ドメイン索引の使用方法 ..................................................................................................................................... 4-19クラスタの使用方法クラスタの使用方法クラスタの使用方法クラスタの使用方法 ............................................................................................................................................. 4-19ハッシュ・クラスタの使用方法ハッシュ・クラスタの使用方法ハッシュ・クラスタの使用方法ハッシュ・クラスタの使用方法 ......................................................................................................................... 4-21

    5 オプティマイザ・ヒントオプティマイザ・ヒントオプティマイザ・ヒントオプティマイザ・ヒントオプティマイザ・ヒントの理解オプティマイザ・ヒントの理解オプティマイザ・ヒントの理解オプティマイザ・ヒントの理解 ........................................................................................................................... 5-2

    ヒントの指定方法 ........................................................................................................................................... 5-3

    オプティマイザ・ヒントの使用方法オプティマイザ・ヒントの使用方法オプティマイザ・ヒントの使用方法オプティマイザ・ヒントの使用方法 ................................................................................................................... 5-6最適化アプローチと目標のヒント ............................................................................................................... 5-7

    アクセス・パスに関するヒント ................................................................................................................. 5-10

    問合せの変換に関するヒント ..................................................................................................................... 5-17

    結合順序のヒント ......................................................................................................................................... 5-23

    結合操作のヒント ......................................................................................................................................... 5-24

    パラレル実行のヒント ................................................................................................................................. 5-29

    iv

  • その他のヒント ............................................................................................................................................. 5-34

    ビューでのヒントの使用方法 ..................................................................................................................... 5-42

    6 SQL 文の最適化文の最適化文の最適化文の最適化チューニングの目的チューニングの目的チューニングの目的チューニングの目的 ............................................................................................................................................... 6-2

    ワークロードの削減 ....................................................................................................................................... 6-2

    ワークロードの均衡化 ................................................................................................................................... 6-2

    ワークロードのパラレル化 ........................................................................................................................... 6-2

    多くのリソースを消費する多くのリソースを消費する多くのリソースを消費する多くのリソースを消費する SQL の識別およびデータ収集の識別およびデータ収集の識別およびデータ収集の識別およびデータ収集 ............................................................................ 6-3多くのリソースを消費する SQL の識別 ..................................................................................................... 6-3

    識別した SQL に関するデータの収集 ......................................................................................................... 6-6

    動的サンプリング動的サンプリング動的サンプリング動的サンプリング ................................................................................................................................................... 6-7動的サンプリングの動作 ............................................................................................................................... 6-7

    動的サンプリング使用のタイミング ........................................................................................................... 6-7

    動的サンプリングを使用したパフォーマンスの改善方法 ....................................................................... 6-8

    SQL 文のチューニングの概要文のチューニングの概要文のチューニングの概要文のチューニングの概要 .............................................................................................................................. 6-8オプティマイザ統計の確認 ........................................................................................................................... 6-9

    実行計画の検討 ............................................................................................................................................... 6-9

    SQL 文の再構成 ............................................................................................................................................ 6-10

    ヒントによるアクセス・パスおよび結合順序の制御 ............................................................................. 6-19

    索引の再構成 ................................................................................................................................................. 6-23

    トリガーおよび制約の変更または無効化 ................................................................................................. 6-23

    データの再構成 ............................................................................................................................................. 6-23

    実行計画の長期的な保持 ............................................................................................................................. 6-24

    データへのアクセスを最小限に削減 ......................................................................................................... 6-24

    7 プラン・スタビリティの使用方法プラン・スタビリティの使用方法プラン・スタビリティの使用方法プラン・スタビリティの使用方法実行計画を保持するためのプラン・スタビリティの使用実行計画を保持するためのプラン・スタビリティの使用実行計画を保持するためのプラン・スタビリティの使用実行計画を保持するためのプラン・スタビリティの使用 ............................................................................... 7-2

    プラン・スタビリティでのヒントの使用 ................................................................................................... 7-2

    アウトラインの格納 ....................................................................................................................................... 7-3

    プラン・スタビリティを使用可能にする方法 ........................................................................................... 7-4

    提供されるパッケージを使用したストアド・アウトラインの管理 ....................................................... 7-4

    アウトラインの作成 ....................................................................................................................................... 7-4

    ストアド・アウトラインの使用および編集 ............................................................................................... 7-6

    v

  • アウトライン・データの照会 ..................................................................................................................... 7-10

    アウトライン表の移動 ................................................................................................................................. 7-11

    コストベース・オプティマイザでのプラン・スタビリティの使用コストベース・オプティマイザでのプラン・スタビリティの使用コストベース・オプティマイザでのプラン・スタビリティの使用コストベース・オプティマイザでのプラン・スタビリティの使用 ............................................................. 7-12コストベース・オプティマイザへの移行に対するアウトラインの使用 ............................................. 7-12

    アップグレードとコストベース・オプティマイザ ................................................................................. 7-14

    8 ルールベース・オプティマイザの使用ルールベース・オプティマイザの使用ルールベース・オプティマイザの使用ルールベース・オプティマイザの使用ルールベース・オプティマイザ(ルールベース・オプティマイザ(ルールベース・オプティマイザ(ルールベース・オプティマイザ(RBO)の概要)の概要)の概要)の概要 .............................................................................................. 8-2RBO のアクセス・パスのアクセス・パスのアクセス・パスのアクセス・パス ......................................................................................................................................... 8-3

    RBO アクセス・パスの詳細 ......................................................................................................................... 8-4

    RBO を使用した結合の実行計画の選択 ................................................................................................... 8-15

    RBO を使用するときの文の変換および最適化を使用するときの文の変換および最適化を使用するときの文の変換および最適化を使用するときの文の変換および最適化 ............................................................................................... 8-17RBO を使用するときの OR から複合問合せへの変換 ............................................................................ 8-17

    代替 SQL 構文の使用 ................................................................................................................................... 8-18

    第第第第 II 部 部 部 部 SQL 関連のパフォーマンス・ツール関連のパフォーマンス・ツール関連のパフォーマンス・ツール関連のパフォーマンス・ツール

    9 EXPLAIN PLAN の使用方法の使用方法の使用方法の使用方法EXPLAIN PLAN についてについてについてについて ................................................................................................................................... 9-2

    実行計画の変化理由 ....................................................................................................................................... 9-3

    排除行数の最少化 ........................................................................................................................................... 9-3

    実行計画以外の考慮事項 ............................................................................................................................... 9-4

    PLAN_TABLE 出力表の作成出力表の作成出力表の作成出力表の作成 ............................................................................................................................... 9-5EXPLAIN PLAN の実行の実行の実行の実行 ....................................................................................................................................... 9-5

    EXPLAIN PLAN での文の指定 .................................................................................................................... 9-6

    EXPLAIN PLAN での別の表の指定 ............................................................................................................ 9-6

    PLAN_TABLE 出力の表示出力の表示出力の表示出力の表示 ................................................................................................................................... 9-7EXPLAIN PLAN 出力の読み方出力の読み方出力の読み方出力の読み方 ........................................................................................................................... 9-8

    EXPLAIN PLAN の例 .................................................................................................................................... 9-8

    EXPLAIN PLAN によるビットマップ索引の表示によるビットマップ索引の表示によるビットマップ索引の表示によるビットマップ索引の表示 ......................................................................................... 9-11EXPLAIN PLAN によるパーティション・オブジェクトの表示によるパーティション・オブジェクトの表示によるパーティション・オブジェクトの表示によるパーティション・オブジェクトの表示 ................................................................. 9-12

    EXPLAIN PLAN によるレンジ・パーティション化およびハッシュ・パーティション化の表示の例 ......................................................................................................................................................... 9-12

    コンポジット・パーティション・オブジェクトでのプルーニング情報の例 ..................................... 9-14

    パーシャル・パーティション・ワイズ結合の例 ..................................................................................... 9-17

    vi

  • フル・パーティション・ワイズ結合の例 ................................................................................................. 9-18

    INLIST ITERATOR および EXPLAIN PLAN の例 ................................................................................. 9-19

    ドメイン索引および EXPLAIN PLAN の例 ............................................................................................. 9-20

    EXPLAIN PLAN によるパラレル実行の表示によるパラレル実行の表示によるパラレル実行の表示によるパラレル実行の表示 ................................................................................................. 9-21CPU のコスト計算モデルのコスト計算モデルのコスト計算モデルのコスト計算モデル ................................................................................................................................... 9-22EXPLAIN PLAN の制限事項の制限事項の制限事項の制限事項 ............................................................................................................................. 9-23PLAN_TABLE 列列列列 ................................................................................................................................................. 9-23

    10 SQL トレースおよびトレースおよびトレースおよびトレースおよび TKPROF の使用の使用の使用の使用SQL トレースとトレースとトレースとトレースと TKPROF についてについてについてについて ................................................................................................................. 10-2

    SQL トレース機能について ........................................................................................................................ 10-2

    TKPROF について ........................................................................................................................................ 10-3

    SQL トレース機能とトレース機能とトレース機能とトレース機能と TKPROF の使用方法の使用方法の使用方法の使用方法 ..................................................................................................... 10-3手順 1: トレース・ファイル管理用の初期化パラメータの設定 ............................................................ 10-4

    手順 2: SQL トレース機能を使用可能にする方法 ................................................................................... 10-6

    手順 3: TKPROF によるトレース・ファイルのフォーマット ............................................................... 10-7

    手順 4: TKPROF 出力の解釈 ..................................................................................................................... 10-13

    手順 5: SQL トレース機能統計の格納 ..................................................................................................... 10-18

    TKPROF の解釈における誤りの回避の解釈における誤りの回避の解釈における誤りの回避の解釈における誤りの回避 ............................................................................................................. 10-21引数トラップの回避 ................................................................................................................................... 10-21

    読込み一貫性トラップの回避 ................................................................................................................... 10-21

    スキーマ・トラップの回避 ....................................................................................................................... 10-22

    タイム・トラップの回避 ........................................................................................................................... 10-23

    トリガー・トラップの回避 ....................................................................................................................... 10-24

    TKPROF の出力例の出力例の出力例の出力例 ............................................................................................................................................. 10-24TKPROF ヘッダーのサンプル .................................................................................................................. 10-24

    TKPROF 本体のサンプル .......................................................................................................................... 10-25

    TKPROF サマリーのサンプル .................................................................................................................. 10-31

    11 SQL*Plus での自動トレースの使用での自動トレースの使用での自動トレースの使用での自動トレースの使用自動トレース・レポートの概要自動トレース・レポートの概要自動トレース・レポートの概要自動トレース・レポートの概要 ......................................................................................................................... 11-2

    自動トレース・レポートの構成 ................................................................................................................. 11-2

    自動トレース・レポートの必須設定 ......................................................................................................... 11-2

    SQL 文の実行計画 ........................................................................................................................................ 11-3

    vii

  • SQL 文のデータベース統計 ........................................................................................................................ 11-4

    文のトレース例 ............................................................................................................................................. 11-5

    タイミング統計の収集タイミング統計の収集タイミング統計の収集タイミング統計の収集 ......................................................................................................................................... 11-7パラレル問合せおよび分散問合せのトレースパラレル問合せおよび分散問合せのトレースパラレル問合せおよび分散問合せのトレースパラレル問合せおよび分散問合せのトレース ................................................................................................. 11-7

    ディスク読取りおよびバッファ取得の監視 ............................................................................................. 11-9

    SQL*Plus のパフォーマンスに影響するシステム変数のパフォーマンスに影響するシステム変数のパフォーマンスに影響するシステム変数のパフォーマンスに影響するシステム変数 ................................................................................ 11-10SET APPINFO OFF .................................................................................................................................... 11-10SET ARRAYSIZE ........................................................................................................................................ 11-10SET DEFINE OFF ....................................................................................................................................... 11-10SET FLUSH OFF ......................................................................................................................................... 11-10SET SERVEROUTPUT ............................................................................................................................... 11-10SET TRIMOUT ON .................................................................................................................................... 11-11SET TRIMSPOOL ON ................................................................................................................................ 11-11

    iSQL*Plus サーバー統計レポートサーバー統計レポートサーバー統計レポートサーバー統計レポート .................................................................................................................. 11-11アクティブ統計 ........................................................................................................................................... 11-12

    アクティブ統計の解析 ............................................................................................................................... 11-13

    12 Oracle Trace の使用の使用の使用の使用Oracle Trace の概要の概要の概要の概要 ............................................................................................................................................. 12-2

    イベント・データ ......................................................................................................................................... 12-2

    イベント・セット ......................................................................................................................................... 12-3

    収集したデータへのアクセス ..................................................................................................................... 12-3

    Oracle Trace データの収集データの収集データの収集データの収集 ................................................................................................................................. 12-3Oracle Trace コマンドライン・インタフェースの使用 ......................................................................... 12-3

    Oracle Trace の制御のための初期化パラメータの使用 ......................................................................... 12-8

    PL/SQL による Oracle Trace の収集の制御 .......................................................................................... 12-10

    Oracle Trace の収集結果へのアクセスの収集結果へのアクセスの収集結果へのアクセスの収集結果へのアクセス ........................................................................................................... 12-12Oracle Trace データの Oracle 表へのフォーマット .............................................................................. 12-12

    Oracle Trace レポート作成ユーティリティの実行 ............................................................................... 12-13

    Oracle Server のイベントのイベントのイベントのイベント ................................................................................................................................. 12-15イベントで収集されるデータ項目 ........................................................................................................... 12-16

    各イベントに対応付けられた項目 ........................................................................................................... 12-22

    Oracle Trace のトラブルシューティングのトラブルシューティングのトラブルシューティングのトラブルシューティング ....................................................................................................... 12-33Oracle Trace の構成 ................................................................................................................................... 12-33

    フォーマッタ表 ........................................................................................................................................... 12-37

    viii

  • 第第第第 III 部部部部 優れたパフォーマンスを得るためのデータベースの作成優れたパフォーマンスを得るためのデータベースの作成優れたパフォーマンスを得るためのデータベースの作成優れたパフォーマンスを得るためのデータベースの作成

    13 パフォーマンスを考慮したデータベースの作成パフォーマンスを考慮したデータベースの作成パフォーマンスを考慮したデータベースの作成パフォーマンスを考慮したデータベースの作成初期データベースの作成初期データベースの作成初期データベースの作成初期データベースの作成 ..................................................................................................................................... 13-2

    インストーラを使用したデータベースの作成 ......................................................................................... 13-2

    手動によるデータベース作成 ..................................................................................................................... 13-2

    初期データベースの作成に必要なパラメータ ......................................................................................... 13-2

    CREATE DATABASE 文 ............................................................................................................................. 13-3

    データ・ディクショナリ・スクリプトの実行 ......................................................................................... 13-5

    REDO ログ・ファイルのサイズ指定 ........................................................................................................ 13-5

    追加表領域の作成 ......................................................................................................................................... 13-6

    適切なパフォーマンスを得る表の作成適切なパフォーマンスを得る表の作成適切なパフォーマンスを得る表の作成適切なパフォーマンスを得る表の作成 ............................................................................................................. 13-7データ・セグメント圧縮 ............................................................................................................................. 13-9

    データのロードおよび索引付けデータのロードおよび索引付けデータのロードおよび索引付けデータのロードおよび索引付け ....................................................................................................................... 13-11適切なパフォーマンスを得る SQL*Loader の使用 ............................................................................... 13-11

    効率的な索引作成 ....................................................................................................................................... 13-12

    初期インスタンス構成初期インスタンス構成初期インスタンス構成初期インスタンス構成 ....................................................................................................................................... 13-13UNDO 領域の構成 ..................................................................................................................................... 13-15

    オペレーティング・システム、データベースおよびネットワーク監視の設定オペレーティング・システム、データベースおよびネットワーク監視の設定オペレーティング・システム、データベースおよびネットワーク監視の設定オペレーティング・システム、データベースおよびネットワーク監視の設定 ....................................... 13-16

    14 メモリーの構成と使用方法メモリーの構成と使用方法メモリーの構成と使用方法メモリーの構成と使用方法メモリー割当ての問題についてメモリー割当ての問題についてメモリー割当ての問題についてメモリー割当ての問題について ......................................................................................................................... 14-2

    Oracle メモリー・キャッシュ .................................................................................................................... 14-2

    キャッシュ・サイズの動的な変更 ............................................................................................................. 14-3

    アプリケーションの考慮事項 ..................................................................................................................... 14-4

    オペレーティング・システムのメモリー使用量 ..................................................................................... 14-4

    構成の繰返し ................................................................................................................................................. 14-5

    バッファ・キャッシュの構成と使用方法バッファ・キャッシュの構成と使用方法バッファ・キャッシュの構成と使用方法バッファ・キャッシュの構成と使用方法 ......................................................................................................... 14-6バッファ・キャッシュの効果的な使用 ..................................................................................................... 14-6

    バッファ・キャッシュのサイズ設定 ......................................................................................................... 14-6

    バッファ・キャッシュ・アドバイザ統計の解釈および使用方法 ....................................................... 14-11

    複数バッファ・プールについて ............................................................................................................... 14-13

    V$DB_CACHE_ADVICE 内のバッファ・プール・データ ................................................................. 14-15

    バッファ・プール・ヒット率 ................................................................................................................... 14-15

    プール内に多くのバッファを持つセグメントの判断 ........................................................................... 14-15

    ix

  • KEEP プール ................................................................................................................................................ 14-17

    RECYCLE プール ....................................................................................................................................... 14-18

    共有プールとラージ・プールの構成および使用方法共有プールとラージ・プールの構成および使用方法共有プールとラージ・プールの構成および使用方法共有プールとラージ・プールの構成および使用方法 ................................................................................... 14-18共有プールの概念 ....................................................................................................................................... 14-19

    共有プールの効果的な使用方法 ............................................................................................................... 14-22

    共有プールのサイズ設定 ........................................................................................................................... 14-26

    共有プール統計の解釈 ............................................................................................................................... 14-32

    ラージ・プールの使用 ............................................................................................................................... 14-33

    CURSOR_SPACE_FOR_TIME の使用 .................................................................................................... 14-37

    セッション・カーソルのキャッシュ ....................................................................................................... 14-38

    予約プールの構成 ....................................................................................................................................... 14-39

    除去防止のためのラージ・オブジェクトの保存 ................................................................................... 14-41

    既存のアプリケーション用の CURSOR_SHARING ............................................................................ 14-42

    Java プールの構成と使用プールの構成と使用プールの構成と使用プールの構成と使用 .................................................................................................................................. 14-44REDO ログ・バッファの構成および使用ログ・バッファの構成および使用ログ・バッファの構成および使用ログ・バッファの構成および使用 ...................................................................................................... 14-44

    ログ・バッファのサイズ設定 ................................................................................................................... 14-45

    ログ・バッファの統計 ............................................................................................................................... 14-46

    PGA 作業メモリーの構成作業メモリーの構成作業メモリーの構成作業メモリーの構成 ................................................................................................................................. 14-46自動 PGA メモリー管理 ............................................................................................................................ 14-48

    SORT_AREA_SIZE の構成 ....................................................................................................................... 14-63

    15 I/O 構成および設計構成および設計構成および設計構成および設計I/O の理解の理解の理解の理解 .............................................................................................................................................................. 15-2

    I/O レイアウトの設計 ................................................................................................................................. 15-2

    ディスクのパフォーマンスおよび信頼性 ................................................................................................. 15-2

    ディスク・テクノロジ ................................................................................................................................. 15-3

    ディスク競合とは ......................................................................................................................................... 15-3

    ロード・バランシングおよびストライプ化 ............................................................................................. 15-4

    ストライプ化と RAID .................................................................................................................................. 15-4

    予算、パフォーマンスおよび可用性のバランス化 ................................................................................. 15-6

    I/O の基本構成の基本構成の基本構成の基本構成 ...................................................................................................................................................... 15-6アプリケーション I/O 特性の決定 ............................................................................................................ 15-6

    I/O 構成の決定 ........................................................................................................................................... 15-10

    I/O システム ............................................................................................................................................... 15-10

    I/O 要件と I/O システムの適合 .............................................................................................................. 15-11

    x

  • オペレーティング・システムまたはハードウェアのストライプ化を使用したファイルの

    レイアウト ................................................................................................................................................... 15-12

    手動による I/O の分散 .............................................................................................................................. 15-16

    ファイルを分割する場合 ........................................................................................................................... 15-17

    3 つの構成サンプル .................................................................................................................................... 15-19Oracle Managed Files ................................................................................................................................ 15-20

    データ・ブロック・サイズの選択 ........................................................................................................... 15-21

    16 オペレーティング・システム・リソースオペレーティング・システム・リソースオペレーティング・システム・リソースオペレーティング・システム・リソースオペレーティング・システムのパフォーマンスの問題の理解オペレーティング・システムのパフォーマンスの問題の理解オペレーティング・システムのパフォーマンスの問題の理解オペレーティング・システムのパフォーマンスの問題の理解 ..................................................................... 16-2

    オペレーティング・システムのキャッシュの使用 ................................................................................. 16-2

    メモリー使用量 ............................................................................................................................................. 16-4

    プロセス・スケジューラの使用 ................................................................................................................. 16-5

    オペレーティング・システムのリソース・マネージャの使用 ............................................................. 16-5

    オペレーティング・システムの問題の解決オペレーティング・システムの問題の解決オペレーティング・システムの問題の解決オペレーティング・システムの問題の解決 ..................................................................................................... 16-7UNIX ベースのシステムのパフォーマンスに関するヒント ................................................................. 16-7

    NT システムのパフォーマンスに関するヒント ...................................................................................... 16-7

    ミッドレンジおよびメインフレーム・コンピュータのパフォーマンスに関するヒント ................. 16-8

    CPU についてについてについてについて ....................................................................................................................................................... 16-8コンテキストのスイッチング ................................................................................................................... 16-11

    システムのシステムのシステムのシステムの CPU 使用率の調査使用率の調査使用率の調査使用率の調査 ........................................................................................................................ 16-12メモリー管理のチェック ........................................................................................................................... 16-12

    I/O 管理のチェック ................................................................................................................................... 16-13

    ネットワーク管理のチェック ................................................................................................................... 16-13

    プロセス管理のチェック ........................................................................................................................... 16-13

    17 インスタンス・リカバリ・パフォーマンスの構成インスタンス・リカバリ・パフォーマンスの構成インスタンス・リカバリ・パフォーマンスの構成インスタンス・リカバリ・パフォーマンスの構成インスタンス・リカバリについてインスタンス・リカバリについてインスタンス・リカバリについてインスタンス・リカバリについて ..................................................................................................................... 17-2チェックポイント処理およびキャッシュ・リカバリチェックポイント処理およびキャッシュ・リカバリチェックポイント処理およびキャッシュ・リカバリチェックポイント処理およびキャッシュ・リカバリ ..................................................................................... 17-3

    チェックポイントがパフォーマンスに与える影響 ................................................................................. 17-3

    ランタイム・パフォーマンスを最適化するためのチェックポイント回数の削減ランタイム・パフォーマンスを最適化するためのチェックポイント回数の削減ランタイム・パフォーマンスを最適化するためのチェックポイント回数の削減ランタイム・パフォーマンスを最適化するためのチェックポイント回数の削減 ..................................... 17-4キャッシュ・リカバリ所要時間の構成キャッシュ・リカバリ所要時間の構成キャッシュ・リカバリ所要時間の構成キャッシュ・リカバリ所要時間の構成 ............................................................................................................. 17-5

    キャッシュ・リカバリ時間に影響を与える初期化パラメータ ............................................................. 17-5

    ファスト・スタート・チェックポイント処理を使用したインスタンス・リカバリ時間の制限 ..... 17-6

    REDO の量に影響を与える LOG_CHECKPOINT_TIMEOUT の設定 ................................................ 17-8

    xi

  • REDO の量に影響を与える LOG_CHECKPOINT_INTERVAL の設定 .............................................. 17-8

    REDO アプリケーションを高速化するためのパラレル・リカバリの使用 ........................................ 17-9

    キャッシュ・リカバリの監視キャッシュ・リカバリの監視キャッシュ・リカバリの監視キャッシュ・リカバリの監視 ........................................................................................................................... 17-10予測 MTTR の監視 : シナリオ例 .............................................................................................................. 17-11

    パフォーマンスのオーバーヘッドの計算 ............................................................................................... 17-13

    パフォーマンスのオーバーヘッドの計算 : シナリオ例 ........................................................................ 17-14

    MTTR の調整 .............................................................................................................................................. 17-16

    MTTR アドバイザアドバイザアドバイザアドバイザ .............................................................................................................................................. 17-17MTTR アドバイザの動作 .......................................................................................................................... 17-17

    MTTR アドバイザの有効化 ...................................................................................................................... 17-17

    MTTR アドバイザの表示 .......................................................................................................................... 17-18

    トランザクション・リカバリのチューニングトランザクション・リカバリのチューニングトランザクション・リカバリのチューニングトランザクション・リカバリのチューニング ............................................................................................... 17-19ファスト・スタート・オン・デマンド・ロールバックの使用 ........................................................... 17-19

    ファスト・スタート・パラレル・ロールバックの使用 ....................................................................... 17-19

    18 UNDO セグメントと一時セグメントの構成セグメントと一時セグメントの構成セグメントと一時セグメントの構成セグメントと一時セグメントの構成UNDO セグメントの構成セグメントの構成セグメントの構成セグメントの構成 ................................................................................................................................... 18-2

    自動 UNDO 管理の構成 .............................................................................................................................. 18-2

    ロールバック・セグメントの構成 ............................................................................................................. 18-2

    一時表領域の構成一時表領域の構成一時表領域の構成一時表領域の構成 ................................................................................................................................................. 18-4

    19 共有サーバーの構成共有サーバーの構成共有サーバーの構成共有サーバーの構成共有サーバーのパフォーマンスの概要共有サーバーのパフォーマンスの概要共有サーバーのパフォーマンスの概要共有サーバーのパフォーマンスの概要 ............................................................................................................. 19-2共有サーバー数の構成共有サーバー数の構成共有サーバー数の構成共有サーバー数の構成 ......................................................................................................................................... 19-2

    ディスパッチャ固有のビューを使用する競合の識別 ............................................................................. 19-3

    ディスパッチャ・プロセスの競合の低減 ................................................................................................. 19-4

    共有サーバー・プロセスの競合の低減 ..................................................................................................... 19-5

    最適なディスパッチャ数および共有サーバー・プロセス数の判別 ..................................................... 19-9

    xii

  • 第第第第 IV 部部部部 システム関連のパフォーマンス・ツールシステム関連のパフォーマンス・ツールシステム関連のパフォーマンス・ツールシステム関連のパフォーマンス・ツール

    20 データベース統計収集用のデータベース統計収集用のデータベース統計収集用のデータベース統計収集用の Oracle のツール製品のツール製品のツール製品のツール製品Oracle のツール製品の概要のツール製品の概要のツール製品の概要のツール製品の概要 ................................................................................................................................ 20-2データ収集の原理データ収集の原理データ収集の原理データ収集の原理 ................................................................................................................................................. 20-2統計の解釈統計の解釈統計の解釈統計の解釈 ............................................................................................................................................................. 20-3Oracle Enterprise Manager Diagnostics Pack ............................................................................................... 20-5Statspack ............................................................................................................................................................... 20-6V$ パフォーマンス・ビューパフォーマンス・ビューパフォーマンス・ビューパフォーマンス・ビュー ............................................................................................................................... 20-7

    例 - ファイル I/O データの保存 .............................................................................................................. 20-7

    21 Statspack の使用方法の使用方法の使用方法の使用方法Statspack の概要の概要の概要の概要 .................................................................................................................................................. 21-2Statspack とととと BSTAT/ESTAT の比較の比較の比較の比較 .................................................................................................................. 21-2Statspack の動作の動作の動作の動作 .................................................................................................................................................. 21-3Statspack のデータベース領域要件の構成のデータベース領域要件の構成のデータベース領域要件の構成のデータベース領域要件の構成 ...................................................................................................... 21-4Statspack のインストールのインストールのインストールのインストール .................................................................................................................................. 21-4

    対話型での Statspack のインストール ...................................................................................................... 21-4

    バッチ・モードでの Statspack のインストール ...................................................................................... 21-6

    Statspack の使用方法の使用方法の使用方法の使用方法 .......................................................................................................................................... 21-7Statspack スナップショットの作成 ........................................................................................................... 21-7

    自動統計収集 ................................................................................................................................................. 21-9

    Statspack パフォーマンス・レポートの実行 ......................................................................................... 21-10

    Statspack 内に収集されるデータの量の構成 ......................................................................................... 21-16

    待機イベントに使用される時間単位 ....................................................................................................... 21-21

    イベントのタイミング ............................................................................................................................... 21-22

    Statspack パフォーマンス・データの管理および共有 ......................................................................... 21-23

    Statspack 使用時の Oracle Real Application Clusters の考慮事項 ..................................................... 21-26

    Statspack の削除の削除の削除の削除 ................................................................................................................................................ 21-27Statspack が提供するスクリプトおよびマニュアルが提供するスクリプトおよびマニュアルが提供するスクリプトおよびマニュアルが提供するスクリプトおよびマニュアル .................................................................................... 21-27

    Statspack のインストールおよび削除のスクリプト ............................................................................. 21-27

    Statspack のレポートおよび自動化のスクリプト ................................................................................. 21-28

    Statspack をアップグレードするためのスクリプト ............................................................................. 21-28

    Statspack パフォーマンス・データ・メンテナンスのためのスクリプト ......................................... 21-28

    Statspack マニュアル ................................................................................................................................. 21-29

    xiii

  • 第第第第 V 部部部部 インスタンスのパフォーマンスの最適化インスタンスのパフォーマンスの最適化インスタンスのパフォーマンスの最適化インスタンスのパフォーマンスの最適化

    22 インスタンスのチューニングインスタンスのチューニングインスタンスのチューニングインスタンスのチューニング パフォーマンス・チューニングの原理パフォーマンス・チューニングの原理パフォーマンス・チューニングの原理パフォーマンス・チューニングの原理 ............................................................................................................ 22-2

    ベースライン ................................................................................................................................................. 22-2

    症状および問題点 ......................................................................................................................................... 22-3

    チューニングの時期 ..................................................................................................................................... 22-4

    パフォーマンス・チューニングの手順パフォーマンス・チューニングの手順パフォーマンス・チューニングの手順パフォーマンス・チューニングの手順 ............................................................................................................. 22-5問題の定義 ..................................................................................................................................................... 22-6

    ホスト・システムの検査 ............................................................................................................................. 22-7

    Oracle 統計の調査 ...................................................................................................................................... 22-10

    変更の実装および測定 ............................................................................................................................... 22-14

    Oracle 統計の解釈統計の解釈統計の解釈統計の解釈 .............................................................................................................................................. 22-15負荷の検査 ................................................................................................................................................... 22-15

    待機イベント統計を使用したボトルネックへのドリルダウン ........................................................... 22-16

    待機イベントおよび潜在的な原因の表 ................................................................................................... 22-18

    追加された統計情報 ................................................................................................................................... 22-19

    待機イベント待機イベント待機イベント待機イベント ....................................................................................................................................................... 22-23SQL*Net ....................................................................................................................................................... 22-25buffer busy waits ........................................................................................................................................ 22-27db file scattered read .................................................................................................................................. 22-29db file sequential read ............................................................................................................................... 22-31

    direct path read および direct path read(LOB) .................................................................................. 22-33direct path write ......................................................................................................................................... 22-34enqueue ........................................................................................................................................................ 22-35free buffer waits .......................................................................................................................................... 22-38latch free ...................................................................................................................................................... 22-41log buffer space ........................................................................................................................................... 22-45log file switch .............................................................................................................................................. 22-46log file sync .................................................................................................................................................. 22-47rdbms ipc reply ........................................................................................................................................... 22-47

    アイドル待機イベントアイドル待機イベントアイドル待機イベントアイドル待機イベント ....................................................................................................................................... 22-48

    xiv

  • 23 ネットワークのチューニングネットワークのチューニングネットワークのチューニングネットワークのチューニング接続モデルについて接続モデルについて接続モデルについて接続モデルについて ............................................................................................................................................. 23-2ネットワークの問題の検出ネットワークの問題の検出ネットワークの問題の検出ネットワークの問題の検出 ................................................................................................................................. 23