トップページへ PASSJ ブログへ
トップページへ
分科会
特集!
コミュニケーション
資格
セミナー・コンファレンス
インフォメーション
開発者必見! 覚えておきたいSQL Serverの便利機能
文=株式会社システムインテグレータ 堀 真人
第8回
パフォーマンス監視ノウハウ
OracleでもSQL Serverでも、パフォーマンスの問題が重要なのは同じです。運用開始してしばらく時間がたてば、データが増えてディスク容量も足りなくなり、DBの動作が遅くなってしまいます。今回は、運用管理担当者はもちろん、開発者もぜひマスターしておきたいSQL Serverでの基本的なパフォーマンス監視方法をご紹介しましょう。
Tips 1

SQLプロファイラでパフォーマンスを監視する


Oracleでは、SQLや動作をトレースしてファイルに書き出す機能がありますが、SQL Serverにも同様の機能があります。Oracleのログはトレースが終わってからトレースファイルをエディタで開きますが、SQL Serverのファイルはトレースが始まるとともに目の前のウィンドウに随時追加されていくので、記録しながらその情報を参照していくことができます。

■ SQL プロファイラ
(図)SQL プロファイラ

また、Oracleは接続しているユーザーセッション単位でのトレースですが、SQL Serverはサーバー単位です。これはOracleでいうところのインスタンス単位にあたりますから、ずいぶんと大きな単位でのトレースとなります。特定のデータベース(Oracleで言うところのインスタンス)単位で作業をしたいときにはフィルタ機能を使って、不用なデータベースを省くなどの工夫をします。しかし、基本的にはデータベース単位での利用を前提にした機能であると考えてください。



Tips 2

WindowsコンソールのパフォーマンスモニタでPCの負荷を監視する


パフォーマンスモニタは、SQL Serverから呼び出せるPCの負荷計測ツールですが、それ自体はSQL Serverのツールでなく、Windowsに付属しているアプリケーションです。しかし、SQLプロファイラから直接呼び出せる仕掛けになっているので、実運用では別ツールであることを意識することなく利用できます。

SQL Serverのパフォーマンス問題は、CPUの付加が高いとかメモリのページングが多いなど、そのままPCのパフォーマンス問題である場合も多いのです。ですから、この「パフォーマンスモニタ」にはよくお世話になります。

■ パフォーマンスモニタ
(図)パフォーマンスモニタ

パフォーマンスモニタには以下のような機能があります。

●カウンタログ
CPUの稼働率やディスクアクセスなど、PCの稼動状況を連続的に記録するログ。最初にログファイルを作成し、記録する情報と開始時間、終了時間を設定しておく。

●トレースログ
どんなソフトやサービスが起動されて終了したかを記録するログ。カウンタログと同じように、最初にログファイルを作成しておく。

●警告
CPU稼働率などのシステムパフォーマンスカウンタが「80%以上になったら」といった条件で警告的動作をするためのトリガ的機能。特に「負荷が高くなったらトレースを開始する」といったような使い方は重要。




・ 第1回 SQL クエリアナライザのクエリ実行機能
・ 第2回 SQL クエリアナライザ Part 2
・ 第3回 開発者のための、日常的バックアップの小ワザ
・ 第4回 SQL Server 転ばぬ先の杖!
・ 第5回 エラーをやっつけろ!
・ 第6回 SQL構文の違いを押さえる!
・ 第7回 Transact-SQLをマスターしよう!
・ 第8回 パフォーマンス監視ノウハウ


著者プロフィール
株式会社システムインテグレータ
堀 真人(HORI, Masato)

http://www.sint.co.jp/

新横浜で2年半Oracleを使い、埼玉に飛んでからはSQLServerと戦う毎日を送る“DBバイリンガル”な27歳。
ITとは、「アイデアを支えるテクノロジー」と心得る。
趣味はレゲエとSQL Server。愛読書はレゲエ専門誌「Riddim」とデータベース専門誌「DBマガジン」。

← 特集!DBバイリンガル 目次

PASSJメールニュース 著作権ついて プライバシーポリシー リンクポリシー お問い合わせ
(C) 2005 Professional Association for SQL Server Japan. All rights reserved.