ほとんどのアプリケーションはデータベースなしでは成り立ちません。データベースはアプリケーションの基盤となる部分であり、そのパフォーマンスはアプリケーション全体の性能に大きな影響を与えます。優れたパフォーマンスはユーザーエクスペリエンスを大幅に向上させますが、性能が低下するとアプリケーションのボトルネックとなります。
パフォーマンスチューニングにより、データベースのリソース利用効率を高め、業務コストを削減することができます。また、アプリケーションシステムの運用リスクを大幅に低減し、システムの安定性を向上させることで、顧客により大きな価値を提供します。
このマニュアルでは、主にパフォーマンスチューニングツール、オペレーティングシステムパラメータ、データベースパラメータなどの情報に加え、典型的なアプリケーションシナリオ、SQL診断、SQLパフォーマンスチューニング、チューニング事例などの実践的な操作方法について説明します。これにより、データベースのパフォーマンスチューニングを担当する方々に包括的な指導を提供します。詳細については、パフォーマンスチューニングをご参照ください。
パフォーマンスチューニングの方向性
データベースシステムは稼働中、CPUリソース、メモリリソース、ネットワーク帯域幅などのシステムリソースを消費します。システムリソースはデータベースシステムの動作に顕著な影響を及ぼし、データベースの動作におけるシステムリソースの利用効率は、データベースの性能を評価する重要な要素です。
スループットと応答時間は、データベース性能を評価するための二つの重要な概念です。異なるアプリケーションシステムはスループットと応答時間に対して異なる要求を持っています。パフォーマンスチューニングを行う際には、システムの特性に応じて適切に調整し、最適な状態に導く必要があります。
データベースエンジニアは、システムアーキテクチャ、サーバー構成、データベース設定、ビジネスモデル、SQL実行計画など、多角的な観点からチューニング計画を設計する必要があります。少ないリソースで高スループット、低遅延のデータサービスを実現するため、データベースエンジニアはパフォーマンスチューニングにおいて、システムリソースの使用状況、スループット、応答時間という三つの指標に重点を置いて取り組みます。
パフォーマンスチューニングの目標
データベースシステムのパフォーマンスチューニングの最終的な目標は、サーバーのソフトウェア・ハードウェアリソースを最大限に活用し、データベースソフトウェアが効率的なデータサービスを提供できるようにすることです。