SQL Server: Buffer Manager オブジェクト
Buffer Manager オブジェクトには、次に示す項目の SQL Server による使用状況を監視するためのカウンターが用意されています。
データ ページを保存するメモリ。
SQL Server によるデータベース ページの読み書きに伴う物理 I/O を監視するカウンター。
SQL Server で使用されるメモリやカウンターを監視すると、次のことを確認できます。
物理メモリが適切でないことによるボトルネックが存在するかどうか。 頻繁にアクセスするデータをキャッシュに格納できない場合、SQL Server はデータをディスクから取得する必要があります。
メモリを増設したり、データ キャッシュや SQL Server の内部構造により多くのメモリを使用できるように設定することで、クエリのパフォーマンスを向上できるかどうか。
SQL Server がディスクからデータをどの程度の頻度で読み取る必要があるか。 メモリ アクセスなどの他の操作に比べて、物理 I/O には多くの時間がかかります。 物理 I/O をできる限り少なくすると、クエリのパフォーマンスが向上します。
Buffer Manager パフォーマンス オブジェクト
次の表で、SQL Server Buffer Manager パフォーマンス オブジェクトについて説明します。
SQL Server Buffer Manager カウンター |
説明 |
---|---|
Buffer cache hit ratio |
バッファー キャッシュ内に存在し、ディスクから読み取る必要がないページの比率を示します。 この比率は、最近の数千のページ アクセスでのキャッシュ ヒットの総数を、キャッシュ参照の総数で割って算出します。 長い時間が経過すると、この比率はほとんど変化しなくなります。 キャッシュから読み取る方が、ディスクから読み取るよりもコストが低いので、この比率が高くなるようにします。 一般に、SQL Server が使用できるメモリの量を増やすことで、バッファー キャッシュ ヒット率を増加させることができます。 |
Checkpoint pages/sec |
チェックポイントにより、またはすべてのダーティ ページをフラッシュする必要があるその他の操作により、ディスクにフラッシュされた 1 秒あたりのページ数を示します。 |
Database pages |
データベースの内容が含まれたこのノード上のバッファー プール内のページの数を示します。 |
Free list stalls/sec |
フリー ページを待機する必要があった要求の 1 秒あたりの数を示します。 |
Lazy writes/sec |
バッファー マネージャーのレイジー ライターにより書き込まれたバッファーの 1 秒あたりの数を示します。 レイジー ライターとは、古いダーティ バッファー (異なるページのためにバッファーを再利用する前にディスクに書き戻す必要がある変更を含んでいるバッファー) をまとめてフラッシュし、ユーザー プロセスで使用できるようにするシステム プロセスです。 レイジー ライターを使用することで、使用可能なバッファーを作成するために頻繁にチェックポイントを実行する必要がなくなります。 |
Page life expectancy |
ページが参照されないままバッファー プールに存在する秒数を示します。 |
Page lookups/sec |
バッファー プールのページを検索する要求の 1 秒あたりの数を示します。 |
Page reads/sec |
物理的なデータベース ページ読み取りが実行される 1 秒あたりの回数を示します。 すべてのデータベースのページの物理的な読み取りの総数が表示されます。 物理 I/O にはコストがかかるので、データ キャッシュを大きくしたり、高性能のインデックスや効率のよいクエリを使用したり、データベースのデザインを変更したりすることで、できる限りコストを抑えることができます。 |
Page writes/sec |
物理的なデータベース ページ書き込みが実行される 1 秒あたりの回数を示します。 |
Readahead pages/sec |
使用を見越して読み取られた 1 秒あたりのページ数を示します。 |
関連項目
参照
SQL Server の Plan Cache オブジェクト
sys.dm_os_performance_counters (Transact-SQL)