パフォーマンスの監視とチューニング
データベースを監視する目的は、サーバーのパフォーマンスを評価することです。 適切な監視には、現在のパフォーマンスのスナップショットを定期的にキャプチャして問題の原因となっているプロセスを特定したり、長期にわたって継続的にデータを採取してパフォーマンスの傾向を追跡する作業が必要です。
データベース パフォーマンスの継続的な評価は、応答時間を最小限にし、スループットを最大限にして、最適なパフォーマンスを実現するために役立ちます。 パフォーマンスを最大限に高めるには、効率的なネットワーク トラフィック、ディスク I/O、および CPU 使用が重要です。 アプリケーションの要件を十分に分析し、データの論理構造と物理構造を理解し、データベースの使用状況を評価し、競合する処理 (オンライン トランザクション処理 (OLTP) と意思決定支援など) の関係を調整する必要があります。
パフォーマンスのためのデータベースの監視とチューニングの利点
Microsoft SQL Server と Microsoft Windows オペレーティング システムには、データベースの現在の状態を表示したり、条件の変化に応じてパフォーマンスを追跡したりできるユーティリティが用意されています。 Microsoft SQL Serverを監視するために使用できるさまざまなツールと手法があります。 SQL Serverを監視する方法を理解すると、次の場合に役立ちます。
パフォーマンスを向上できるかどうかの判断。 たとえば、頻繁に使用するクエリの応答時間を監視することで、テーブルに対するクエリまたはインデックスの変更が必要かどうかを判断できます。
ユーザーの利用状況の評価。 たとえば、 SQL Serverのインスタンスに接続しようとするユーザーを監視することで、セキュリティが適切に設定されているかどうかを判断し、アプリケーションや開発システムをテストできます。 また、実行時に SQL クエリを監視することで、クエリが正しく作成され、期待どおりの結果が得られているかどうかを判断できます。
問題のトラブルシューティングや、ストアド プロシージャなどのアプリケーション コンポーネントのデバッグ。
動的な環境での監視
SQL Server では動的な環境でサービスを提供しているため、監視することは重要です。 条件を変更すると、パフォーマンスが変化します。 評価では、ユーザー数の増加によるパフォーマンスの変化、ユーザーのアクセス方法と接続方法の変化、データベース コンテンツの増加、クライアント アプリケーションの変化、アプリケーション内のデータの変化、クエリの複雑化、およびネットワーク トラフィックの増加を確認できます。 SQL Server ツールを使用してパフォーマンスを監視することで、パフォーマンスの一部の変更を、変化する条件や複雑なクエリに関連付けることができます。 次のシナリオで例を示します。
頻繁に使用されるクエリの応答時間を監視することによって、クエリを実行するテーブルに対するクエリまたはインデックスの変更が必要かどうかを判断できます。
Transact-SQL クエリの実行を監視することで、クエリが正しく書き込まれ、期待される結果が生成されるかどうかを判断できます。
SQL Serverのインスタンスに接続しようとするユーザーを監視することによって、セキュリティが適切に設定されているかどうかを判断でき、アプリケーションまたは開発システムをテストできます。
応答時間は、クエリが処理されていることを視覚的に確認できる形式で、結果セットの先頭行をユーザーに返すのに必要な時間の長さです。 スループットは、指定した時間内にサーバーで処理されたクエリの合計数です。
ユーザーの数が増えるにつれて、サーバーのリソースの競合も増えます。その結果、応答時間が長くなり、全般的なスループットが減少します。
パフォーマンスの監視とチューニングのタスク
タスクの説明 | トピック |
---|---|
SQL Server コンポーネントの監視 | SQL Serverのコンポーネントを効果的に監視するために必要な手順について説明します。 |
パフォーマンス監視およびチューニング ツール | SQL Server監視およびチューニング ツールを一覧表示します。 |
パフォーマンスのベースラインの設定 | パフォーマンス ベースラインを設定する方法についての情報を提供します。 |
パフォーマンスの問題の特定 | データベースのパフォーマンスの問題を特定する方法について説明します。 |
ボトルネックの特定 | ボトルネックを特定するために、サーバーのパフォーマンスを監視および追跡する方法について説明します。 |
サーバーのパフォーマンスと利用状況の監視 | SQL Serverと Windows のパフォーマンスとアクティビティの監視ツールを使用する方法について説明します。 |
実行プランの表示と保存 | 実行プランの表示方法と、XML 形式でファイルに保存する方法について説明します。 |
クエリのストアを使用した、パフォーマンスの監視 | クエリ ストアは、自動的にクエリ、プラン、および実行時統計の履歴をキャプチャし、確認用に保持します。 |
参照
エンタープライズ全体の管理の自動化
Database Engine Tuning Advisor
リソースの利用状況の監視 (システム モニター)
SQL Server Profiler