TOP設計・移行・活用> DB2のメモリ
Linux+DB2
Linux+DB2のパフォーマンスチューニング

第6回:DB2の設定情報を取得する(前編)
著者:日本アイ・ビー・エム  中坪 宏明   2006/7/4
前のページ  1  2   3  次のページ
DB2のメモリ

   DB2が使うメモリの種類として以下のものが存在します。
データベースマネージャー共用メモリ
1インスタンス内で共用されるメモリ。

データベースグローバル・メモリ
1データベース内で共用されるメモリ。これはパフォーマンスに非常に重要な影響を与えます。DB2のI/Oキャッシュに相当するバッファプールなどがこれに相当します。なお、データベースをまたがって共用することはできません。このメモリの最大数は、データベースマネージャー構成パラメータの「numdb」の値です。

アプリケーション・グローバル・メモリ
1つのデータベースに接続している複数のアプリケーションで共用するメモリ。このメモリの最大数は、データベース構成パラメータの「maxappls」の値です。

エージェント専用メモリ
1つの接続ごとにDB2エージェント・プロセスが割り当てられ、SQLの処理を行いますが、そのエージェント・プロセスの専用メモリ(プライベート・メモリ)がこれです。ここにも、パフォーマンス上重要なメモリが存在します。

表2:DB2のメモリの種類


DB2の設定情報

   DB2の設定情報として以下の3種類のものがあります。

  • データベースマネージャー構成パラメータ
  • データベース構成パラメータ
  • DB2レジストリ変数

表4:DB2の設定情報

   またチューニングを実施する上では、オブジェクトの定義をよく参照します。

  • 表、インデックス
  • 表スペース
  • バッファプール

表5:よく参照するDB2のオブジェクト定義

   さらに、「表」「インデックスの統計情報」をあわせて確認して、SQLのアクセスプランの確認を行う場合があります。


データベースマネージャー構成パラメータ

   データベースマネージャー構成パラメータは、インスタンスレベルの構成を定義しています。その際に使用するDB2のメモリとしては、データベースマネージャー共用メモリになります。

   このパラメータを取得するコマンドを下記に示します。

db2 attach to <db2インスタンス名>
db2 get dbm cfg show detail
db2 detach

   DB2では自動設定となっているパラメータがあり、その設定値を確認するためには、「show detail」オプションをつける必要があります。なお、「show detail」オプションを実行するためには、インスタンスにアタッチしてからコマンドを実行する必要があります。

   下記に標準結果を出力した例を示します。


(画像をクリックすると別ウィンドウに拡大表示します)

遅延値とは、このあとインスタンスを再起動したときに設定される値です。パラメータを変更したものの、即時には反映されないものは、その設定値をこの遅延値で確認できます。

   なおDB2のマニュアルでは、これらのパラメータが与えるパフォーマンスへの影響について記載されています(高/中/低/なし、あるいはHigh/Medium/Low/None)。詳しくは以下を参照ください。


   上記の出力結果の中から、パフォーマンスへの影響が高(あるいはHigh)ものを以下に示します。


(画像をクリックすると別ウィンドウに拡大表示します)

   次項よりこれらパラメータについて詳しく解説します。

前のページ  1  2   3  次のページ


日本アイ・ビー・エム  中坪 宏明氏
著者プロフィール
日本アイ・ビー・エム株式会社  中坪 宏明
インフォメーション・マネジメント・テクニカル・セールス所属
DB2の技術支援(設計支援、パフォーマンス・チューニング、障害解決支援、案件サポートなど)を10年以上実施している。Linuxをはじめとして各オペレーティングシステムおよびハードウェアとの組み合わせでの機能検証および性能検証も実施している。


INDEX
第6回:DB2の設定情報を取得する(前編)
  はじめに
DB2のメモリ
  JAVA_HEAP_SZ