sys.dm_user_db_resource_governance (Transact-SQL)
適用対象: SQL Server Azure SQL Database Azure Synapse Analytics Analytics Platform System (PDW)
現在のデータベースまたはエラスティック プールのリソース ガバナンス メカニズムによって使用される実際の構成と容量の設定を返します。
単一データベースの場合は、現在のデータベースの 1 行を返します。 エラスティック プールの場合は、呼び出し元が VIEW DATABASE STATE
または VIEW DATABASE PERFORMANCE STATE
のアクセス許可を保持しているデータベースごとに行を返し、呼び出し元が VIEW SERVER STATE
または VIEW SERVER PERFORMANCE STATE
のアクセス許可を保持している場合は、エラスティック プール内のすべてのデータベースの行を返します。
列名 | データ型 | 説明 |
---|---|---|
database_id | int | データベースの ID。データベース内またはエラスティック プール内で一意ですが、論理サーバー内では一意ではありません。 詳細については、「DB_ID」を参照してください。 |
logical_database_guid | uniqueidentifier | ユーザー データベースの有効期間を通じて変更されないユーザー データベースの一意識別子。 データベースの名前を変更したり、サービス レベル目標を変更したりすると、この値は変更されません。 |
physical_database_guid | uniqueidentifier | ユーザー データベースに対応する現在の物理データベースの一意識別子。 データベース サービス レベル目標を変更すると、この値が変更されます。 |
server_name | nvarchar | 論理サーバー名。 |
database_name | nvarchar | ユーザー データベース名。 |
slo_name | nvarchar | ハードウェアの生成を含むサービス レベルの目標。 |
dtu_limit | int | データベースの DTU 制限 (仮想コアの場合は NULL)。 |
cpu_limit | int | データベースの仮想コア制限 (DTU データベースの場合は NULL)。 |
min_cpu | tinyint | ユーザー ワークロード リソース プールのMIN_CPU_PERCENT値。 「 リソース プールの概念を参照してください。 |
max_cpu | tinyint | ユーザー ワークロード リソース プールのMAX_CPU_PERCENT値。 「 リソース プールの概念を参照してください。 |
cap_cpu | tinyint | ユーザー ワークロード リソース プールのCAP_CPU_PERCENT値。 「 リソース プールの概念を参照してください。 |
min_cores | smallint | 内部のみで使用します。 |
max_dop | smallint | ユーザー ワークロード グループのMAX_DOP値。 ワークロード グループの作成を参照してください。 |
min_memory | int | ユーザー ワークロード リソース プールのMIN_MEMORY_PERCENT値。 「 リソース プールの概念を参照してください。 |
max_memory | int | ユーザー ワークロード リソース プールのMAX_MEMORY_PERCENT値。 「 リソース プールの概念を参照してください。 |
max_sessions | int | ユーザー ワークロード グループで許可されるセッションの最大数。 |
max_memory_grant | int | ユーザー ワークロード グループのREQUEST_MAX_MEMORY_GRANT_PERCENT値。 ワークロード グループの作成を参照してください。 |
max_db_memory | int | 内部のみで使用します。 |
govern_background_io | bit | 内部のみで使用します。 |
min_db_max_size_in_mb | bigint | データ ファイルの最小max_size値 (MB 単位)。 sys.database_filesを参照してください。 |
max_db_max_size_in_mb | bigint | データ ファイルの最大max_size値 (MB 単位)。 sys.database_filesを参照してください。 |
default_db_max_size_in_mb | bigint | データ ファイルの既定のmax_size値 (MB 単位)。 sys.database_filesを参照してください。 |
db_file_growth_in_mb | bigint | データ ファイルの既定の増加増分 (MB 単位)。 sys.database_filesを参照してください。 |
initial_db_file_size_in_mb | bigint | 新しいデータ ファイルの既定のサイズ (MB 単位)。 sys.database_filesを参照してください。 |
log_size_in_mb | bigint | 新しいログ ファイルの既定のサイズ (MB 単位)。 sys.database_filesを参照してください。 |
instance_cap_cpu | int | 内部のみで使用します。 |
instance_max_log_rate | bigint | SQL Server インスタンスのログ生成レート制限 (1 秒あたりのバイト数)。 tempdb やその他のシステム データベースを含め、インスタンスによって生成されたすべてのログに適用されます。 エラスティック プールでは、プール内のすべてのデータベースによって生成されたログに適用されます。 |
instance_max_worker_threads | int | SQL Server インスタンスのワーカー スレッドの制限。 |
replica_type | int | レプリカの種類 (0 はプライマリ、1 はセカンダリ)。 |
max_transaction_size | bigint | 任意のトランザクションで使用される最大ログ領域 (KB 単位)。 |
checkpoint_rate_mbps | int | 内部のみで使用します。 |
checkpoint_rate_io | int | 内部のみで使用します。 |
last_updated_date_utc | datetime | 最後の設定の変更または再構成の日付と時刻 (UTC)。 |
primary_group_id | int | プライマリ レプリカとセカンダリ レプリカ上のユーザー ワークロードのワークロード グループ ID。 |
primary_group_max_workers | int | ユーザー ワークロード グループのワーカー スレッドの制限。 |
primary_min_log_rate | bigint | ユーザー ワークロード グループ レベルでの 1 秒あたりの最小ログ レート (バイト単位)。 リソース ガバナンスでは、この値を下回るログ レートの削減は試行されません。 |
primary_max_log_rate | bigint | ユーザー ワークロード グループ レベルでの 1 秒あたりの最大ログ レート (バイト単位)。 リソース ガバナンスでは、この値を超えてログ レートを使用することはできません。 |
primary_group_min_io | int | ユーザー ワークロード グループの最小 IOPS。 リソース ガバナンスでは、この値を下回る IOPS の削減は試行されません。 |
primary_group_max_io | int | ユーザー ワークロード グループの最大 IOPS。 リソース ガバナンスでは、この値を超えて IOPS を使用することはできません。 |
primary_group_min_cpu | float | ユーザー ワークロード グループ レベルの最小 CPU 使用率。 リソース ガバナンスでは、この値を下回る CPU 使用率の削減は試行されません。 |
primary_group_max_cpu | float | ユーザー ワークロード グループ レベルの最大 CPU 使用率。 リソース ガバナンスでは、この値を超えて CPU 使用率を使用することはできません。 |
primary_log_commit_fee | int | ユーザー ワークロード グループのログ レート ガバナンスコミット料金 (バイト単位)。 コミット料金は、ログ レートアカウンティングのみを目的として、各ログ IO のサイズを固定値だけ増やします。 ストレージへの実際のログ IO は増加しません。 |
primary_pool_max_workers | int | ユーザー ワークロード リソース プールのワーカー スレッドの制限。 |
pool_max_io | int | ユーザー ワークロード リソース プールの最大 IOPS 制限。 |
govern_db_memory_in_resource_pool | bit | 内部のみで使用します。 |
volume_local_iops | int | 内部のみで使用します。 |
volume_managed_xstore_iops | int | 内部のみで使用します。 |
volume_external_xstore_iops | int | 内部のみで使用します。 |
volume_type_local_iops | int | 内部のみで使用します。 |
volume_type_managed_xstore_iops | int | 内部のみで使用します。 |
volume_type_external_xstore_iops | int | 内部のみで使用します。 |
volume_pfs_iops | int | 内部のみで使用します。 |
volume_type_pfs_iops | int | 内部のみで使用します。 |
user_data_directory_space_quota_mb | int | データベース エンジン インスタンスの最大ローカル ストレージ。 Storage の宇宙ガバナンスに関する説明を参照してください |
user_data_directory_space_usage_mb | int | データ ファイル、トランザクション ログ ファイル、および 'tempdb' ファイルによる現在のローカル ストレージ使用量。 5 分ごとに更新されます。 |
bufferpool_extension_size_gb | int | 内部のみで使用します。 |
pool_max_log_rate | bigint | ユーザー リソース プール レベルでの 1 秒あたりの最大ログ レート (バイト単位)。 リソース ガバナンスでは、リソース プール内のすべてのワークロード グループの合計ログ レートがこの値を超えるわけではありません。 |
primary_group_max_outbound_connection_workers | int | プライマリ ユーザー ワークロード グループの送信接続ワーカー スレッドの制限。 |
primary_pool_max_outbound_connection_workers | int | ユーザー ワークロード リソース プールの送信接続ワーカー スレッドの制限。 |
replica_role | tinyint | 現在のレプリカ ロールを表します。 0 - プライマリ 1 - 高可用性 (HA) セカンダリ 2 - geo レプリケーション フォワーダー 3 - ReadOnly 意図で読み取り専用の意図に接続されている場合は、名前付きレプリカ Reports 1 読み取り可能なセカンダリ。 ReadOnly 意図を指定せずに geo セカンダリに接続する場合は、geo レプリケーション フォワーダーへの接続を反映するように 2 を報告します。 ReadOnly 意図を指定せずに名前付きレプリカに接続すると、3 が報告されます。 |
アクセス許可
SQL Database の Basic、S0、S1 サービス対象、および Elastic Pool のデータベースの場合、サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または ##MS_ServerStateReader##
サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE
アクセス許可または ##MS_ServerStateReader##
サーバー ロールのメンバーシップのいずれかが必要です。
解説
Azure SQL Database のリソース ガバナンスの詳細については、「 SQL Database のリソース制限を参照してください。
重要
この DMV によって返されるデータのほとんどは内部消費を目的としており、いつでも変更される可能性があります。
例
次のクエリは、ユーザー データベースのコンテキストで実行され、ユーザー ワークロード グループとリソース プール レベルで最大ログ レートと最大 IOPS を返します。 単一データベースの場合、1 つの行が返されます。 エラスティック プール内のデータベースの場合、プール内のデータベースごとに行が返されます。
SELECT database_name,
primary_group_id,
primary_max_log_rate,
primary_group_max_io,
pool_max_io
FROM sys.dm_user_db_resource_governance
ORDER BY database_name;
次のステップ
- リソース ガバナー
- sys.dm_resource_governor_resource_pools (Transact-SQL)
- sys.dm_resource_governor_workload_groups (Transact-SQL)
- sys.dm_resource_governor_resource_pools_history_ex (Transact-SQL)
- sys.dm_resource_governor_workload_groups_history_ex (Azure SQL Database)
- トランザクション ログレートのガバナンス
- 単一データベース DTU リソースの制限
- 単一データベースの仮想コア リソースの制限
- エラスティック プールの仮想コア リソースの制限