sys.dm_db_file_space_usage (Transact-SQL)

データベース内の各ファイルに関する使用領域の情報を返します。

注意

このビューは tempdb データベースにのみ適用できます。

列名

データ型

説明

database_id

smallint

データベース ID。

file_id

smallint

ファイル ID。

file_id は、sys.dm_io_virtual_file_stats 内の file_id と sys.sysfiles 内の fileid にマップされます。

unallocated_extent_page_count

bigint

ファイルに含まれる未割り当てエクステント内の総ページ数。詳細については、「ページとエクステントについて」を参照してください。

割り当て済みのエクステント内の未使用ページは含まれません。

version_store_reserved_page_count

bigint

バージョン ストアに割り当てられる単一エクステント内の総ページ数。バージョン ストア ページは、混合エクステントからは割り当てられません。

IAM ページは、常に混合エクステントから割り当てられるので、この数に含まれません。PFS ページは、単一エクステントから割り当てられる場合はこの数に含まれます。

詳細については、「sys.dm_tran_version_store (Transact-SQL)」を参照してください。

user_object_reserved_page_count

bigint

データベース内のユーザー オブジェクトに対して単一エクステントから割り当てられるページの総数。割り当て済みのエクステントの未使用ページは、この数に含まれません。

IAM ページは、常に混合エクステントから割り当てられるので、この数に含まれません。PFS ページは、単一エクステントから割り当てられる場合はこの数に含まれます。

sys.allocation_units カタログ ビュー内の total_pages 列を使用して、ユーザー オブジェクト内の各アロケーション ユニットの予約済みページ数を返すことができます。ただし、total_pages 列には IAM ページの数が含まれることに注意してください。

internal_object_reserved_page_count

bigint

ファイル内の内部オブジェクトに対して割り当てられる単一エクステント内の総ページ数。割り当て済みのエクステントの未使用ページは、この数に含まれません。

IAM ページは、常に混合エクステントから割り当てられるので、この数に含まれません。PFS ページは、単一エクステントから割り当てられる場合はこの数に含まれます。

それぞれの内部オブジェクトのページ数を返すカタログ ビューや動的管理オブジェクトはありません。

mixed_extent_page_count

bigint

ファイルに含まれる混合エクステント内の、割り当て済みページと未割り当てページの総数。混合エクステントには、異なるオブジェクトに割り当てられたページが含まれます。この数には、ファイル内のすべての IAM ページが含まれます。

説明

ページ数は常にエクステント レベルのものです。したがって、ページ数の値は常に 8 の倍数になります。グローバル アロケーション マップ (GAM) と共有グローバル アロケーション マップ (SGAM) の割り当てページを含むエクステントは、割り当て済みの単一エクステントです。これらは前で説明したページ数には含まれません。

現在のバージョン ストアの内容は、sys.dm_tran_version_store で確認できます。バージョン ストア ページはグローバル リソースなので、セッションおよびタスク レベルではなくファイル レベルで追跡されます。セッションでバージョンを生成することもできますが、セッションが終了するときバージョンを削除することはできません。バージョン ストア クリーンアップでは、特定バージョンへのアクセスを必要とする、実行時間が最も長いトランザクションを考慮する必要があります。バージョン ストア クリーンアップに関連する実行時間が最も長いトランザクションを調べるには、sys.dm_tran_active_snapshot_database_transactions の elapsed_time_seconds 列を確認します。

mixed_extent_page_count 列で変更が頻繁に行われる場合は、SGAM ページの使用頻度が高いことが考えられます。この場合、PAGELATCH_UP 待機の数が多くなっていることがあります。またこの待機では、待機リソースが SGAM ページになっています。詳細については、「sys.dm_os_waiting_tasks (Transact-SQL)」、「sys.dm_os_wait_stats (Transact-SQL)」、および「sys.dm_os_latch_stats (Transact-SQL)」を参照してください。SGAM ページの詳細については、「エクステント割り当てと空き領域の管理」を参照してください。

ユーザー オブジェクト

次のオブジェクトは、ユーザー オブジェクト ページ カウンターに含まれます。

  • ユーザー定義テーブルとインデックス

  • システム テーブルとインデックス

  • グローバル一時テーブルとインデックス

  • ローカル一時テーブルとインデックス

  • テーブル変数

  • テーブル値関数で返されるテーブル

内部オブジェクト

内部オブジェクトは tempdb にのみ存在します。次のオブジェクトは、内部オブジェクト ページ カウンターに含まれます。

  • カーソルまたはスプール操作用の作業テーブルと、一時的なラージ オブジェクト (LOB) 格納領域

  • ハッシュ結合などの操作用の作業ファイル

  • 並べ替え実行結果

リレーションシップのカーディナリティ

関連元

関連先

リレーションシップ

sys.dm_db_file_space_usage.database_id、file_id

sys.dm_io_virtual_file_stats.database_id、file_id

一対一

権限

サーバーに対する VIEW SERVER STATE 権限が必要です。

使用例

sys.dm_db_file_space_usage ビューの使用例については、「tempdb のディスク領域の不足に関するトラブルシューティング」を参照してください。