Hitachi

ノンストップデータベース HiRDB Version 9 パフォーマンスガイド


4.3.1 ここは必ず確認しよう

〈この項の構成〉

(1) 初期調査方法の流れ

アプリケーションの性能に問題がある場合は,SQLトレースとUAP統計レポートを使って,SQLの性能を確認してください。SQLトレースとUAP統計レポートを使用したSQL性能の初期調査の流れを次に示します。

図4‒1 初期調査の流れ

[図データ]

「SQL実行時間」,「HiRDBサーバ側でのSQL実行時間」および「HiRDBクライアントとHiRDBサーバ間の通信時間」がSQL処理のどの範囲に該当するか,次に示します。

図4‒2 SQL処理での確認時間の範囲

[図データ]

[説明]

  1. SQL実行時間

  2. サーバ側でのSQL実行時間

  3. HiRDBクライアントとHiRDBサーバ間の通信時間(図中の3-1と3-2を足した時間)

(2) 初期調査で確認する情報の一覧

SQLトレースとUAP統計レポートの情報のうち,初期調査で確認する情報について,次に示します。

表4‒2 初期調査で確認する情報

目的

情報の分類

情報の内容

情報名

HiRDB SQL Tuning Advisorの

画面名および項目名

SQL文を特定する

SQL単位の情報

コネクト通番

CNCT

NO

SQLトレース集計情報画面(SQL単位)

(CONNECT-NO)

UAPのプロセス番号

CLPID

SQLトレース集計情報画面(SQL単位)

CLT-PID

UAPのスレッド番号

CLTID

SQLトレース集計情報画面(SQL単位)

CLT-TID

SQLカウンタ

NO

SQLトレース詳細画面

NO

オペレーションコード

OP

CODE

SQLトレース詳細画面

OP-CODE

セクション番号

SEC

NO

SQLトレース集計情報画面(SQL単位)

(SEC-NO)

SQL文

SQL

SQLトレース集計情報画面(SQL単位)

SQL

SQL実行結果を確認する

SQL単位の情報

SQL文を実行した結果

SQL

CODE

SQLトレース詳細画面

SQL-CODE

警告情報

SQL

WARN

SQLトレース詳細画面

WARN

SQL実行時間を確認する

SQL単位の情報

SQL実行時間

EXEC-TIME

SQLトレース集計情報画面(SQL単位)

合計実行時間

SQLトレース詳細画面

実行時間

HiRDBサーバ側でのSQL実行時間を確認する

SQL単位の情報

サーバ側でのSQL実行時間

SVR EXEC-TIME

SQLトレース集計情報画面(SQL単位)

SVR EXEC-TIME

SQLトレース詳細画面

SVR EXEC-TIME

UAP単位またはトランザクション単位の情報

データベースに対する入出力時間の累計

IOTIM

UAP統計情報画面

IOTIM

IOTIMM

UAP統計情報画面

IOTIMM

排他待ち時間

WAITT

UAP統計情報画面

WAITT

HiRDBクライアントとHiRDBサーバ間の通信時間を確認する

SQL単位の情報

通信処理の時間の目安

DIFF

SQLトレース詳細画面

DIFF

処理行数

EXEC

COUNT

SQLトレース詳細画面

EXEC COUNT

(3) 出力ファイルから調査したいアプリケーションの情報を特定する方法

SQLトレースとUAP統計レポートの出力ファイル名にコネクト通番など接続ごとの情報が含まれていない場合(pd2sql1.trc,pdsql1.trcなど),1つのファイルに複数のアプリケーションの情報が出力されています。出力ファイル名の詳細は,マニュアル「HiRDB Version 9 UAP開発ガイド」の「SQLトレース機能」を参照してください。

1つのファイルに複数のアプリケーションの情報が出力されている場合は,調査したいアプリケーションの情報を次に示す手順で特定してください。

  1. 出力ファイルを次のキーワードで検索して,調査したいアプリケーションがHiRDB接続時に出力した情報を特定します。

    表4‒3 接続時に出力する情報のキーワード

    キーワード

    表示内容

    USER APPLICATION PROGRAM FILE NAME

    クライアント環境定義PDCLTAPNAMEで指定した名称

    UAP START TIME

    HiRDBに接続した時刻

    図4‒3 HiRDB接続時に出力する情報の先頭部分

    [図データ]

  2. 特定した情報の下に表示されているCONNECTION STATUS(UAP実行ステータス)から,次の情報を確認します。

    • CNCTNO(コネクト通番)

    • CLTPID(UAPのプロセス番号)

    • CLTTID(UAPのスレッド番号)

      図4‒4  HiRDB接続時に出力するCONNECTION STATUS

      [図データ]

  3. 調査したいアプリケーションのSQL単位の情報は,手順2で確認した値が,行の冒頭に表示されています。この値を基に,SQL単位の情報を特定してください。

    図4‒5 SQL単位の情報

    [図データ]

    この図では,SQL単位の情報の右側部分を省略しています。

  4. UAP単位またはトランザクション単位の情報の特定方法を説明します。UAP単位の情報とトランザクション単位の情報では,最初の行に出力されるキーワードが異なります。クライアント環境定義PDUAPREPLVLの設定値を確認して,どちらかのキーワードで検索してください。

    • UAP単位の情報の場合:UAP INFORMATION

    • トランザクション単位の情報:TRANSACTION INFORMATION

  5. UAP単位またはトランザクション単位の情報についても,手順2で確認した値を基に特定してください。

    図4‒6 UAP単位の情報

    [図データ]