ほとんどのアプリケーションはデータベースなしでは成り立ちません。データベースはアプリケーションの基盤として機能し、そのパフォーマンスはアプリケーション全体の性能に大きな影響を与えます。良好なパフォーマンスはユーザー体験を大幅に向上させますが、劣ったパフォーマンスはアプリケーションのボトルネックとなります。
パフォーマンスチューニングを行うことで、データベースのリソース利用率を高め、業務コストを削減するとともに、アプリケーションシステムの運用リスクを大幅に低減し、システムの安定性を向上させることができ、顧客により大きな価値をもたらします。
本マニュアルでは、パフォーマンスチューニングツール、OSパラメータ、データベースパラメータなどのパフォーマンスチューニングに関する情報、典型的な適用シナリオ、SQL診断、SQLパフォーマンスチューニング、およびパフォーマンスチューニング事例など、実際の操作方法について説明します。これにより、データベースパフォーマンスチューニング担当者に包括的なガイドを提供します。
パフォーマンスチューニングの方向性
データベースシステムは運用中にCPUリソース、メモリリソース、ネットワーク帯域幅などのシステムリソースを消費します。システムリソースはデータベースシステムの動作に顕著な影響を与え、データベースの運用におけるシステムリソースの使用効率は、データベースのパフォーマンスを評価する上で重要な要素です。
スループットとレスポンス時間は、データベースのパフォーマンスを評価するための2つの重要な概念です。異なるアプリケーションシステムでは、スループットとレスポンス時間に対する要求が異なるため、パフォーマンスチューニングを行う際には、それぞれのシステムの特性に応じて適切な調整を行い、最適な状態に導く必要があります。
データベースエンジニアは、システムアーキテクチャ、サーバー構成、データベース設定、ビジネスモデル、SQL実行計画など、複数の観点からチューニング案を設計する必要があります。少ないリソースで高スループット、低遅延のデータサービスを実現するため、データベースエンジニアはパフォーマンスチューニングにおいて、システムリソースの使用状況、スループット、レスポンス時間という3つの指標に重点的に注目します。
パフォーマンスチューニングの目標
データベースシステムのパフォーマンスチューニングの最終目標は、サーバーのソフトウェアおよびハードウェアリソースを最大限に活用し、データベースソフトウェアが効率的なデータサービスを提供できるようにすることです。