- PR -

SQL Server 2000 プロファイラに関して

1
投稿者投稿内容
GOOOP
ベテラン
会議室デビュー日: 2006/04/01
投稿数: 52
投稿日時: 2006-06-17 22:59
SQL Server 2000 Standard Editionを使用しておりまして、
恒久的に2Sec以上 実行時間が掛かっているSQLをトレースしてほしいと
いわれました。

自分ではそのサーバに対して
プロファイラを使用して実行時間2sec以上のSQLを常時トレースしつづけようと思っております。

またプロファイラはそのDBサーバ上で実行することを考えております。


これを行った場合になにか問題が発生するか、また、その他のツール等でさらに
効率的な方法をご存知の方 教えていただけないでしょうか?
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-06-17 23:14
Profiler での監視は重たいので、server trace を利用したほうがいいと思います。

SQL Server ユーザーグループ > 特集 > 監視ツールの基本操作 第2回
GOOOP
ベテラン
会議室デビュー日: 2006/04/01
投稿数: 52
投稿日時: 2006-06-18 11:33
ちゃっぴ様
有難う御座います。

もし、勘違いでしたら申し訳御座いません。

記載していただいたURLを見たのですが、
この方法は、プロファイラで実行している内容をT-SQLでバッチ処理形式で
実行しているだけのようなのですが、

もしも、
監視を別PCで行う場合、あまり処理の重さを考えなくても良いのでしょうか?
それとも仰る通り、別PCにしても処理の重さが全く違うのでしょうか?
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-06-18 22:00
引用:
監視を別PCで行う場合、あまり処理の重さを考えなくても良いのでしょうか



そんなことは無いでしょう。Trace を取るということ自体が処理の重い作業なので、取得する内容をできる限り限定させないとダメでしょう。

引用:
それとも仰る通り、別PCにしても処理の重さが全く違うのでしょうか?



SQL Server Professional のパフォーマンス監視
INF: How to Trace in SQL Server by Using Extended Stored Procedures

ここに書かれているとおり、Microsoft としては、profiler による監視よりも、server trace を推奨しています。大きくはそこに書かれているとおり、GUI による overhead ですが、それ以外にも

HOW TO: Programmatically Load Trace Files into Tables

ここに書かれているとおり、高負荷時における event のとりこぼしの可能性をあげています。
# まあ、このような状態の場合、trace を行うこと自体やばいのですが・・・
GOOOP
ベテラン
会議室デビュー日: 2006/04/01
投稿数: 52
投稿日時: 2006-06-19 21:11
ちゃっぴさん 有難う御座います。
記載されたURLの文献読んで勉強させていただきます。
1

スキルアップ/キャリアアップ(JOB@IT)