ユーザーまたはアプリケーションがデータベースに要求を行うと、そのシステムのリソースを消費します。リクエストの数が増えると、リソースの待機が発生する可能性があります。これらの待機はパフォーマンスのボトルネックにつながり、クラウドにデプロイされたデータベースの場合は、追加の月額費用が発生します。パフォーマンスのボトルネックを診断するときの最初のステップは、影響を受けるリソースを理解することです。
パフォーマンスのボトルネックを特定のリソース待機、特定のコード、最後に特定のユーザーのワークロードにマッピングできることで、根本的な原因を突き止め、ボトルネックを永続的に解決できます。
たとえば、購買部門のMattがプラントデータベースで棚卸しレポートを実行しているために、データベースサーバーでCPUが過剰に消費されているために、アプリケーションの実行速度が低下していることに気付く場合があります。
SpotlightCloudのWorkloadAnalyzerは、ユーザーフレンドリーなナビゲーションでこれを可能にするツールです。
SpotlightCloudのワークロードアナライザーの使用方法
まず、関心のある時間枠を選択できます。 Spotlight Cloudは1年間のデータを保存するため、過去1年間の任意の時点または時間範囲に戻ることができます。
次に、リソースでフィルタリングするオプションがあります。たとえば、問題がCPUに関連していることがわかっている場合は、CPUリソースを選択できます。そうすることで、I / O、ロック、メモリなど、他のすべてのリソースに関連する情報が除外され、ホワイトノイズが効果的に排除され、根本的な原因を突き止めやすくなります。
ワークロードアナライザのデフォルトページ
データベースディメンションにドリルダウンすると、最も多くのリソースを消費している上位のデータベースが上位から下位に並べ替えられ、それに応じてシェーディングされます。この並べ替えメカニズムは、ドリルダウンを繰り返すたびに保持されます。
データベースディメンションへのドリルダウン
さらに、最も消費量の多いデータベース内で待機の動作が具体的にどのようなものであるかを知ることが重要であるため、販売データベースにドリルダウンする必要があります。この例では、ワークロードの大部分がCPU(45.7パーセント)とI / Oリソース(30.2パーセント)によって占められており、それらのレートは.48秒/秒と.43秒/秒に近いようです。
販売データベースディメンションの詳細
並行して、CPUを選択すると、他のリソースが除外され、カスタマイズされたCPUのみの読み取り値が生成されます。特定のワークロードを分離する機能は、気が散るメトリックを視覚的に選別し、優先されるものだけに集中できるため便利です。また、パフォーマンスインジケーターを相互にグラフ化して、相関関係を視覚的に確認することもできます。
CPU統計のみでフィルタリングされる主要業績評価指標
次に、T-SQLバッチにドリルダウンします。これにより、販売データベース内のどのバッチが最も負担が大きいかを見つけることができます。
T-SQLバッチへのドリルダウン
このバッチはCPUに非常に負荷がかかるため、そのバッチ内のどのクエリが追加コストの原因となるかを知ることが重要です。 T-SQLテキストを実行プランと組み合わせて使用すると、Sort演算子が原因であることがわかります。 SQL Optimizerは、推定料金が97%であると予測しています。インデックスを追加すると、パフォーマンスの最適化に役立つ場合があります。
T-SQLステートメント
実行された操作の実行計画とコスト分析
リソースセレクターは、使用率が事前定義されたしきい値に違反すると、リソースを強調表示するように構成できることに注意してください。たとえば、待機時間が30%を超える場合に、I/Oリソースを強調表示するようにセレクターを設定できます。
I/Oリソースのリソースセレクター構成の調整
I/Oリソースセレクターの構成を更新しました