SQL Serverクエリの最適化
SQL Serverおよびクエリのパフォーマンスを分析、問題を特定、最適化およびチューニング アドバイスを提供
応答時間分析の助けを借りて、重点的に最適化すべきSQLクエリを特定
SolarWinds® Database Performance Analyzer(DPA)は、SQLステートメントの分析、パフォーマンス問題の根本原因の特定、トレンドの表示、主要なパフォーマンス メトリックのベースラインの確立を最速で実現するための機能を備えています。DPAとその24時間体制のデータベース監視を使用すると、自力で行うよりも速く、簡単にSQLクエリを最適化でき、間違いも起きにくくなります。
応答時間や待ち時間に関するDPAの洞察は、問題のあるSQLクエリの素早い特定を可能にし、その解決に役立つインデックス推奨事項が得られます。応答時間と待ち時間は、SQLクエリのパフォーマンスに関する洞察を得るために使用する最も有用なメトリックの一部です。DPAはすべてのSQLステートメントのデータを照合し、応答時間に基づいてのランク付けを行います。このデータは、DPAクエリ パフォーマンス アナライザーのクエリ詳細ページで、読みやすい棒グラフで表示されます。このページに移動すると、トップ ウェイト グラフが上部に大きく表示され、選択している期間に応じたクエリの実行時間を確認できます。この棒グラフは、待機の種類ごとに色分けされており、待機の種類ごとに、より詳細な情報と考えられる解決策を表示するオプションがあります。これにより、開発者やデータベース管理者(DBA)は、SQLデータベースのパフォーマンス最適化のために注目すべきSQLクエリを特定することができます。
開発、テスト、本番サーバーを監視し、デプロイまでにSQLクエリの問題を解決
開発および本番プロセスの後半になるまで、SQLクエリのコードがテストされないままなことは全く珍しくありません。ほとんどの場合、アプリケーションのパフォーマンスはデプロイの段階まで後回しにされます。つまり、開発者はコードが実際に使用されるまで、そのパフォーマンスを確認することができないのです。そのときになってパフォーマンスの問題が発見されると、それを解決するためのプロセスや実用的なコードの完成の遅れが厄介な問題になり、セキュリティ リスクに発展しかねません。
DPAのSolarWinds SQL Query Analyzerソリューションは、1%未満の負荷で開発サーバー、テスト サーバー、本番サーバーを監視できるため、デプロイより前にSQL Serverのクエリ最適化を開始できます。またこのツールは、運用中のSQLコードのパフォーマンスを安全に監視できます。DPAダッシュボードを使用すると、開発者は本番用データベースをドリル ダウンしてコードのパフォーマンスを知ることができ、問題の解決に取りかかることや、採用前の新しいコードをテストすることができます。アプリケーションのパフォーマンスを開発サイクルに組み込むことで、開発者はさらにSQLのパフォーマンスを向上させることができます。
必要なすべての情報をわかりやすい棒グラフで入手
DPAのクエリ パフォーマンス アナライザーは、主要なパフォーマンス指標について必要なすべての情報を、わかりやすい棒グラフと関連するアラートで提示します。DBAおよびアプリケーション チームは、この情報に簡単にアクセスできることにより、ダウンタイムの削減、リソースの効果的な最適化、どのSQLクエリに焦点を当てるべきかの迅速な特定が可能になります。
DPAのSQL Query Analyzerを使用すると、データベース パフォーマンスの統合されたビューが得られ、SQLのパフォーマンスの問題の根本原因を通常わずか数クリックで特定できるようになります。DPAのわかりやすく統一されたダッシュボードを使用することで、SQL Server、Oracle、DB2、MariaDB、Aurora、MySQL、Azure SQL、SAP ASEを一望のもとに監視できます。また、VMwareは1%未満の負荷で監視できます。
DPAを使用すると、システム リソース間の直接的な相関関係を一括管理で確認でき、SQLクエリの最適化を簡素化するのに役立ちます。SolarWinds DPAダッシュボードでは、監視対象のすべてのインスタンスとステータスの概要を把握し、データベースのパフォーマンスの全体像を得ることができます。また、SQL Query Analyzerを使用することで、これらの主要なRDBMSエンジンのSQLクエリを一望のもとに最適化することもできます。
クエリ プランをリアルタイムで収集し、必要に応じて分析できます。
クエリ実行計画は、クエリ計画とも呼ばれ、SQLクエリがどのように実行されるのか、あるいはすでに実行されたのかを教えてくれます。自動生成された実行計画が常に最適とは限らないので、キャッシュされた実行プランを振り返って、SQLデータベースを最適化するために変更することが必要かどうかを判断できることは重要です。
SolarWinds DPAは、実行計画をリアルタイムで収集し、SQLステートメント、待機タイプ、その他のパフォーマンス データとリンクさせます。そして、そのデータ履歴はDPAによって保存されるため、パフォーマンスの低下をもたらす可能性のある計画変更を監視し、警告を受けることができます。また、このデータが保存されていることにより、必要なときにプランを再確認し、どの実行計画が使用されたかを正確に把握することができます。
DPAは計画をグラフィカルに表示し、特定のステップをスクロール表示させるとポップアップ ダイアログが表示されます。また、1秒あたりのコンパイルと再コンパイルを表示し、実行が再利用されているかどうかを確認することができます。DPAは、重要なメトリックを収集および表示することに加え、これらのわかりやすいビジュアルによって、SQLクエリのパフォーマンス低下の原因をピンポイントで見つけることを可能にします。
メモリ使用量を最適化し、不十分なSQLクエリをチューニングしてパフォーマンスを向上
DPAを使用することで、メモリの使用状況やストレスを把握し、クエリのパフォーマンスに寄与する要因により適切に対処できるようになります。DPAは、メモリ使用量を理解するのに役立つため、SQLクエリの最適化作業をパフォーマンスの問題の正しい原因に向けることができます。
また、DPAは毎日の終わりにテーブル チューニングの分析を行い、履歴から見られる傾向と現在のデータの両方を活用してチューニング アドバイスを生成できます。DPAのクエリ パフォーマンス アナライザーは、軽微なものから広範囲に及ぶものまでパフォーマンス問題をキャッチし、チューニング アドバイザーによる詳細なランク付けを行うことで、早急に対処すべき問題とそれほどではない問題の優先順位をより明確にするための設計が施されています。これによりSQLクエリの最適化を効率化し、時間とコストの両方を節約して、SQLクエリ全体のパフォーマンスを向上させることができます。
DPAは、SQLクエリの最適化を支援するだけでなく、メモリに保存されるシングルユースのクエリ プランの数を減らすことによって、サーバー エンジンのメモリ使用量を改善するための機能が与えられています。シングルユース プランとは、SQLサーバー メモリに保存されるが、1度しか使用されないステートメント プランです。DPAは、新しいSQLステートメント プランを作成する代わりに、既存のSQLステートメント プランを検索して見つけるサーバーの機能を強化します。
SQLクエリを容易に最適化
Database Performance Analyzer
- クエリの詳細ページを使用すると、SQLクエリのパフォーマンス メトリックを簡単に可視化できます。
- テーブル チューニング アドバイザーから、SQLクエリのパフォーマンスを向上させるための実用的な提案を受けられます。
- 開発、テスト、本番サーバーを監視することで、デプロイ前にSQLクエリの問題を解決します。
お問い合わせ先
24時間365日、 いつでもお問い合わせください。