これがDB2パフォーマンス向上の9カ条だ:DB2チューニング・ベストプラクティス(1)(3/3 ページ)
本連載はDB2 UDB V8のシステム管理者、およびアプリケーション開発者のために、パフォーマンス・チューニングに必要な技法を紹介する。記事の原文はIBM developerWorksで2004年4月に公開された「Best practices for tuning DB2 UDB v8.1 and its databases」で、DB2の設計、配置、構成、SQL、運用管理、モニタリングといった内容を、実践的な操作を中心に解説している。想定する読者はDB2データベース管理の中級レベルのスキルを持っているユーザーである。スクリーン・ショットなど一部のコンテンツは、日本語版のものに差し替えている。(編集局)
データベースの作成
デフォルトでは、データベースを作成すると、3つのSMS(システム管理スペース)表スペース(SYSCATSPACE、TEMPSPACE1、USERSPACE)と4Mbytesのバッファ・プール(IBMDEFAULTBP)が作成されます。これらはすべて4Kbytesのページ・サイズを使用します。通常は、TEMPSPACE1とUSERSPACEをドロップし、第2回で紹介する推奨値に従ってそれらを再作成するとよいでしょう。ほとんどの場合、SYSCATSPACEをそれ以上最適化する必要はありません。ただし、そのコンテナを複数のディスクに分散させることによってパフォーマンスがわずかに向上する場合があります(これについては第2回で説明します)。
データベースを作成する場合、autoconfigure(自動構成)オプションを使用すると、環境に合わせてデータベースを自動的に構成することができます。これは、アプリケーションを使用してDB2データベースをプログラマチックに作成する場合に便利です。これらのオプションをアプリケーションからDB2に渡すことができるからです。データベースを自動的に構成するためのもう1つの選択肢は、強力なGUIツールである「構成アドバイザー」です。このツールは、データベースだけでなくインスタンスも構成することができます。ただし、「構成アドバイザー」を使用するには、データベースがすでに存在していなければなりません。「構成アドバイザー」については、次のセクションで説明します。
リスト1では、CREATE DATABASEコマンドのautoconfigureオプションを使用して、Windows上にデータベースを作成しています。SYSCATSPACEは、使用可能な2つのディスクに分散されます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
表1は、autoconfigureオプションの有効なキーワードと値を示しています。
キーワード | 有効値 | デフォルト値 | 説明 |
---|---|---|---|
mem_percent | 1〜100 | 25 | データベース専用として使用する物理メモリのパーセンテージ。このサーバ上で別のアプリケーション(OSは含みません)が稼働している場合は、この値を100未満に設定します |
workload_type | simple、mixed、complex | mixed | 単純ワークロード(simple)は大部分がトランザクション(OLTP)であり、入出力集中の傾向があります。一方、複雑ワークロード(complex)は大部分が照会(OLAP/DSS)であり、CPU集中の傾向があります |
num_stmts | 1〜1000000 | 25 | 作業単位ごとのステートメントの数 |
tpm | 1〜200000 | 60 | 1分当たりのトランザクションの数 |
admin_priority | performance、recovery、both | both | パフォーマンス(1分当たりのトランザクション数を増やす)を重視して最適化するか(performance)、リカバリ時間を重視して最適化するか(recovery)を指定します |
num_local_apps | 0〜5000 | 0 | 接続されるローカル・アプリケーションの数 |
num_remote_apps | 0〜5000 | 100 | 接続されるリモート・アプリケーションの数 |
isolation | RR、RS、CS、UR | RR | このデータベースに接続するアプリケーションの分離レベル。反復可能読み取り(RR)、読み取り固定(RS)、カーソル固定(CS)、非コミット読み取り(UR)のいずれかを指定します |
bp_resizeable | yes、no | yes | バッファ・プールのサイズがオンラインで変更可能かどうかを指定します |
表1 autoconfigureオプション |
構成アドバイザー
データベースの作成時にautoconfigureオプションを使用した場合、このステップはそれほど重要ではありません。「構成アドバイザー」は、データベースとインスタンスを自動的に構成するためのGUIツールです。このツールは、一連の質問に対するユーザーの回答に基づいて自動的に構成を行います。このツールを実行することでパフォーマンスが大幅に向上する場合があります。「構成アドバイザー」は、「コントロール・センター」から、データベースを右クリックして「構成アドバイザー...」を選択することによって起動できます。すべての質問に答え終わると、結果が生成され、その結果を適用することもできます。図1は、結果ページのスクリーン・ショットを示しています。
著者紹介
Fraser McArthur氏は、分散プラットフォーム(Windows/UNIX)用のDB2 UDBを開発しているIBMトロント研究所のコンサルタントです。同氏はData Management Partner Enablement organizationのメンバーであり、IBMビジネス・パートナーとともに、DB2へのアプリケーションの移行とパフォーマンス・チューニングに取り組んでいます。また同氏は、DB2管理とアプリケーション開発の両方におけるDB2 Certified Solutions Expertです。
Copyright © ITmedia, Inc. All Rights Reserved.