Métrique de volumétrie du stockage par table, index et partition

Voici une petite requête complémentaire pour mesurer les volumes stockées par partition, index et tables d’une base :

SELECT s.name AS TABLE_SCHEMA, o.name AS TABLE_NAME, i.name AS INDEX_NAME,
       fs.name AS FILEGROUP_NAME, f.name AS FILE_NAME, f.physical_name, p.partition_number,
       p.ROWS, p.data_compression_desc, au.total_pages * 8 AS SIZE_TOTAL_KO,
       SUM(au.total_pages * 8) OVER(PARTITION BY i.name, s.name, o.name) AS SIZE_TOTAL_INDEX_KO,
       SUM(au.total_pages * 8) OVER(PARTITION BY s.name, o.name) AS SIZE_TOTAL_TABLE_KO
FROM   sys.partitions AS p
       JOIN sys.allocation_units AS au
            ON p.hobt_id = au.container_id
       JOIN sys.filegroups AS fs
            ON au.data_space_id = fs.data_space_id
       JOIN sys.database_files AS f
            ON fs.data_space_id = f.file_id
       JOIN sys.objects AS o
            ON p.object_id = o.object_id
       JOIN sys.schemas AS s
            ON o.schema_id = s.schema_id
       JOIN sys.indexes AS i
            ON p.object_id = i.object_id
            AND p.index_id = i.index_id;
Frédéric Brouard, alias SQLpro, ARCHITECTE DE DONNÉES
Expert  S.G.B.D  relationnelles   et   langage  S.Q.L
Moste  Valuable  Professionnal  Microsoft  SQL Server
Société SQLspot  :  modélisation, conseil, formation,
optimisation,  audit,  tuning,  administration  SGBDR
Enseignant: CNAM PACA, ISEN Toulon, CESI Aix en Prov.

L’entreprise SQL Spot
Le site web sur le SQL et les SGBDR

MVP Microsoft SQL
Server

Laisser un commentaire