powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
7 сообщений из 7, страница 1 из 1
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927567
Pvase
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Раньше (не ColumnStore), размер данных в таблице можно было посмотреть таким образом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT SUM(reserved) AS Expr1
			FROM sys.sysindexes
			WHERE (
					indid IN (
						0
						,1
						,255
						)
					)
				AND (id = SObj.id)
			) AS FLOAT) * d.low / 1024


Теперь же такой запрос возвращает 0.
Насколько понял, для таблицы с индексом ColumnStore теперь запрос надо строить к двум представленями. Подскажите пожалуйста, кто уже делал подобное как узнать физическое место выделенное под хранение таблицы с индексом ColumnStore?
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927569
Pvase
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть подозрение, что вот так:
Код: sql
1.
2.
SELECT SUM(total_rows) - SUM(Deleted_rows) AS Rows, SUM(size_in_bytes)/ 1024 AS UsageDisk_KB 
FROM sys.dm_db_column_store_row_group_physical_stats WHERE OBJECT_ID = 118291481


Но хотелось бы уточнить, не ошибся ли?
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927570
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sys.dm_db_partition_stats / sys.dm_db_column_store_row_group_physical_stats
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927573
Pvase
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или вот так:
Код: sql
1.
SELECT SUM(total_rows) - SUM(Deleted_rows) AS Rows, SUM(size_in_bytes)/ 1024 FROM sys.column_store_row_groups  WHERE OBJECT_ID = 118291481
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927580
Pvase
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
sys.dm_db_partition_stats / sys.dm_db_column_store_row_group_physical_stats

Спасибо.
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927746
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pvase,

sp_spaceused
...
Рейтинг: 0 / 0
MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
    #39927862
Размер можно получить разными вариантами:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT p.[index_id], [total_pages] = SUM([total_pages])
FROM sys.partitions p
JOIN (
    SELECT [container_id]
         , [total_pages] = SUM([total_pages])
    FROM sys.allocation_units
    GROUP BY [container_id]
) t ON p.[partition_id] = t.container_id
WHERE p.[object_id] = ...
GROUP BY p.[index_id]


Но тут данные будут нормально возвращяться если у колумнстора нет открытых RowGroup, но как плюс такой запрос не будет приводит к сканированию метаданных самого колумнстора (что иногда при первом обращении может очень долго длиться)

Представление sys.dm_db_partition_stats самый вариант потому как практически всегда честно показывает размер (смотрим на размер индекса в момент когда в фоне работает реорганизация).

Самую точную инфу показывает sys.dm_db_column_store_row_group_physical_stats но при первом обращении идет сканирование метаданных колумнстора.

sp_spaceused работает по аналогии с sys.dm_db_partition_stats если мне память не изменяет.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MS SQL 2019 ColumnStore таблица, как узнать размер занимаемый на диске?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]