Últimamente, en lugar de solo aumentar los archivos cuando se acercan al 80% de utilización de archivos, he sido más proactivo en reclamar espacio a través de los trucos habituales como desfragmentar montones, agregar y soltar índices agrupados, implementar la compresión de filas o páginas, etc.
Sin embargo, hay algunos casos en los que pude recuperar aún más espacio ejecutando DBCC CLEANTABLE . Con cientos de bases de datos en mi entorno, no es posible saber qué hacen los usuarios en cada una y es completamente aceptable que haya cambios que impliquen la caída de columnas de longitud fija. Por lo general, he encontrado estas oportunidades mirando los recuentos de filas frente a los recuentos de páginas en algunos scripts de utilización de espacio de objetos que he escrito. Me gustaría llevar esto un paso más allá al intentar automatizar la detección de este tipo de escenarios.
Lo que me gustaría saber es si alguien por ahí está monitoreando activamente este tipo de oportunidades y, de ser así, ¿qué buscas específicamente?
Mis pensamientos fueron escribir algo en la línea de reunir el tamaño máximo y mínimo de una fila, el número de filas en la tabla, el número de páginas asignadas y el número de páginas utilizadas, y luego hacer algunas matemáticas básicas para registrar resultados que están bien fuera de lo que se "esperaría".