本連載はDB2 UDB V8のシステム管理者、およびアプリケーション開発者のために、パフォーマンス・チューニングに必要な技法を紹介する。記事の原文はIBM developerWorksで2004年4月に公開された「Best practices for tuning DB2 UDB v8.1 and its databases」で、DB2の設計、配置、構成、SQL、運用管理、モニタリングといった内容を、実践的な操作を中心に解説している。想定する読者はDB2データベース管理の中級レベルのスキルを持っているユーザーである。スクリーン・ショットなど一部のコンテンツは、日本語版のものに差し替えている。(編集局)
パフォーマンスは、オンデマンド・アプリケーションの成功にとって極めて重要な要素です。オンデマンド・アプリケーションがデータ・ストアとしてIBM DB2 Universal Databaseを使用する場合、まず初めに、DB2で最高のパフォーマンスを得るための基礎知識を学ぶことが必要です。本連載では、DB2 UDB V8システムをチューニングするための推奨事項について詳しく説明します。
本連載では、パフォーマンスの問題について、チューニング・プロセスの始めから終わりまで説明します。読者は、データベースの作成からアプリケーションの実行まで、流れを順に追うことができます。まず、DB2の自動構成ユーティリティを使用して、最初にデータベース・マネージャーとデータベース環境を構成する方法を紹介します。次に、バッファ・プール、表スペース、表、索引を作成するためのベスト・プラクティス(最良事例)を解説します。アプリケーションをより適切にサポートするために、初期設定から変更することが望ましい構成パラメータがいくつかあるので、それらについても説明します。
また、モニタ出力に基づいて、チューニングを詳しく説明します。スナップショット・モニタを使用して、SQL、バッファ・プール、およびさまざまなパラメータ(データベース・マネージャー・パラメータおよびデータベース構成パラメータ)をチューニングする方法を紹介します。次に、アプリケーションからDB2に対して発行するSQLについて詳しく取り上げます。ステートメント・イベント・モニタについて解説し、アプリケーションが発行しているSQLをキャプチャする方法を説明します。Explainを使用すると、SQLが選択するアクセス・プランを生成することができ、よりよい最適化のための方法を検討できます。また、「設計アドバイザー」というツールを紹介します。これは、ユーザーが指定するSQLワークロードに基づいて、新しい索引を提案したり既存の索引を評価したりするためのツールです。最後に、DB2のいくつかのSQLオプションについて説明します。
さらに、最適なパフォーマンスを維持するためには、継続的なメンテナンスが重要です。そこで、メンテナンスを容易にするためのユーティリティについて説明します。また、DB2エンタープライズ・サーバー・エディション(ESE)のDPF(Database Partitioning Feature:データベース・パーティショニング・フィーチャー)を使用しているユーザーのために、データベースのパフォーマンスを維持するために知らなければならない問題についても説明します。時として(DB2の)外部にボトルネックが存在し、それが原因でパフォーマンスの目標が達成できない場合があります。よくあるボトルネックと、それらをモニタするためのユーティリティを紹介します。最後に、DB2の情報を入手するために役立つIBMのリソースを示します。
本連載は、DB2データベース管理の中級レベルのスキルを持っているユーザーを対象としています。
パフォーマンス・チューニング・プロセスを開始する前に、最新のDB2フィックスパックが適用済みであることを確認してください。フィックスパックによっては、パフォーマンスが改善されている場合があります。この記事では、DB2 FixPak 4を使用しています。これ以前のリリースを使用している場合は、記事の中で説明しているオプションが使用できないことがあります。
パフォーマンス・チューニングを行うときには、データベースの使用方法についての再現可能なシナリオ(つまり、DB2に対してアプリケーションが実行するワークロード)が存在していることが理想的です。例えば、ワークロードの実行時間が実行ごとに約10%変動する場合、チューニングによってどれだけ効果があったかを知ることは困難です。さらに、実行ごとにワークロードが異なっていれば、パラメータ(データベース・マネージャー・パラメータおよびデータベース構成パラメータ)に対する変更の効果を測定することができません。このようなシナリオが存在していれば、それを利用してチューニング作業を特化できます。
また、すべての変更を記録するようにしてください。これは、ほかのDB管理者のために履歴としてチューニング・スクリプトや推奨事項を作成する場合や、好ましくない変更を取り消す場合に役立ちます。
ほとんどの連載の末尾には、DB2 v8 HTMLドキュメンテーションの関連セクションを示してあります。オンライン・ドキュメンテーションは、
http://publib.boulder.ibm.com/infocenter/db2help/index.jsp
から参照できます。
Copyright © ITmedia, Inc. All Rights Reserved.