これがDB2パフォーマンス向上の9カ条だDB2チューニング・ベストプラクティス(1)(2/3 ページ)

» 2004年07月07日 00時00分 公開
[Fraser McArthurDB2 Enablement Consultant/IBM Canada Ltd.]

パフォーマンス向上のための9カ条

 次に示すのは、データベースから最大のパフォーマンスを引き出すための9項目です。通常、最大パフォーマンスの約90%は、可能な構成変更の約10%を使用することで達成されます。以下のそれぞれの項目について、本連載で取り上げる各セクション(カッコ内に連載回とセクション名を記してあります)で詳しく説明します。

  1. 十分な数のディスクを確保します(CPUごとに6〜10個程度から始めるとよいでしょう)。それぞれの表スペースのコンテナは、使用可能なすべてのディスクにまたがるようにします。SYSCATSPACEや少数の表を含む表スペースなどは、すべてのディスクに分散させる必要はありませんが、大きなユーザー表や一時表を含んでいる表スペースの場合はそのようにします(第2回 表スペースの作成)。

  2. バッファ・プールが、使用可能メモリの約75%(OLTPの場合)または約50%(OLAPの場合)を使用するようにします(第2回 バッファ・プールの作成)。

  3. すべての表(システム・カタログ表を含む)に対してRunstatsを実行します(第7回 継続的なメンテナンス/Runstats)。「設計アドバイザー」を使用して、SQLワークロードに対する索引の推奨や検討を行います(第6回 詳細なSQL分析/設計アドバイザー)。

  4. 「構成アドバイザー」を使用して、アプリケーション環境に合わせてデータベース・マネージャーやデータベースを構成します(第1回 構成アドバイザー)。

  5. ロギングは、独立した高速ディスク上で行います。これは、データベース構成パラメータのNEWLOGPATHで指定します(第5回 データベースの作成/実験)。

  6. 頻繁にコミットすることで、並行性を高めることができます(第6回 詳細なSQL分析/SQLステートメントのチューニング)。

  7. ソート・オーバーフローを避けるために、SORTHEAPを大きくします(第5回 DBMとDBの構成)。

  8. 表スペース・タイプは、システム・カタログ表スペースとシステム一時表スペースについてはSMS(System-managed Space:システム管理スペース)注 とし、それ以外についてはDMS(Database-Managed Space:データベース管理スペース)ロー(デバイス)またはDMSファイルとします。SMS表スペースの場合、db2empfaを実行して、複数ページ・ファイル割り振りを可能にします。これにより、SMS表スペースは一度に(1ページではなく)1つのエクステントを拡張できるようになり、大量の挿入操作やディスクを大量に使用するソートを高速化することができます(第2回 表スペースの作成)。(編集局注:SMSに続くカッコ内で当初「Storage Management Subsystem:ストレージ管理サブシステム」と記述しておりましたが、これは誤りでした。正しくは「System-managed Space:システム管理スペース」です。2004年7月29日修正)とし、それ以外についてはDMS(Database-Managed Space:データベース管理スペース)ロー(デバイス)またはDMSファイルとします。SMS表スペースの場合、db2empfaを実行して、複数ページ・ファイル割り振りを可能にします。これにより、SMS表スペースは一度に(1ページではなく)1つのエクステントを拡張できるようになり、大量の挿入操作やディスクを大量に使用するソートを高速化することができます(第2回 表スペースの作成)。

    (編集局注:SMSに続くカッコ内で当初「Storage Management ubsystem:ストレージ管理サブシステム」と記述しておりましたが、これは誤りでした。正しくは「System-managed Space:システム管理スペース」です。2004年7月29日修正)

  9. 繰り返されるステートメントに対しては、パラメーター・マーカーを使用します(第6回 詳細なSQL分析/SQLステートメントのチューニング)。

    編集部:本連載の各回で扱うテーマを以下に示します。上述のカッコ内に示したセクション名で下記の各テーマ名に現れないものは、サブテーマとして扱われているためです。
連載回 テーマ
第1回 はじめに
パフォーマンス向上のための9カ条
データベースの作成
第2回 バッファ・プールの作成
表スペースの作成
表の作成
第3回 索引の作成
プロファイル・レジストリーの構成
ランタイム・エラーを避けるための構成
第4回 パフォーマンス向上のためのスナップショット・モニタ(前編)
第5回 パフォーマンス向上のためのスナップショット・モニタ(後編)
第6回 詳細なSQL分析
第7回 継続的なメンテナンス
データベース・パーティショニング・フィーチャー(DPF)のパフォーマンス
第8回 使用率とボトルネック
情報源

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。