sql >> データベース >  >> RDS >> Sqlserver

SQLServerのパフォーマンスを損なうActivityMonitorを回避する方法

    SQL Serverの展開のパフォーマンスを監視することが、DBAのメンテナンスとトラブルシューティングの責任の重要な部分であることは間違いありません。

    ただし、これを実現するためにMicrosoftが提供する統合ツールは、明確にActivity Monitorと呼ばれ、実際にはパフォーマンスの低下を引き起こした原因である可能性があります。

    これが発生する理由と、SQLServerデータベースのスムーズな実行を妨げるActivityMonitorの問題に対処するためにできることを以下に示します。

    基本的なジレンマ

    Activity Monitorは理論的には間違いなく有用ですが、実際には、特定のシナリオでサーバーの応答性が低下する可能性があります。

    この理由は、ツール自体が少しリソースを消費するためです。そのため、ツールの実行中は、CPUクロックサイクルと割り当てられたメモリの一部が独占され、クエリの処理や他のトランザクションの処理に利用される可能性があります。

    この追加のオーバーヘッドは、パフォーマンスを追跡するために必要な統計をダッシュ​​ボードに入力し続けるために、10秒のループで13のクエリを繰り返し実行するActivityMonitorに帰着します。特に、これはTempDBのようなものを危険にさらす可能性がありますが、その目的に反して、より一般的には最適ではないサーバー操作の原因にもなります。

    最も簡単なソリューション

    おそらく、この問題を回避する最も簡単な方法は、統合されたアクティビティモニターから離れ、代わりにデータベース全体を監視および診断できるサードパーティパッケージをSQLServerセットアップに提供することです。

    Activity Monitorの制限を克服するだけでなく、尊敬されているブランドのより最適化されたツールに目を向けることで、SQLServerの監視に関連する主要なプロセスの多くを自動化することもできます。

    そのため、DBAは他のタスクにより多くの時間を費やすことができ、トラブルシューティングが必要な問題に注意を向けるアラートや通知などのメリットも得られます。

    最高のツールは、クエリの最適化、セキュリティの監視など、さらに多くのことを支援することさえできます。

    SQL Serverがこの分野で独自の機能を備えている場合、別の監視ツールを追加するのは面倒に思えるかもしれませんが、このルートを採用することによるパフォーマンスの向上と最適化の可能性により、最初の面倒な作業を簡単に正当化できます。

    その他の利点

    SQL Serverでのリソース使用量を除けば、Activity Monitorが不十分なのは、DBAにデータを提示する方法です。

    サーバーのパフォーマンスとアクティビティのスナップショットを時々提供するのに適している場合がありますが、データベースの動作に関するより広範な難問を修正したい場合、これは必ずしも特に役立つとは限りません。

    個別の監視ツールをミックスに追加すると、時間の経過とともにパフォーマンスを追跡し、履歴データを現在のプレイ状態と比較して、全体像を把握することで洞察を引き出すことができます。

    最終的な考え

    SQL Serverのスタンドアロン監視ソリューションを使用することの利点に疑問を持っている場合は、懸念事項がこれまでに解決されていることを願っています。

    Activity Monitorを完全に廃止する必要はありませんが、その欠点を知っているだけで、より効果的に使用を管理できます。


    1. oraclePLSQLインタビューの質問

    2. 損傷したSQLバックアップを修復するSQLバックアップリカバリツール-製品レビュー-ダニエルジョーンズによるゲスト投稿

    3. PDOを使用したヘルパー関数の挿入/更新

    4. SQL Server 2008Expressの同じサーバーにSQLServerデータベースを複製するにはどうすればよいですか?