[Code] Cómo detectar los grupos de archivos que tiene cada tabla en la base de datos

En el artículo en el artículo de optimización de consultas se menciona como uno de los procesos de optimización, la asignación de grupos de archivos a diferentes tables para utilizar mejor el hardware del servidor y hacer de las consultas un proceso mas veloz, para determinar cual son las tablas que son candidatas para pasarlas a otros grupos de archivos podemos usar:

select si.rows as ‘ConteoFilas’, SO.Name as ‘Tabla’, SI.name as ‘Nombre Indice’, SFG.groupname as ‘Grupo de Archivos’
from sysobjects as SO join sysindexes as SI on SO.Id = SI.id join sysfilegroups as SFG on SI.GroupId = SFG.GroupId
order by si.rows desc, SO.Name , SI.name, SFG.GroupName

Las tablas que contengan un mayor número de registros son candidatas para hacer el paso a otro(s) grupos de archivo

select

Esto nos devuelte el numero de filas y nombre de la tabla y el grupo de archivos al cual pertenece, en versiones como Standard éste puede ser uno de los pasos para lograr más velocidad en tablas de hechos, tales como movimientos y registros paso a paso

si.rows as ‘Rows’, SO.Name as ‘Table’, SI.name as ‘Index’, SFG.groupname as ‘Filegroup’ from sysobjects as SO join sysindexes as SI on SO.Id = SI.id join sysfilegroups as SFG on SI.GroupId = SFG.GroupId
order by si.rows desc, SO.Name , SI.name, SFG.GroupName

Espero sea de ayuda

 

FREDY LEANDRO ANGARITA CASTELLANOS
Sql Server MVP

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *