DBCC PDW_SHOWSPACEUSED (Transact-SQL)
适用于: Azure Synapse Analytics 分析平台系统 (PDW)
显示特定表或者 Azure Synapse Analytics 或 Analytics Platform System (PDW) 数据库中所有表的行数、保留的磁盘空间和已使用的磁盘空间。
语法
-- Show the space used for all user tables and system tables in the current database
DBCC PDW_SHOWSPACEUSED [ WITH IGNORE_REPLICATED_TABLE_CACHE ]
[;]
-- Show the space used for a table
DBCC PDW_SHOWSPACEUSED ( "[ database_name . [ schema_name ] . ] | [ schema_name . ] table_name" ) [ WITH IGNORE_REPLICATED_TABLE_CACHE ]
[;]
注意
Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。
参数
"[ database_name . [ schema_name ] . | schema_name . ] table_name"
要显示的表格的名称(具有一、二、三个部分)。 对于具有二或三个部分的名称,名称必须使用双引号 (""
) 括起来。 可选择是否使用引号将具有一个部分的表格名称括起来。 未指定表名时,则显示当前数据库中的信息。
WITH IGNORE_REPLICATED_TABLE_CACHE
一个可选参数,用于查看表的大小,而不包括复制表缓存大小。 复制表缓存的大小可变,具体取决于服务级目标。 有关详细信息,请参阅什么是复制表?
权限
需要 VIEW SERVER STATE 权限 。
注解
还有 DMV 可提供更多可自定义的查询以用于表大小。 有关详细信息,请参阅表大小查询。
结果集
下面是针对所有表的结果集。 在为复制的 Synapse 表创建缓存之前,DBCC 结果反映每个分布区中基础轮循机制表的总大小。 创建缓存后,该结果将反映轮循机制表和缓存的总大小。
列 | 数据类型 | 说明 |
---|---|---|
reserved_space | bigint | 用于数据库的总空间,单位为 KB。 |
data_space | bigint | 用于数据的空间,单位为 KB。 |
index_space | bigint | 用于索引的空间,单位为 KB。 |
unused_space | bigint | 保留空间中未使用的空间,单位为 KB。 |
pdw_node_id | int | 要用于数据的计算节点。 |
下面是针对一个表的结果集。
列 | 数据类型 | 说明 | 范围 |
---|---|---|---|
行 | bigint | 行数。 | |
reserved_space | bigint | 为对象保留的总空间,单位为 KB。 | |
data_space | bigint | 用于数据的空间,单位为 KB。 | |
index_space | bigint | 用于索引的空间,单位为 KB。 | |
unused_space | bigint | 保留空间中未使用的空间,单位为 KB。 | |
pdw_node_id | int | 用于报告空间使用量的计算节点。 | |
distribution_id | int | 用于报告空间使用量的分发。 | 对于并行数据仓库,对于复制的表,其值为 -1。 |
示例:Azure Synapse Analytics 和 Analytics Platform System (PDW)
A. DBCC PDW_SHOWSPACEUSED 基本语法
以下示例使用 AdventureWorks2022
示例数据库,演示了通过多种方式来显示 AdventureWorksPDW2022 数据库中 FactInternetSales
表的行数、保留的磁盘空间和已使用的磁盘空间。
-- Uses AdventureWorks2022
DBCC PDW_SHOWSPACEUSED ( "AdventureWorksPDW2012.dbo.FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( "AdventureWorksPDW2012..FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( "dbo.FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( FactInternetSales );
B. 显示当前数据库中所有表已使用的磁盘空间
以下示例使用 AdventureWorks2022
示例数据库,演示了 AdventureWorksPDW2022 数据库中所有用户表和系统表保留和已使用的磁盘空间。
-- Uses AdventureWorks2022
DBCC PDW_SHOWSPACEUSED;