DBCC PDW_SHOWSPACEUSED (Transact-SQL)
Applies to: Azure Synapse Analytics Analytics Platform System (PDW)
Displays the number of rows, disk space reserved, and disk space used for a specific table, or for all tables in a Azure Synapse Analytics or Analytics Platform System (PDW) database.
Transact-SQL syntax conventions
Syntax
-- 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 ]
[;]
Note
This syntax is not supported by serverless SQL pool in Azure Synapse Analytics.
Arguments
"[ database_name . [ schema_name ] . | schema_name . ] table_name"
The one, two, or three-part name of the table to be displayed. For two or three-part table names, the name must be enclosed with double quotes (""
). Using quotes around a one-part table name is optional. When no table name is specified, the information is displayed for the current database.
WITH IGNORE_REPLICATED_TABLE_CACHE
An optional parameter to view the size of the table without the replicated table cache size included. The size of the replicated table cache is variable depending on the service level objective. For more information, see What is a replicated table?
Permissions
Requires VIEW SERVER STATE permission.
Remarks
There are also DMVs to provide more customizable queries for table size. For more information, see Table size queries.
Result sets
The following is the result set for all tables. Before a cache is created for a replicated Synapse table, the DBCC result reflects the total size of the underlying round robin table from each distribution. After the cache is created, the result reflects the total size of the round robin tables and the cache.
Column | Data type | Description |
---|---|---|
reserved_space | bigint | Total space used for the database, in KB. |
data_space | bigint | Space used for data, in KB. |
index_space | bigint | Space used for indexes, in KB. |
unused_space | bigint | Space that is part of the reserved space and not used, in KB. |
pdw_node_id | int | Compute node that is being used for the data. |
The following is the result set for one table.
Column | Data type | Description | Range |
---|---|---|---|
rows | bigint | Number of rows. | |
reserved_space | bigint | Total space reserved for the object, in KB. | |
data_space | bigint | Space used for the data, in KB. | |
index_space | bigint | Space used for indexes, in KB. | |
unused_space | bigint | Space that is part of the reserved space and not used, in KB. | |
pdw_node_id | int | Compute node that is used for reporting the space usage. | |
distribution_id | int | Distribution that is used for reporting the space usage. | For Parallel Data Warehouse, its value is -1 for replicated tables. |
Examples: Azure Synapse Analytics and Analytics Platform System (PDW)
A. DBCC PDW_SHOWSPACEUSED basic syntax
The following examples using the AdventureWorks2022
sample database show multiple ways to display the number of rows, disk space reserved, and disk space used by the FactInternetSales
table in the AdventureWorksPDW2022 database.
-- Uses AdventureWorks2022
DBCC PDW_SHOWSPACEUSED ( "AdventureWorksPDW2012.dbo.FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( "AdventureWorksPDW2012..FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( "dbo.FactInternetSales" );
DBCC PDW_SHOWSPACEUSED ( FactInternetSales );
B. Show the disk space used by all tables in the current database
The following example using the AdventureWorks2022
sample database shows the disk space reserved and used by all user tables and system tables in the AdventureWorksPDW2022 database.
-- Uses AdventureWorks2022
DBCC PDW_SHOWSPACEUSED;