Ескерім
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо: SQL Server
База данных SQL Azure Управляемый экземпляр SQL Azure
azure Synapse Analytics Analytics
Platform System (PDW)
Возвращает страницу и сведения о количестве строк для всех секций текущей базы данных.
Примечание.
Чтобы вызвать это из Azure Synapse Analytics или Analytics Platform System (PDW), используйте имя sys.dm_pdw_nodes_db_partition_stats
. Partition_id sys.dm_pdw_nodes_db_partition_stats
отличаются от partition_id в sys.partitions
представлении каталога для Azure Synapse Analytics. Этот синтаксис не поддерживается бессерверным пулом SQL в Azure Synapse Analytics.
Имя столбца | Тип данных | Description |
---|---|---|
partition_id |
bigint | Идентификатор секции. Является уникальным в пределах базы данных. Это то же значение, что partition_id и в sys.partitions представлении каталога, за исключением Azure Synapse Analytics. |
object_id |
int | Идентификатор таблицы или индексированного представления, в которое входит данная секция. |
index_id |
int | Идентификатор кучи или индекса, в который входит данная секция. 0 = куча; 1 = Кластеризованный индекс. > 1 = некластеризованный индекс |
partition_number |
int | Номер секции внутри индекса или кучи (нумерация начинается с 1). |
in_row_data_page_count |
bigint | Количество страниц, используемых для хранения данных, содержащихся в строках данной секции. Если секция является частью кучи, то данное значение отображает количество страниц данных в куче. Если секция является частью индекса, то данное значение отображает количество страниц на конечном уровне. (Небезопасные страницы в дереве B+ не включены в число.) Страницы IAM (карта распределения индекса) не включаются в любом случае. Всегда 0 для оптимизированного для памяти xVelocity индекса columnstore. |
in_row_used_page_count |
bigint | Количество страниц, используемых для хранения и управления данными, содержащимися в строках данной секции. Это число включает небезопасные страницы дерева B+, страницы IAM и все страницы, включенные в столбец in_row_data_page_count . Всегда равно 0 для индекса columnstore. |
in_row_reserved_page_count |
bigint | Общее количество страниц, зарезервированных для хранения и управления данными в данной секции (учитываются как используемые, так и не используемые страницы). Всегда равно 0 для индекса columnstore. |
lob_used_page_count |
bigint | Количество страниц, используемых для хранения текста вне строк, ntext, image, varchar(max),nvarchar(max), varbinary(max)и xml-столбцов в секции. IAM-страницы учитываются. Количество больших объектов (LOB), используемых для хранения и управления данными индекса columnstore в секции. |
lob_reserved_page_count |
bigint | Общее количество страниц, зарезервированных для хранения и управления текстом вне строки, ntext, image, varchar(max), nvarchar(max), varbinary(max)и xml-столбцов в секции независимо от того, используются ли страницы. IAM-страницы учитываются. Общее количество больших объектов (LOB), зарезервированных для хранения и управления индексом columnstore в секции. |
row_overflow_used_page_count |
bigint | Количество страниц, используемых для хранения и управления varchar строки переполнения строк, nvarchar, varbinary и sql_variant столбцов в разделе. IAM-страницы учитываются. Всегда равно 0 для индекса columnstore. |
row_overflow_reserved_page_count |
bigint | Общее количество страниц, зарезервированных для хранения и управления varchar, nvarchar, varbinary и sql_variant столбцов в секции независимо от того, используются ли страницы. IAM-страницы учитываются. Всегда равно 0 для индекса columnstore. |
used_page_count |
bigint | Общее число страниц, используемых в секции. Вычисляется как in_row_used_page_count + lob_used_page_count row_overflow_used_page_count. + |
reserved_page_count |
bigint | Общее число страниц, зарезервированных в секции. Вычисляется как in_row_reserved_page_count + lob_reserved_page_count row_overflow_reserved_page_count. + |
row_count |
bigint | Приблизительное количество строк в секции. |
pdw_node_id |
int | Область применения: Azure Synapse Analytics, Analytics Platform System (PDW) Идентификатор узла, на который находится данное распределение. |
distribution_id |
int | Область применения: Azure Synapse Analytics, Analytics Platform System (PDW) Уникальный числовой идентификатор, связанный с распределением. |
Замечания
В sys.dm_db_partition_stats
динамическом представлении управления (DMV) отображаются сведения о пространстве, используемом для хранения бизнес-данных в строке и управления данными бизнес-аналитики строк, а также данные о переполнении строк для всех секций в базе данных. Для каждой секции отображается одна строка.
Количество, на котором основаны выходные данные, кэшируются в памяти или хранятся на диске в различных системных таблицах.
Данные в строках, данные LOB, а также данные строки, превышающие размер страницы, представляют собой три типа единиц распределения, из которых состоит секция. Из представления каталога sys.allocation_units можно запрашивать метаданные по каждой единице распределения базы данных.
Если куча или индекс не имеют делений, то они состоят из одной секции (с номером 1); поэтому для каждой такой кучи или индекса возвращается только одна строка. Из представления каталога sys.partitions можно запрашивать метаданные по каждой секции таблиц и индексов базы данных.
Общее количество секций таблицы или индекса может быть получено путем суммирования результатов для всех секций.
Разрешения
Требуется VIEW DATABASE STATE
и VIEW DEFINITION
разрешения для запроса динамического административного sys.dm_db_partition_stats
представления. Более подробные сведения о разрешениях динамических административных представлений см. в разделе Динамические административные представления и функции (Transact-SQL).
Разрешения для SQL Server 2022 и более поздних версий
Требуется разрешение VIEW DATABASE PERFORMANCE STATE и VIEW SECURITY DEFINITION в базе данных.
Примеры
А. Возвращает все счетчики для всех секций всех индексов и куч в базе данных.
В следующем примере показаны все счетчики для всех секций всех индексов и куч в базе данных AdventureWorks2022.
USE AdventureWorks2022;
GO
SELECT * FROM sys.dm_db_partition_stats;
GO
B. Возвращает все счетчики для всех секций таблицы и его индексов.
В следующем примере выводятся результаты подсчета для всех секций таблицы HumanResources.Employee
и ее индексов.
USE AdventureWorks2022;
GO
SELECT * FROM sys.dm_db_partition_stats
WHERE object_id = OBJECT_ID('HumanResources.Employee');
GO
В. Возвращает общее количество используемых страниц и общее количество строк для кучи или кластеризованного индекса
В следующем примере выводится общее количество используемых страниц и общее количество строк для кучи или кластеризованного индекса таблицы HumanResources.Employee
. Сумма состоит из единственной секции, так как таблица Employee
не секционирована по умолчанию.
USE AdventureWorks2022;
GO
SELECT SUM(used_page_count) AS total_number_of_used_pages,
SUM (row_count) AS total_number_of_rows
FROM sys.dm_db_partition_stats
WHERE object_id=OBJECT_ID('HumanResources.Employee') AND (index_id=0 or index_id=1);
GO